トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS

Linux:syslog転送テスト

Last-modified: 2013-08-24 (土) 02:14:21 (2982d)
Top / Linux:syslog転送テスト

Linux:syslog転送テスト

syslogに外部ホストからの受信設定をした場合の、syslog受信動作確認用のスクリプトを書いてみました。

■send-syslog-test.pl

#!/usr/bin/perl
use strict;
use warnings;
use Sys::Syslog qw(:DEFAULT setlogsock);

if (@ARGV  != 4){
  print "usage syslogtest.pl [target_host] [facility] [priority] [msg]\n";
  print "priority is error|warning|debug|info\n";
  exit(1);
}

my $ident    = "send-syslog-test";
my $logopt   = "pid";

my ($sv, $facility, $priority, $msg ) = @ARGV;

setlogsock("udp");
$Sys::Syslog::host = $sv;

openlog($ident, $logopt, $facility);
syslog($priority, $msg);
closelog();

実行コマンドは以下の通り。

send-syslog-test.pl 192.168.0.1 local0 warning test

引数は以下の通り

第一引数
syslog転送先ホスト/IPアドレス
第二引数
ファシリティ(local0~local7)
第三引数
プライオリティ(error、warning、debug、info等)
第四引数
ログメッセージ(自由文)