10

次のapp.configappSettingエントリを検討してください。

<add key="serilog:write-to:RollingFile.pathFormat"
 value="ServerServiceApp-{Date}.log" />

これは、アプリの起動時に行われます。

Log.Logger = new LoggerConfiguration()
    .ReadFrom.AppSettings()
    .Enrich.WithThreadId()
    .CreateLogger();

これは Windows サービス アプリにあります。ログファイルは次のようになります。

C:\Windows\SysWOW64

明らかに、このサービスの .exe が格納されているディレクトリと同じディレクトリにログ ファイルを配置したいと考えています (顧客は、SysWOW64 にデータを書き込むことを望んでいません)。しかし、どのように?

顧客が必要に応じて app.config で serilog 設定を提供できるように、そこに ReadFrom.AppSettings が必要です。

ReadFrom.AppSettings の実行後に、ログ ファイルに使用されるディレクトリを変更する方法はありますか?

次のようなことが言えたら最高です。

<add key="serilog:write-to:RollingFile.pathFormat"
 value="{ApDomainBaseDirectory}\ServerServiceApp-{Date}.log" />

(そして、ファイル パスに配置できる {Date} はどこに記載されていますか?)

4

2 に答える 2