LINUX.ORG.RU

Сообщения alekseipa5

 

Формирование и ротация логов в одном скрипте или в двух разных?

Форум — General

Привет.

Есть скрипт, который в процессе своей работы формирует соответствующий лог. Также есть необходимость ротации лога.

Ротацию лучше организовать в отдельном скрипте, или организация ротации в том же скрипте нормальна?

Сам скрипт достаточно короток, и реализация ротации в отдельном скрипте выглядит избыточной.

Однако – в моем понимании – ротация есть логически отдельный процесс, и здраво не пытаться упихать все в один файл. К тому же ротация будет проводиться ежедневно, тогда как новые записи в лог будут добавляться значительно чаще.

В общем интуитивно кажутся необходимыми два отдельных скрипта. Но выглядит как будто некомпактно.

 ,

alekseipa5
()

Что подразумевается под «сетью Nginx»?

Форум — Admin

Что может означать словосочетание «IP адрес, принадлежащий сети Nginx»?

В моем понимании – это адрес, принадлежащий пространству частных IP адресов. То есть возможна неточная формулировка.

И если нас интересует статистика по IP адресам «извне», то мы следим за адресами вне указанных диапазонов.

Или же «принадлежность сети Nginx» означает что-то, определенное в конфигурации Nginx? Куда смотреть и какую документацию изучать?

 

alekseipa5
()

Что означает статус `active (exited)` в статусе сервиса?

Форум — Admin
systemctl status <service>

отдает

     Active: active (exited) since Wkd YYYY-MM-DD HH:MM:SS TMZ; N days ago

, а

systemctl cat <service>

отдает

...
[Service]
...
RemainAfterExit=yes
...

Если правильно читаю документацию, то фактически процесс завершен, но systemd считает процесс активным (в каких случаях столь противоречивое поведение полезно?).

Исходя из этого полагаю, что при настройке мониторинга статуса сервиса

active (exited)

законно будет означать сервиса неработоспособность.

Верно?

Перемещено hobbit из general

 ,

alekseipa5
()

Не работают Silences, настраиваемые в Grafana

Форум — Admin

Привет

Есть Grafana, и политика оповещений предполагает их отсутствие в некоторый - указанный в Silences - период времени.

Однако оповещения все равно в этот период времени продолжают поступать в соответствующий канал.

В чем может быть причина, и как проблему решать?

Перемещено hobbit из general

 

alekseipa5
()

Как сделать запрос к статусной странице PHP-FPM, находящегося в контейнере?

Форум — Admin

Есть PHP-FPM, развернутый в контейнере, со следующей конфигурацией:

...
listen = 0.0.0.0:9000
...
pm.status_path = /status
...

Я получаю ответ

curl: (56) Recv failure: Connection reset by peer

вне зависимости от того, где я произвожу запрос – в контейнере:

curl 0.0.0.0:9000/status

или, ориентируясь на

docker ps
PORTS                  
...                       
10.0.0.1:9901->9000/tcp

с хоста:

curl 10.0.0.1:9901/status

Почему не получается получить статусник? И как его работу настроить?

Перемещено hobbit из general

 ,

alekseipa5
()

Может ли (и - почему) дублироваться cron? И необходимо ли это исправлять?

Форум — General

CentOS Linux 7

ps waxfu отображает вывод вроде

root      XXXX  0.0  0.0 128300  1696 ?        Ss   Jun06   0:17 /usr/sbin/crond -n
root      XXXX  0.0  0.0 180324  2552 ?        S    10:56   0:00  \_ /usr/sbin/CROND -n
www       XXXX  0.0  0.0 113116  1204 ?        Ss   10:56   0:00  |   \_ /bin/sh -c /usr/bin/php74 ...
www       XXXX  0.1  0.0 632232 46160 ?        S    10:56   0:00  |       \_ /usr/bin/php74 ...
root      XXXX  0.0  0.0 180324  2552 ?        S    11:00   0:00  \_ /usr/sbin/CROND -n
www       XXXX  0.0  0.0 113116  1204 ?        Ss   11:00   0:00  |   \_ /bin/sh -c /usr/bin/php74 ...
www       XXXX  0.2  0.0 632232 46152 ?        S    11:00   0:00  |       \_ /usr/bin/php74 ...
root      XXXX  0.0  0.0 180324  2552 ?        S    11:04   0:00  \_ /usr/sbin/CROND -n
www       XXXX  0.0  0.0 113116  1196 ?        Ss   11:04   0:00  |   \_ /bin/sh -c /usr/bin/php74 ...
www       XXXX  8.5  0.1 822556 144496 ?       S    11:04   0:10  |       \_ /usr/bin/php74 ...
root      XXXX  0.0  0.0 180324  2552 ?        S    11:04   0:00  \_ /usr/sbin/CROND -n
www       XXXX  0.0  0.0 113116  1200 ?        Ss   11:04   0:00  |   \_ /bin/sh -c /usr/bin/php74 ...
www       XXXX  0.7  0.0 632232 46160 ?        S    11:04   0:00  |       \_ /usr/bin/php74 ...
root      XXXX  0.0  0.0 180324  2552 ?        S    11:05   0:00  \_ /usr/sbin/CROND -n
www       XXXX  0.0  0.0 113116  1200 ?        Ss   11:05   0:00  |   \_ /bin/sh -c /usr/bin/php74 ...
www       XXXX  3.0  0.1 838904 160228 ?       S    11:05   0:01  |       \_ /usr/bin/php74 ...
root      XXXX  0.0  0.0 180324  2552 ?        S    11:05   0:00  \_ /usr/sbin/CROND -n
www       XXXX  0.0  0.0 113116  1200 ?        Ss   11:05   0:00      \_ /bin/sh -c /usr/bin/php74 ...
www       XXXX  5.4  0.0 686620 99936 ?        S    11:05   0:03          \_ /usr/bin/php74 ...

Означает ли это, что запущено 6 инстансов crond, или каждая CROND строка соответствует одной cron job? И как эти job могли быть запущены, почему они продолжают выполняться, учитывая что при попытке просмотра активных cron job с помощью crontab -l ни одной задачи с подобным синтаксисом нет?

 

alekseipa5
()

Как получить данные ElasticSearch с помощью API endpoint, аналогичные отображаемым в разделе Discover в Kibana?

Форум — General

Развернута Kibana, в которую подключен мониторинг состояния ElasticSearch. В частности, в одном из графиков через равные временные интервалы строится визуализация значений doc_count. Но мне не удается найти API endpoint, обращение к которому через консоль способно вернуть то же значение.

Были испробованы ../_stats/docs и ../_search, но отдаются либо не та информация, либо информация не соответствует метрикам Kibana.

 

alekseipa5
()

Как получить значение поля Last секции Sessions графического представления Statistics Report для HAProxy?

Форум — General

Есть dashboard, отражающий статистику работы HAProxy.

Как получить значение поля Last через консоль?

Прав ли я в том, что, имея конфигурацию

listen stats
    bind :3309
    mode http
    stats enable  # Enable stats page
    ...
    stats uri /haproxy_stats  # Stats URI
    ...
    stats auth [creds]

можно сделать запрос к http://[creds]@127.0.0.1:3309/haproxy_stats и получить аналогичные dashboard данные?

верно ли мое предположение, что в этих данных соответствующим полю Last из dashboard’а будет поле lastsess?

 

alekseipa5
()

Скрипт, выполняющийся в задаче cron и в оболочке среды имеет разный вывод.

Форум — General

Есть скрипт, условно выглядящий так:

#!/bin/bash

x=$(/usr/local/bin/jq ".x" /home/data.txt)
y=$(/usr/local/bin/jq ".y" /home/data.txt)
z=$(/usr/local/bin/jq ".z" /home/data.txt)
a=$(/usr/local/bin/jq ".a" /home/data.txt)

b=$(echo "scale=3; (${a} + ${y}) / ${x} * 100" | bc)

echo "x ${x}" > /var/log/_values.txt
echo "y ${y}" >> /var/log/_values.txt
echo "z ${z}" >> /var/log/_values.txt
echo "a ${a}" >> /var/log/_values.txt
echo "b 0${b}" >> /var/log/_values.txt

При запуске через /bin/bash, все отрабатывает корректно, и в файл уходят действительные значения

x 35645
y 225
z 35413
a 7
b 0.600

Однако задача, выполняемая посредством cron, отдает данные в таком формате

x
y
z
a
b 0

И я не могу осознать, чего cron не хватает. Вроде как-то подобную проблему решал посредством добавления какой-то переменной среды в скрипт. Но не могу вспомнить наверняка.

*/5 * * * * /bin/bash /root/scripts/script.sh

 

alekseipa5
()

В чем разница между free и available полями в выводе команды free?

Форум — Admin

В ответе на похожий вопрос на serverafult говорится, что available память - это разница между free памятью и блоками резерва в памяти для суперюзера. В этом случае free память всегда должна быть больше, чем available. Но в моем случае available память значительно больше, чем free: 11Gi для free и 50Gi для available.

Важно не допускать истощения free памяти, или низкий показатель free памяти допустим, если доступна available память?

 

alekseipa5
()

/bin/jq: строка 1: синтаксическая ошибка рядом с неожиданным маркером «newline»

Форум — General

AlmaLinux При попытке установки jq средствами https://gist.github.com/kamermans/c860ae5f3e2cdd49f4a3

получаю ответ согласно заголовку топика

 ,

alekseipa5
()

Как исключить из отображения process snapshot (ps) сведений о единичном процессе?

Форум — General

Привет.

Доступно ли исключение из process snapshot (ps) сведений о процессе и его дочерних процессах по PID?

Есть сервер, на котором инфраструктура отчасти развернута как есть, а отчасти завернута в контейнеры Docker. Как мне исключить из вывода ps все, что относится к Docker без использования grep?

 

alekseipa5
()

Конфигурация Supervisor

Форум — Admin

Привет Хочу научиться парсить .ini конфигурацию Supervisor через Bash скрипт.

Мне необходимо вытащить program и numprocs. Вижу из раздела документации о numprocs, что Required: No и Default: 1

Верно полагаю, что при отсутствии в конфигурации этого поля могу означать количество numprocs для program по умолчанию в единицу?

 

alekseipa5
()

Разница между значением частоты ЦПУ из полного названия процессора и поля CPU MHz (получаемых посредством lscpu)

Форум — Admin

lscpu для Intel Xeon D-2141I показывает частоту процессора (поле CPU MHz), равную 2700Гц, а название (Intel(R) Xeon(R) D-2141I CPU @ 2.20GHz) содержит в себе меньший показатель частоты.

В чем разница, и на какое показание ориентироваться? Показание необходимо для составления документации о сервере, используемой администраторами поддержки.

 

alekseipa5
()

Значение полей dmidecode для --type memory

Форум — Admin

Что означают поля Array Handle и Error Information Handle?

 ,

alekseipa5
()

Haproxy метрики и условие «ИЛИ» при использовании AWK

Форум — Admin

У меня есть несколько AWK запросов, с помощью которых я получаю значение метрик Haproxy, например: awk -F , ‘/[pattern]/{print $5}’ /tmp/.hastats.tmp однако иногда запросы возвращают пустую строку. Как я могу улучшить запрос на такие случаи, чтобы получать однозначное целочисленное число?

И какое значение я могу использовать? Я не вижу в /tmp/.hastats.tmp ничего иного, кроме нуля и положительных целочисленных значений. Таким образом я могу использовать -1 в качестве маяка, указывающего на проблему?

Эти запросы используются в конфигурационном файле системы мониторинга, и на запросы потом в веб-интерфейсе можно повесить alert.

Перемещено hobbit из general

 , ,

alekseipa5
()

Как предугадать и не допустить переполнение диска?

Форум — Admin

Поставили мне такую задачу: есть у нас директория X, которая периодически растет. Чтобы не допустить переполнения, необходимо настроить оповещение, будущее предупреждать нас за ~2 часа до достижения пороговых значений (до окончания свободного на диске места). Правил роста директории мне не рассказали. Известно лишь, что это директории под кэш и лог Nginx.

Первоприходящее в голову - запустить на пару суток скрипт, который будет логировать темпы роста директории, и по результатам этого лога можно высчитать, какое значение занятого объема будет требовать алертинга. Но этот способ будет работать лишь в случае, если мы уверены, что место возрастает планомерно. Может ли место возрасти резко? Не знаю. Но в этом случае необходим другой подход.

Что сделал сейчас: запустил скрипт, логирующий динамику роста директории, которую планирую впоследствии использовать для прогноза критического объема диска.

 

alekseipa5
()

RSS подписка на новые темы