Size: a a a

2020 December 09

IK

Igor Kurkov in Public | Kottans
Джон простоДжон
ну тут стоит отделять логи и обработку ошибок, иногда они могут происходить в одном месте, но зачастую это все таки разные подсистемы. Если логи нужно еще уметь отслеживать при прохождении больше, чем в одном сервисе, то там начинается следующий уровень изворотов с distributed tracing системами.
Как мне кажется стандарт - твой сервис пишет в output, кто-то этот out коллектит и запихивает в твой логгинг бекенд, будь-то ELK или CloudWatch или что придумаешь. Ну и эксепшены лучше отдельно где-то уметь трекать, чтобы про критические ошибки быстрее узнавать.
Я обычно обходился сентрей для ошибок, и кастомным костылем ведущим логгирование глобал аутпута в бесплатную монгу, но это так сказать, очень дешево)) спартанский вариант)))
источник

SP

Sergei Pogorelov in Public | Kottans
Anton Lempiy
З попсових рішень в сторону якого можна глянути це ELK stack (Elasticsearch + Kibana + Logstash). Логування багато в чому ще залежить від оточення в якому раниться код (докер, клауд, ос т п).
На самом деле скорее от ресурсов которые команда готова выделить на эту задачу. Оно довольно дорого логирование по полной .. или много денег или много времени и опять денег .. и потом на поддержку в живом состоянии тоже ресурсы тратить
источник

АК

Андрей Конончук... in Public | Kottans
Ухты!
источник

АК

Андрей Конончук... in Public | Kottans
Anton Lempiy
З попсових рішень в сторону якого можна глянути це ELK stack (Elasticsearch + Kibana + Logstash). Логування багато в чому ще залежить від оточення в якому раниться код (докер, клауд, ос т п).
Дякую, стільки нових назв, уххх!
источник
2020 December 10

АК

Андрей Конончук... in Public | Kottans
Igor Kurkov
Я обычно обходился сентрей для ошибок, и кастомным костылем ведущим логгирование глобал аутпута в бесплатную монгу, но это так сказать, очень дешево)) спартанский вариант)))
А для логов лучше использовать базу данных или обычный файл? Или все зависит от задач?
источник

АК

Андрей Конончук... in Public | Kottans
Igor Kurkov
Я обычно обходился сентрей для ошибок, и кастомным костылем ведущим логгирование глобал аутпута в бесплатную монгу, но это так сказать, очень дешево)) спартанский вариант)))
Я сейчас пишу в файлы, каждый день, новый файл
источник

E

EvgenyB in Public | Kottans
Андрей Конончук
Я сейчас пишу в файлы, каждый день, новый файл
И на сколько за день за месяц увеличивается объем файлов?
источник

EM

Egor Mushet in Public | Kottans
А мы в базу пишем, так с ними удобнее потом работать
источник

АК

Андрей Конончук... in Public | Kottans
EvgenyB
И на сколько за день за месяц увеличивается объем файлов?
Я их чищу периодически, поэтому не много. Это нужно для интеграции с другим сервисом, задача вроде мелочовая, но часто случается всякая фигня, и я решил организовать логгинг для этого. А так как нужно было здесь и сейчас то набросал такой вариант на скорую руку
источник

E

EvgenyB in Public | Kottans
Андрей Конончук
Я их чищу периодически, поэтому не много. Это нужно для интеграции с другим сервисом, задача вроде мелочовая, но часто случается всякая фигня, и я решил организовать логгинг для этого. А так как нужно было здесь и сейчас то набросал такой вариант на скорую руку
Можно в монгодб  - быстро и бесплатно.
источник

АК

Андрей Конончук... in Public | Kottans
EvgenyB
Можно в монгодб  - быстро и бесплатно.
А есть какой либо синтаксис для этого, чтобы максимально извлечь пользу из этого, или правила оформления?
источник

АК

Андрей Конончук... in Public | Kottans
Как вообще адекватно писать логи?)))
источник

E

EvgenyB in Public | Kottans
Андрей Конончук
А есть какой либо синтаксис для этого, чтобы максимально извлечь пользу из этого, или правила оформления?
Как то была похожая задача- решил mongodb+winston , вполне устраивало .
источник

АК

Андрей Конончук... in Public | Kottans
EvgenyB
Как то была похожая задача- решил mongodb+winston , вполне устраивало .
Спасибо, буду чекать) У меня сейчас вот целый лист бумаги где я позаписывал все советы, чтобы все перед глазами было))
источник

M

Meh in Public | Kottans
Есть еще Graylog, про него не упоминали, но это интересная штука. Это где-то на одной ступеньке с ELK, но со своими нюансами и радостями. Почитать сравнение: https://expertise.jetruby.com/log-management-graylog-vs-elk-d6e8f0492323

Из приятного с точки зрения девелопера:
1. Сверхудобный мониторинг. Всевозможные фильтрации, разделения, квери какие только душе угодно, быстрый/полнотекстовый поиск. И всё это в удобном интерфейсе с дашбордами, графиками, таблицами и остальными художествами.
2. Наглядно и нагрузка, и исключения.
3. Особенно удобно, когда сервисов много.
Если для примера возьмём какое-то микросервисное решение, то можно спокойно мониторить весь путь запроса по сервисам, внедрив корреляционную айдишку.
4. Довольно простая интеграция
5. Норм документация

Для девопса тоже приятные штуки, в т. ч. гибкие настройки прав и доступов.
UI настолько удобен, что логи запросто сможет мониторить нетехнический человек.

Опять-таки, как подмечали выше, всё упирается в ресурсы, масштабы, архитектуру и целесообразность.
На сложный нагруженный проект с микросервисами, контейнерами, эластиком, MQ — Graylog зайдёт на ура. Желательно, с толковым девопсом 🙃
Вариантов для систем попроще огромное количество. Но, как говорится, я просто оставлю это здесь, вдруг кому-то пригодится.. :)
источник

АК

Андрей Конончук... in Public | Kottans
Meh
Есть еще Graylog, про него не упоминали, но это интересная штука. Это где-то на одной ступеньке с ELK, но со своими нюансами и радостями. Почитать сравнение: https://expertise.jetruby.com/log-management-graylog-vs-elk-d6e8f0492323

Из приятного с точки зрения девелопера:
1. Сверхудобный мониторинг. Всевозможные фильтрации, разделения, квери какие только душе угодно, быстрый/полнотекстовый поиск. И всё это в удобном интерфейсе с дашбордами, графиками, таблицами и остальными художествами.
2. Наглядно и нагрузка, и исключения.
3. Особенно удобно, когда сервисов много.
Если для примера возьмём какое-то микросервисное решение, то можно спокойно мониторить весь путь запроса по сервисам, внедрив корреляционную айдишку.
4. Довольно простая интеграция
5. Норм документация

Для девопса тоже приятные штуки, в т. ч. гибкие настройки прав и доступов.
UI настолько удобен, что логи запросто сможет мониторить нетехнический человек.

Опять-таки, как подмечали выше, всё упирается в ресурсы, масштабы, архитектуру и целесообразность.
На сложный нагруженный проект с микросервисами, контейнерами, эластиком, MQ — Graylog зайдёт на ура. Желательно, с толковым девопсом 🙃
Вариантов для систем попроще огромное количество. Но, как говорится, я просто оставлю это здесь, вдруг кому-то пригодится.. :)
Спасибо большое!
источник

IK

Igor Kurkov in Public | Kottans
Андрей Конончук
А для логов лучше использовать базу данных или обычный файл? Или все зависит от задач?
Не являюсь экспертом, мое мнение сильно субъективно. Хорошие идеи уже тут есть, но все же: У меня было такое тоже, когда стало 300к файлов(1к+ юзеров), было грустно и тяжко искать) проще в базу кидать, монгу, или постгрес/мскул, без aws любой шаред хостинг за 1$/мес дает возможность сделать мускул базу в 10гб пока не упрёшься в лимиты выделенного винта, потом удаленно подключился, в датагрипе выбрать то что нужно, дату, тип логов, и смотреть, с датагрипом админка не нужна. но это все "колхозные" решения, конечно, лучше использовать готовые солюшены для логгинга, тут их уже предостаточно. Просто чтото платное, или другой сетап, что-то требует солидной поддержки, или жрёт ресурсы, или много времени на развёртывание, все упирается в вопрос необходимости и выделяемые на задачу ресурсы. По бырику вариантов масса, по кошерному - ещё больше))
источник

IK

Igor Kurkov in Public | Kottans
Это скорее как итерации, файлы - как ишилиал, база на монге - как костыль для микропроекта, дальше готовые решения, каждое как просто соотношение размера проекта и возможностей бизнеса выделять на сапорт денег. Гдетт выше saas для ентерпрайзов, aws клауд решения, кастомные для финтеха и проч.
источник

АК

Андрей Конончук... in Public | Kottans
Igor Kurkov
Это скорее как итерации, файлы - как ишилиал, база на монге - как костыль для микропроекта, дальше готовые решения, каждое как просто соотношение размера проекта и возможностей бизнеса выделять на сапорт денег. Гдетт выше saas для ентерпрайзов, aws клауд решения, кастомные для финтеха и проч.
А Вы довольно сильно разбираетесь во всем этом, у меня то уже голова лопаеться)) но ничего методом тыка тоже нащупаю свой вариант. Благо проектик не большой
источник

Дп

Джон простоДжон... in Public | Kottans
EvgenyB
Можно в монгодб  - быстро и бесплатно.
"бесплатно" баз не бывает 🙂
источник