]
トップ «前の日記(2010-06-17) 最新 次の日記(2010-06-20)» 編集

Yukiharu YABUKI の tDiary



このtDiaryを検索します。

2010-06-19 [長年日記]

_ [玄箱][Debian] ブロードバンドルーターから rsyslog に、ログを記録させる。

最近のブロードバンドルータには syslog 転送機能が付いています。が、ブロードバンドルータ自体にはストレージデバイスがついているわけじゃないので、長期間のログは保存できません。

そこで、Debian GNU/Linux Lenny (armel版) が入っている玄箱に、ログを転送することにしました。

Debian GNU/Linux Lenny になってから、syslog が rsyslog に変わりました。この rsyslog は syslog に比べて優れている点があります。

今回は、/etc/rsyslog.conf において下記の部分をコメントを外し rootないしはsudoを利用して、/etc/init.d/rsyslog restartとすれば他の所からログを受け付けるようになります。忘れやすいのは、ファイヤウォール(iptables など)で該当する udp/tcp 514 ポートを開けることです。

# provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514
 
# provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514
もちろん、ガチガチにしたいなら、iptables で 特定のPCからしかログを受け付けないようにしておくのが良いでしょう。同じ LAN の信用できる相手なら、そこまではいらないかも。まあ、あなたの所のセキュリティポリシー次第です。

_ [玄箱][Debian] rsyslog-mysql

別のマシンでは、posgresql 8.4 を動かしているので、玄箱では mysql 5.1.44 を入れてみた。ちょうど、エキスパートのためのMySQL[運用+管理]トラブルシューティングガイド(奥野 幹也)エキスパートのためのMySQL[運用+管理]トラブルシューティングガイド(奥野 幹也) も手元にきたことだし。

rsyslog-mysql パッケージをインストールすると、debconfで設定を聞いてくれて、/etc/rsyslog.d/mysql.confを作成され、データベースが作成されてmysqlにログが記録される。Debianめちゃ便利やん。

text のログじゃなくて detabase にログを入れて何するねんってのは、またそのうちに。管理せんで済むならそれに超したことないけど、記録に残せというなら記録を出すための準備がいりますわな。

mysql> show tables;
+------------------------+
| Tables_in_Syslog       |
+------------------------+
| SystemEvents           |
| SystemEventsProperties |
+------------------------+
2 rows in set (0.01 sec)
mysql> show TABLE STATUS;
+------------------------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+------------+-------------------+----------+----------------+---------+
| Name                   | Engine | Version | Row_format | Rows | Avg_row_length | Data_length | Max_data_length | Index_length | Data_free | Auto_increment | Create_time         | Update_time         | Check_time | Collation         | Checksum | Create_options | Comment |
+------------------------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+------------+-------------------+----------+----------------+---------+
| SystemEvents           | MyISAM |      10 | Dynamic    |  249 |            140 |       34860 | 281474976710655 |         5120 |         0 |            250 | 2010-06-19 01:39:14 | 2010-06-19 23:40:00 | NULL       | latin1_swedish_ci |     NULL |                |         |
| SystemEventsProperties | MyISAM |      10 | Dynamic    |    0 |              0 |           0 | 281474976710655 |         1024 |         0 |              1 | 2010-06-19 01:39:14 | 2010-06-19 01:39:14 | NULL       | latin1_swedish_ci |     NULL |                |         |
+------------------------+--------+---------+------------+------+----------------+-------------+-----------------+--------------+-----------+----------------+---------------------+---------------------+------------+-------------------+----------+----------------+---------+
2 rows in set (0.00 sec)
 InnoDBじゃなくてMyISAMになっているな。こっちの方が割り切っている分早いので、これでいいのか。
mysql> select * from SystemEvents limit 3;
+----+------------+---------------------+---------------------+----------+----------+----------+-------------------------------------------------------------------------------------------------------+------------+------------+-------------+-----------+---------------+---------+-----------------+--------------+-----------+----------+----------+------------+--------------+--------------+-----------------+----------+
| ID | CustomerID | ReceivedAt          | DeviceReportedTime  | Facility | Priority | FromHost | Message                                                                                               | NTSeverity | Importance | EventSource | EventUser | EventCategory | EventID | EventBinaryData | MaxAvailable | CurrUsage | MinUsage | MaxUsage | InfoUnitID | SysLogTag    | EventLogType | GenericFileName | SystemID |
+----+------------+---------------------+---------------------+----------+----------+----------+-------------------------------------------------------------------------------------------------------+------------+------------+-------------+-----------+---------------+---------+-----------------+--------------+-----------+----------+----------+------------+--------------+--------------+-----------------+----------+
|  1 |       NULL | 2010-06-18 09:39:16 | 2010-06-18 09:39:16 |        0 |        6 | debian   | imklog 3.18.6, log source = /proc/kmsg started.                                                       |       NULL |       NULL | NULL        | NULL      |          NULL |    NULL | NULL            |         NULL |      NULL |     NULL |     NULL |          1 | kernel:      | NULL         | NULL            |     NULL |
|  2 |       NULL | 2010-06-18 09:39:16 | 2010-06-18 09:39:16 |        5 |        6 | debian   |  [origin software="rsyslogd" swVersion="3.18.6" x-pid="1209" x-info="http://www.rsyslog.com"] restart |       NULL |       NULL | NULL        | NULL      |          NULL |    NULL | NULL            |         NULL |      NULL |     NULL |     NULL |          1 | rsyslogd:    | NULL         | NULL            |     NULL |
|  3 |       NULL | 2010-06-18 09:39:24 | 2010-06-18 09:39:24 |        3 |        5 | debian   |  kernel time sync status change 4001                                                                  |       NULL |       NULL | NULL        | NULL      |          NULL |    NULL | NULL            |         NULL |      NULL |     NULL |     NULL |          1 | ntpd[21510]: | NULL         | NULL            |     NULL |
+----+------------+---------------------+---------------------+----------+----------+----------+-------------------------------------------------------------------------------------------------------+------------+------------+-------------+-----------+---------------+---------+-----------------+--------------+-----------+----------+----------+------------+--------------+--------------+-----------------+----------+
3 rows in set (0.00 sec)