Pull to refresh

Comments 18

tail -f -s 5 /var/log/<file>

Для логов лучше -F

С -f если в момент просмотра произошла ротация логов - так и будете смотреть старый файл, а данные будут писаться уже в новый.

Отличное замечание, еще одна опция в копилку. Спасибо!

Спасибо. В принципе все нормально, по делу и довольно очевидно.

Но, знаете, мне когда-то сказали, что всякий раз, когда ты пишешь

$ cat /path/file | grep -i "any"

в мире умирает один котик. Не используй конвейер без надобности.

grep -i "any" /path/file

в большинстве случаев более предпочтительно. Безусловно это не самый критичный момент, и даже вкусовщина. Но определённый смысл в ней есть.

Мне кажется cat с grep используют из-за того, что не нужно запоминать порядок аргументов - после cat один аргумент (файл, тут всё понятно), и содержимое передаём на grep, собственно, если указать единственный аргумент, это будет искомый текст.

А когда используем только grep, то нужно помнить, что сначала указываем текст, потом имя файла. Снижаем нагрузку на комп, увеличиваем на свой мозг :) Конечно, чуть больше и дольше поработать с этими инструментами, и уже будет на автоматизме.

У cat есть свой набор аргументов. Он не шибко богат, но временами бывает полезен (в частности в плане избавления от лишних конвейеров). Но в целом именно так. Да и файлов в аргументах может быть больше, чем один.

В целом, тут имеется смысл когда имеется -Hr, а в контексте одного файлика вообще смысла особого не имеет. Пайплайны ничего не нагружат, не жрут память и работают отлично.

С cat даже удобнее, сначала просто cat, посмотрел в целом что там есть, а дальше уже докидываешь | grep xxx, | grep -v yyy и разбираешься). Но в целом да, я согласен, вкусовщина.

@brammatorтут чет сломалась обработка обратных кавычек...

Тьфу блин, я хотел @Boomburum захайлайтить...) Прошу прощения!

Согласны, но это уже дело привычки.

Какие ещё инструменты вы используете?

почему для логов не использовать ELK и его возможности по анализу/мониторингу и уведомлениям

к нему есть cli?(я не очень знаком с темой, по этому только через страницу поиск делаю)

его cli это curl с jq (сомнительное удобство ага, но работоспособное)

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

Ну, у нас, к примеру, всякие логи (access/error логи nginx'а, всякие высеры различных сервисов, ...) валятся на "центральный" логгер через rsyslog, и в целом нет никакой проблемы запустить что-то вроде `tail -f xxx-access.log` и посмотреть что происходит именно сейчас.

Да, есть и разделная запись логов, ну с каждой ноды в свою папочку, и параллельно есть ещё папочка с агрегированными логами, всё средствами rsyslog.

в `/var/log/*` смотрим а в journalctl не смотрим? как-то это странно нет?

Смотрим. /var/log/* включает /var/log/journal, journalctl - это команда для просмотра журналов systemd, тем более, что они хранятся в бинарном виде. В статье перечислены только самые базовые файлы и каталоги, и, конечно же, никак не исключают остального.

Sign up to leave a comment.