🐥

zabbixでmastodonの監視をしてみた

2021/08/10に公開

環境

  • Ubuntu 18.04
  • mastodon 2.4.3
  • redis-cli 4

やったこと

https://github.com/ken-washikita/zbx-templates-mstdn

このセットをつかっただけ。

ハマりポイント

redis-latency スクリプトが正常な値を返さなくて、値が取得できなかった。

対策

redis-latency.sh を以下のように書き換えた。

`#!/bin/bash

WORKFILE=/var/tmp/redis-latency
SAVEFILE=/etc/zabbix/redis/redis-latency

redis-cli --latency > $WORKFILE
cat $WORKFILE | cut -d ' ' -f 2 > $SAVEFILE

原因

ターミナルから、 redis-cli --latency を実行すると出力は以下のようになる。

`min: 0, max: 1, avg: 0.25 (165 samples)
# CTRL+Cで停止するまで更新し続ける。

しかし、出力をリダイレクトすると、値のみが出力されるように変更された模様。

$ redis-cli --latency > file
$ cat file
0 1 0.25

なお、元のスクリプトが max を取得していたので、変更したスクリプトもそれに習っている

蛇足

cron の設定

コマンドが標準エラー出力になにか吐いているのがいるので、それは捨てるかなにかしないと、メールがえらい数とんできて大変なことになります。(なりました)

redis のバージョン

Mastodon Production Guide に従った場合、redis はディストリビューションの標準バージョンが入るのですが、Ubuntu 16.04LTS の場合は 3.x で、この場合は元のスクリプトそのままで動きます。

postgres の監視は?

個人的には mamonsu がおすすめです。ただし、postgres はユーザー名/パスワードで認証するために、pg_hba.conf の修正が必要なのでそれを忘れると動きません。ハマるので注意!

Discussion