SecureZIP / PKZIP Server を使用中に、何らかの原因でエラーが発生することがあると思います。そんな時に、エラー メッセージをログとしてテキストファイルに残しておきたい場合があります。今回は、そのエラーなどの実行結果をログに出力する方法をご紹介します。
イベントのログについて
SecureZIP / PKZIP Server では、警告、エラー、および通常の処理に関する実行結果をログに出力することができます。ログは、STDOUT、STDERR、お使いのプラットフォームのネイティブ システムログ (syslog)、またはファイルに出力するか指定ができます。まずは、イベントログの種類についてご説明します。
log オプション
SecureZIP / PKZIP Server の通常操作の実行結果に関連したメッセージをログとして残すように設定し、保存する場所を指定します。
stdout - (デフォルト) メッセージを標準出力に書き込みます。
stderr - メッセージを標準エラーに書き込みます。
syslog - メッセージをシステムのログ ファシリティに書き込みます。
<ファイル名> - メッセージを指定したファイルに書き込みます。コマンドを実行するたびに、このファイルは上書きされます。
logerror オプション
エラーおよび警告に関連したメッセージをログとして残すよう設定し、保存する場所を指定します。
stdout - (デフォルト) メッセージを標準出力に書き込みます。
stderr - メッセージを標準エラーに書き込みます。
syslog - メッセージをシステムのログ ファシリティに書き込みます。
<ファイル名> - メッセージを指定したファイルに書き込みます。コマンドを実行するたびに、このファイルは上書きされます。
logoptions オプション
SecureZIP / PKZIP Server を起動するたびに現在のコマンドを含めて syslog にエントリを書き込むことができます。また、logoptions を設定して PKZIP が終了したときに syslog 内のエントリを記録できます。
start - PKZIP を起動した際に、システムログにエントリを記入します。エントリには現在のコマンドが含まれます。
stop - PKZIP を終了した際に、システムログにエントリを記入します。
デフォルト値の設定
上記で紹介しました、log、logerror、および logoptions オプションのデフォルト値は configuration コマンドで設定することができます。デフォルト値を設定すると、ログの出力を書き込む場所を指定できます。
下記のコマンドでは、ログを指定したファイルに出力されるように設定します。
例: pkzipc -config -add -log=<ファイル名>
上記の設定では、コマンドを実行するたびに、このファイルは上書きされます。
ログファイルの出力
最もお問い合わせの多い、ログファイルを出力する方法です。デフォルトでファイルを指定した場合や、下記で紹介する例の場合、コマンドを実行するたびに指定したファイルは上書きされますのでご注意ください。
例: pkzipc -log=mylog.txt -add myarchive.zip mytext.txt
デフォルトで stdout が選択されている場合、下記のようなコマンドが実行可能です。
例: pkzipc –add myarchive.zip mytext.txt > mylog.txt
既存のファイルに上書きされずにログを追加するには、「>>」を使用します。
例: pkzipc –add myarchive.zip mytext.txt >> mylog.txt
syslog ログエントリ
syslog を値とした場合には、メッセージをシステムのログ ファシリティに書き込むことができます。
例: pkzipc -config -add –logerror=syslog
Windows では、Windows イベント ビューアーよりログを確認できます。各エントリで、イベントログはメッセージのソース名 (たとえば PKZIP)、日付と時間、アプリケーション特有のイベント ID、およびそのイベント ID に関連したテキストを記録します。
UNIX では、syslog に送られたログエントリは、データスタンプに続けて PKZIP[XX] が先頭に付きます。ここでの XX はメッセージを生成した PKZIP 命令のプロセス ID の番号です。この情報により、PKZIP に関連したメッセージを識別できます。また複数の PKZIP プロセスが起動しているときに、どの PKZIP のメッセージがどのプロセスに属するかを判断できます。
単一コマンド ラインの実行は複数の syslog エントリを生成します。たとえば、アーカイブの更新では、ファイルの追加処理による 1 つのエントリと既存のファイルのコピーによるその他のエントリが生成されます。Windows は syslog 内のそれらの関連したエントリに同じプロセス ID を接頭辞とします。jobid オプションを使用して、独自のジョブ ID を syslog 内の関連するエントリのセットに付加できます。
30日間の無償評価版のお申込みはこちらから。
PKWARE SecureZIP/PKZIP 製品の詳細は、こちらのページからご覧ください。
※Desktop 版の SecureZIP / PKZIP Windows Desktop CLI ではログ機能 (log オプション) を使用できませんので、ご注意ください。