Talend Management Consoleのタスク実行ログで機密性が高い接続情報をマスキング
Remote Engine v2.12.3以降、接続情報がTalend Management Consoleのログに表示された場合、自動的にマスキングされます。この情報は、ホスト、ポート番号、ユーザー名などのような、Talend Management Consoleでロックした接続パラメーターになります。
このタスクについて
手順
タスクの結果
トラブルシューティング:
機密性の高い接続情報をマスキングすると、多数のログがメモリに保持されている間に多くの情報がマスキングされるため、CPUとメモリの消費量が増加することがあります。
このような急激な上昇を軽減するため、次のパラメーターを微調整します。
- <RemoteEngineInstallationDirectory>/etcフォルダーを参照し、org.talend.ipaas.rt.jobserver.client.cfgファイルを開きます。
- 値を次のように調整します:
次のテーブルは、ログ行のサイズと保存されたログイベントの数を調整するために使用されるパラメーターを示しています パラメーター 説明 job.log.msg.size.max デフォルト値は10000文字で、これは各ログ行で許容される最大サイズを意味します。 この値を小さくし、処理する各ログ行のサイズを制限すれば、各ログ行を切り捨ててリソースの消費を抑えることができます。
ログの切り捨てが問題になる場合は、エンジンに新たにリソースを追加することを検討してください。
job.log.msg.buffer.size.max このパラメーターはメモリに一時的に保存できるログイベントの最大数を設定するもので、デフォルト値は10000です。 同時発生するログイベントのピークが高いと、この最大サイズに到達し、ログデータが失われることがあります。このような損失を防ぐためには、このバッファーのサイズを大きくし、それに応じてエンジンに新たにメモリリソースを割り当てます。
情報メモ注: メモリやCPUの負荷が軽減されるよう、thread.timeoutパラメーターを追加し、ログ処理がタイムアウトするまでの最大時間を指定することも可能です。デフォルト値は5分で、この時間が経過するとログ処理が停止され、コンテキスト情報がクリーンアップされます。この値を小さくすればリソースをより頻繁に解放できるようになりますが、処理されていないログが失われますので注意が必要です。これが問題になる場合は、エンジンにさらにリソースを割り当てることを検討してください。このtimeoutイベントが発生すると、WARNイベントとしてログに記録されます。このイベントのログエントリーは次のようになります。Force cleanup context for empty streamSet, executionId {}
- 1文字あたり2バイトのメモリが必要です。このように、ログ処理に必要な追加リソースを計算する場合、計算は次のように行われます。
- 各ログ行の文字数が2000文字でログイベントが2000件の場合は、80MBのメモリーが必要です。
- 各ログ行の文字数が20000文字でログイベントが5000件の場合は、200MBのメモリが必要です。
- 各ログ行の文字数が20000文字でログイベントが20000件の場合は、800MBのメモリーが必要です。
ホストマシンでこの割り当てを増やした後、お使いのエンジンがシステムサービスとしてデプロイされている場合は、それに応じて<RemoteEngineInstallationDirectory>/etc/talend-remote-engine-wrapper.confファイルにあるJVM設定をカスタマイズします。