Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 为什么我的NLog配置不能在我的服务器上运行?_C#_.net_Web Services_<img Src="//i.stack.imgur.com/WM7S8.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">servicestack_Nlog - Fatal编程技术网 servicestack,nlog,C#,.net,Web Services,servicestack,Nlog" /> servicestack,nlog,C#,.net,Web Services,servicestack,Nlog" />

C# 为什么我的NLog配置不能在我的服务器上运行?

C# 为什么我的NLog配置不能在我的服务器上运行?,c#,.net,web-services,servicestack,nlog,C#,.net,Web Services,servicestack,Nlog,我正在使用ServiceStack框架和NLog进行日志记录。我可以在我的本地机器上登录。但是,在服务器上,它没有。我已经检查了Nlog.config是否位于bin目录中,并且整个目录,包括bin目录上方的目录都具有写访问权限 下面是配置文件的一个片段: 可能有什么问题?您是否尝试过更改您知道的路径 将fileName=“${basedir}\logs\${shortdate}.log”改为类似fileName=“c:\logs\${shortdate}.log” web应用程序中NLog的

我正在使用ServiceStack框架和NLog进行日志记录。我可以在我的本地机器上登录。但是,在服务器上,它没有。我已经检查了
Nlog.config
是否位于
bin
目录中,并且整个目录,包括
bin
目录上方的目录都具有写访问权限

下面是配置文件的一个片段:



可能有什么问题?

您是否尝试过更改您知道的路径

fileName=“${basedir}\logs\${shortdate}.log”
改为类似
fileName=“c:\logs\${shortdate}.log”

web应用程序中NLog的
basedir
变量不在bin文件夹中运行。我想你会在里面找到日志文件

%SystemRoot%\Microsoft.NET\Framework\versionNumber\Temporary ASP.NET Files

如果是ASP.NET应用程序。

虽然我不知道您的服务器环境和配置有什么问题,但我始终认为检查以下内容很有帮助:

  • 确保您确切知道日志的目录(如@paulocorriea所建议的)
  • 确保目录确实存在
  • 确保IIS工作进程具有能够写入该目录的正确权限

  • FWIW,根据我的经验,这通常是一个权限问题。

    恐怕我无法访问c:drive,因为它是一个外部共享托管服务器。我建议使用c:\,但您可以使用您有权访问的任何其他文件夹路径,并且您的代码对bin文件夹具有写权限不是一个很好的做法。