gpt4 book ai didi

Azure Web 作业和 log4net

转载 作者:行者123 更新时间:2023-12-03 05:52:10 24 4
gpt4 key购买 nike

我正在使用 Azure Web 作业来安排某些任务。Web 作业在 Azure Web 应用程序中成功部署,但我无法相对确定应存储日志文件的 app_data 文件夹的路径。 (网络作业位于 d:\home\site\wwwroot\App_Data\jobs\triggered\webjobname)

以下(绝对)路径有效:

<file value="d:\\home\\site\\wwwroot\\App_Data\\Logs\\WebJobLog.txt" />

以下路径不起作用:

<file value="../../App_Data/Logs/WebJobLog.txt" />
<file value="/App_Data/Logs/WebJobLog.txt" />
<file value="~/App_Data/Logs/WebJobLog.txt" />

谁知道如何相对设置文件路径?

最佳答案

一般来说,您可以按如下方式指定路径来实现您的目的:

<file value="App_Data\\Logs\\WebJobLog.log" />

对于 WebJobs,默认情况下您的 webjob 将被复制到临时目录(例如 %TEMP%\jobs\{job type}\{job name}\{random name})以供运行,此时您的日志文件将位于临时文件夹下。更多详情,您可以引用WebJob Working Directory .

根据您的要求,您可以利用log4net.Util.PatternString并使用 env 转换模式检索 David Ebbo 建议的环境变量 (WEBROOT_PATH)。您需要按如下方式更改路径:

<file type="log4net.Util.PatternString" value="%env{WEBROOT_PATH}\\App_Data\\Logs\\WebJobLog.log" />

此外,您可以通过编程方式创建您的 FileAppender,对于这种方法,您可以引用此 issue 。此外,您可以检查 webjobs here 的内置日志记录。 .

关于Azure Web 作业和 log4net,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46540063/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com