Linux 如何將資料寫到 Syslog

於 Debian / Ubunut Linux 的系統, /var/log/syslog 是 system log, 會紀錄誰執行了哪些東西, 有哪些 CRON 或者哪些動作正在被執行等紀錄.

若是某些資料也想要直接寫到 syslog 裡面的話, 可以使用 logger 來達成.

下述只有寫 logger 的簡單用法, 詳細可以: man loggerman syslog 來操作.

Logger 指令格式

Logger 有 -i, -s, -f (file), -p, -t (tag), -u, -d, 詳細可以 man logger. (在此只有列出 基本 和 -t 的用法)

  • 命令格式: logger messagelogger -t "tag name" message.

logger 實際操作

  1. $ tail -f /var/log/syslog # 先開一個視窗監看 syslog
  2. $ logger test # 直接寫入

    Nov 14 12:00:16 desktop logger: test

  3. $ logger -t "tsung ssh test" # 多行一次寫入, ^D = Ctrl + d

    test
    xoxo
    sss
    ^D
    Nov 14 12:08:09 desktop tsung ssh test: test
    Nov 14 12:08:10 desktop tsung ssh test: xoxo
    Nov 14 12:08:11 desktop tsung ssh test: sss

  4. $ logger -t "tsung ssh test" dvd # 單行寫入, 直接寫在後面即可.

    Nov 14 12:08:31 desktop tsung ssh test: dvd

相關網頁

  • HOWTO Log Bash History to Syslog - 將 Bash history 寫入 Syslog, 只要於 .bashrc 寫入下述即可.

    PROMPT_COMMAND='history -a >(logger -t "$USER[$$] $SSH_CONNECTION")'

作者: Tsung

對新奇的事物都很有興趣, 喜歡簡單的東西, 過簡單的生活.

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料