如果我有一个asp.net webAPI,我正在进行自己的自定义日志记录,那么在哪里放置这些日志是最好的做法?
最初我尝试登录$ {basedir} / logs / $ {shortdate} .log。然而,我的基础是我的项目的旧名称,我不知道这个价值来自何处或如何改变它?
然而,接下来我注意到的是,日志文件夹似乎只读取IIS默认登录的位置。而我似乎无法改变这一点。我在想IIS运行时默认情况下只读它,所以没有人可以在恶意攻击期间删除日志。
因此我决定登录到另一个目录以避免此问题。这是最好的做法还是应该尝试不同的方法我使用Nlog如果它相关?
答案 0 :(得分:1)
我不知道我是否称之为最佳做法,但根据我的经验,在本地记录文件并不能很好地扩展到生产环境:
备选方案包括记录到中央数据库或(现在我的首选选项)记录到日志服务器,例如seq。您可以按照NLog documentation page
使用NLog登录seq如果您确实想要在光盘上使用文件,那么我建议在"日志"中使用一组滚动日志文件。应用程序根目录的子文件夹。