Настройка парсинга логов exim
rsyslog сервер, на котором установлена elk stak и настроен rsyslog
На хостах exim добавить в cron
root zabbix_sender -z zabbix-server -s "exim_hostname_in_zabbix" -k exim.queue -o `exim -bpc`
Добавить в rsyslog.conf
| FROM debian:jessie | |
| #Setup environment for pyenv | |
| ENV HOME=/root PYENV_ROOT=/opt/pyenv PATH=/opt/pyenv/shims:/opt/pyenv/bin:$PATH DEBIAN_FRONTEND=noninteractive | |
| #Install pyenv requirements https://github.com/yyuu/pyenv/wiki/Common-build-problems#requirements | |
| RUN apt-get update -q && \ | |
| apt-get upgrade -q -y && \ | |
| apt-get install -y \ | |
| build-essential \ |
| #/bin/bash | |
| rm -rf json_keys | |
| data=`cat json.txt` | |
| count=`echo $data| jq keys[]| wc -l` | |
| countin=0 | |
| cat <<EOF>> json_keys | |
| { |
| Zabbix lld discovery example. Data source url, that return json formated data. | |
| We have a url than provide some data, we want monitor. We want do less, get more. Thus we diside use zabbix lld discovery script and write on python. | |
| Functions: | |
| 1. Get from url json, that we have to monitor. | |
| 2. Parse it and make output json in zabbix json format. | |
| 3. According to script arguments, we can get: | |
| -All data from json. | |
| -All items, that have string type. |
| Посчитать size_in_bytes для каждого shard | |
| shard0 это сумма сегментов в order 0-0 | |
| shard1 это order 0-1 | |
| shard2 это order 1-0 | |
| shard3 это order 1-1 | |
| Посчитатть сумму сегоментов без учёта первого сегмента |
| Zabbix tip to sort screens |
| import time | |
| import requests | |
| import json | |
| from pyzabbix import ZabbixAPI | |
| post_url = "http://ip/zabbix/api_jsonrpc.php" | |
| ''' |
| https://zabbix.org/wiki/Docs/howto/zabbix2_postgresql_autopartitioning | |
| https://github.com/kostya/pg_reindex | |
| https://github.com/cavaliercoder/zabbix-pgsql-partitioning | |
| http://www.umgum.com/zabbix-housekeeper-postgresql-vacuum | |
| https://habr.com/company/postgrespro/blog/301238/ | |
| http://it-admin.org/?p=1602 | |
| https://blog.2ndquadrant.com/autovacuum-tuning-basics/ | |
| https://confluence.atlassian.com/kb/optimize-and-improve-postgresql-performance-with-vacuum-analyze-and-reindex-885239781.html | |
| https://lob.com/blog?p=10 | |
| https://www.postgresql.org/docs/9.2/static/routine-vacuuming.html |
| CREATE TABLE `users` ( | |
| `userid` bigint unsigned NOT NULL, | |
| `alias` varchar(100) DEFAULT '' NOT NULL, | |
| `name` varchar(100) DEFAULT '' NOT NULL, | |
| `surname` varchar(100) DEFAULT '' NOT NULL, | |
| `passwd` char(32) DEFAULT '' NOT NULL, | |
| `url` varchar(255) DEFAULT '' NOT NULL, | |
| `autologin` integer DEFAULT '0' NOT NULL, | |
| `autologout` varchar(32) DEFAULT '15m' NOT NULL, | |
| `lang` varchar(5) DEFAULT 'en_GB' NOT NULL, |
| input { | |
| syslog { | |
| type => syslog | |
| port => 2514 | |
| } | |
| } |
Настройка парсинга логов exim
rsyslog сервер, на котором установлена elk stak и настроен rsyslog
На хостах exim добавить в cron
root zabbix_sender -z zabbix-server -s "exim_hostname_in_zabbix" -k exim.queue -o `exim -bpc`
Добавить в rsyslog.conf