スケジュールを実行しているのですが、マルチスレッドを使用してプログラム内でストアド プロシージャまたは SQL を呼び出してログを記録し、実行情報をログに記録する必要があります。ただし、情報によると、ロギングはマルチプロセスでは安全ですが、マルチスレッドでは安全ではありません。複数のスレッドで同じログ ファイルにログを書き込む方法はありますか?皆さん、ありがとうございました###
プロデューサー - コンシューマー モデルを使用することをお勧めします。プロデューサーは複数のスレッドを通じてキューにログを書き込み、コンシューマーはキューからログを取得してログに書き込みます。
マルチプロセスですか、それともマルチスレッドですか?
複数のプロセスがある場合は、stderr に書き込むことをお勧めします。そうすれば、マネージャー (systemd やvisord など) がファイルを均一に書き込むことができます。
プロデューサー - コンシューマー モデルを使用することをお勧めします。プロデューサーは複数のスレッドを通じてキューにログを書き込み、コンシューマーはキューからログを取得してログに書き込みます。
マルチプロセスですか、それともマルチスレッドですか?
複数のプロセスがある場合は、stderr に書き込むことをお勧めします。そうすれば、マネージャー (systemd やvisord など) がファイルを均一に書き込むことができます。