1

TL;DR influxdb で syslog ログを表示できません

環境:

OS: mac os mojave
telegraf version: 1.8
influxdb version: 1.6.4

そのため、ログインを表示し、telegraf で提供されている入力プラグインchronografのセットからプラグインを使用することを考え出しました。syslog

こちらの手順に従いましたが、読みやすいようにこちらにも手順を追加しました。

次のようにrsyslogをインストールしhomebrewました:

$ brew install rsyslog

に以下を追加しました/usr/local/etc/rsyslog.conf

$WorkDirectory /tmp/rsyslog # temporary directory for storing data 
$ActionQueueType LinkedList # use asynchronous processing 
$ActionQueueFileName srvrfwd # set file name, also enables disk mode 
$ActionResumeRetryCount -1 # infinite retries on insert failure 
$ActionQueueSaveOnShutdown on # save in-memory data if rsyslog shuts down 
$ModLoad imudp #loads the udp module 
#listen for messages on udp localhost:514 
$UDPServerAddress localhost 
$UDPServerRun 514 
*.* @@(o)127.0.0.1:6514;RSYSLOG_SyslogProtocol23Format

rsyslog を再起動しました:

$ sudo brew services restart rsyslog

テレグラフを次のように構成しました。

# # Accepts syslog messages per RFC5425
 [[inputs.syslog]]
#   ## Specify an ip or hostname with port - eg., tcp://localhost:6514, tcp://10.0.0.1:6514
#   ## Protocol, address and port to host the syslog receiver.
#   ## If no host is specified, then localhost is used.
#   ## If no port is specified, 6514 is used (RFC5425#section-4.1).
 server = "tcp://localhost:6514"

次のようにテレグラフを再起動しました。

$ brew services restart telegraf

しかし、私の期待は、データベースsyslog内の測定を見ることでしたtelegraf

syslogデータベースに表示されることを期待して、ログに記録する次の python スクリプトを作成しました。

import logging
import logging.handlers

my_logger = logging.getLogger('MyLogger')
my_logger.setLevel(logging.DEBUG)

handler = logging.handlers.SysLogHandler(address='/var/run/syslog')

my_logger.addHandler(handler)

my_logger.debug('this is debug')
my_logger.critical('this is critical')

しかし、役に立たない。

ここで何が問題なのですか?もしそうなら、私がチェックインできるログファイルはありますか?

編集1:

rsyslogd -N1そこで、コマンドを使用して rsyslog のトラブルシューティングを行ったところ、いくつかの問題が見つかりました。

  • 構成ファイルは にある必要があります/etc/rsyslog.conf
  • 構成ファイルの作業ディレクトリ。/tmp/rsyslogが見つからなかったので作成しました。
  • rsyslog.conf ファイルにいくつかのエラーがありました (この質問の編集で確認できます)

上記のすべてを実行した後、rsyslog と influxdb および telegraf を再起動し、rsyslogd -N1コマンドを実行してエラーがないかどうかを再度確認しました。出力は次のとおりです。

rsyslogd: version 8.37.0, config validation run (level 1), master config /etc/rsyslog.conf
rsyslogd: End of config validation run. Bye.

それでも同じ問題が続きます。

EDIT 2: 関連記事: syslog-plugin-from-remote-server

4

0 に答える 0