Windows log4net 输出文件名中的用户名

Windows username in the filename of the log4net output

我正在实施一个 VB.NET(C# 也可以)应用程序,它将由不同的用户同时 运行。

我需要将所有用户事件记录在单独的文件中,文件名类似于此windowsuser-20170103.log

是否可以配置 log4net 以这种方式工作?

问题应该是:是否可以输出环境变量,因为你有USERNAMEUSERDOMAIN

是的,这应该可以用

<file type="log4net.Util.PatternString" value="%env{USERNAME}.log" />

甚至

<file type="log4net.Util.PatternString" value="${USERNAME}.log" />

根据带有 TMP 环境变量的 https://logging.apache.org/log4net/release/config-examples.html 示例。