😁2
На работе прилетело несколько интересных задач. Сегодня поделюсь одной из них.
Саппорт (функциональное сопровождение) прода пришел с жалобой на то, что алертинг, настроенный на логи, не может нормально работать. Причина простая: у большинства документов в Elasticsearch (ES), который мы используем как хранилище логов, по одной и той же ошибке (один и тот же
Почему так происходит? В полене😃 происходит группировка сообщений с последующим не😃 срабатыванием настроенных алертов. С причиной разобрались: сообщения разные, а значит в одну группу они не попадут.
Важно отметить еще один неприятный побочный эффект. Если посмотреть на то, как работает ES, то, очевидно, мы получаем распухшие индексы и медленные агрегации.
Как решить проблему? Убрать лишнее из
Раз уж придется лезть в эту историю, то как будто хочется заиметь еще одно поле, которое будет отвечать за категорию (идентификатор) проблемы. Каждая категория — отдельный код. Мы заранее составляем справочник таких кодов и в логах используем их. Один и тот же код может использоваться сразу во многих местах для однотипных ситуаций. Кажется, что это должно быть удобно как для алертинга, так и для анализа, в т. ч. построения дашбордов. Надо подумать🎹
Саппорт (функциональное сопровождение) прода пришел с жалобой на то, что алертинг, настроенный на логи, не может нормально работать. Причина простая: у большинства документов в Elasticsearch (ES), который мы используем как хранилище логов, по одной и той же ошибке (один и тот же
logger.error(...) в коде) разное значение поля message.Почему так происходит? В поле
message кроме непосредственно описания происходящего мы часто фиксируем уникальные идентификаторы / параметры / свойства (и т.п.) важные для последующего анализа. И именно по этому полю Важно отметить еще один неприятный побочный эффект. Если посмотреть на то, как работает ES, то, очевидно, мы получаем распухшие индексы и медленные агрегации.
Как решить проблему? Убрать лишнее из
message. Совсем? Потеряем в информативности. Тогда вынесем "лишнее" в отдельное новое поле документа по аналогии с тем, как это делают с userId и traceId и другими. Как его назвать? Мне пока нравится универсальное context, так как содержимое от лога к логу в среднем будет абсолютно разное.Раз уж придется лезть в эту историю, то как будто хочется заиметь еще одно поле, которое будет отвечать за категорию (идентификатор) проблемы. Каждая категория — отдельный код. Мы заранее составляем справочник таких кодов и в логах используем их. Один и тот же код может использоваться сразу во многих местах для однотипных ситуаций. Кажется, что это должно быть удобно как для алертинга, так и для анализа, в т. ч. построения дашбордов. Надо подумать
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥2
Соскучились? Я тоже 👋
Только вернулся с тура по Байкалу! Отпраздновали день рождения и проводили на топовую позицию в международной компании нашего дорогого друга!
Красивая, вкусная и насыщенная на эмоции поездка. Мы ни в чём себе не отказывали и за неделю уложились в скромные ~250 т.р. на человека с учётом проживания и дороги😕
А ещё нам два раза несказанно повезло!
Мы не утонули. В последние дни было особенно тепло и лёд активно расходился. К сожалению, одна буханка с группой китайских туристов ушла на дно озера.
Не пересеклись с Шаманом. Без комментариев.
Всем прекрасных длинных выходных!
Только вернулся с тура по Байкалу! Отпраздновали день рождения и проводили на топовую позицию в международной компании нашего дорогого друга!
Красивая, вкусная и насыщенная на эмоции поездка. Мы ни в чём себе не отказывали и за неделю уложились в скромные ~250 т.р. на человека с учётом проживания и дороги
А ещё нам два раза несказанно повезло!
Мы не утонули. В последние дни было особенно тепло и лёд активно расходился. К сожалению, одна буханка с группой китайских туристов ушла на дно озера.
Не пересеклись с Шаманом. Без комментариев.
Всем прекрасных длинных выходных!
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6❤5👍2
Всё! Больше никаких Merge Request! Как собственно и Pull Request... Шутка! Пока что...
Давече прочитал уморительную статью "Законъ о запрете иностранных словъ… в разработке". Причиной появления оной послужила новость:
Ну как будто в рознице все уже и так давно его соблюдают. А что делать нам, айтишникам, если разработку тоже русифицируют?
Предлагаю план из двух пунктов:
1. начать активно читать переведенные иностранные издания (для меня они абсолютно нечитабельные, вспомнить хотя бы Java Concurrency In Practice под авторством Brian Goetz)
2. запастись словарём иностранных слов. Почему им? Читай нормативы!
А знаете, что-то в этом есть. Не грубое legacy, анациональное достояние культурное наследие 😃 .
Давече прочитал уморительную статью "Законъ о запрете иностранных словъ… в разработке". Причиной появления оной послужила новость:
С 1 марта 2026 вся публичная информация для потребителя должна быть на русском — № 168-ФЗ.
Ну как будто в рознице все уже и так давно его соблюдают. А что делать нам, айтишникам, если разработку тоже русифицируют?
Предлагаю план из двух пунктов:
1. начать активно читать переведенные иностранные издания (для меня они абсолютно нечитабельные, вспомнить хотя бы Java Concurrency In Practice под авторством Brian Goetz)
2. запастись словарём иностранных слов. Почему им? Читай нормативы!
А знаете, что-то в этом есть. Не грубое legacy, а
Please open Telegram to view this post
VIEW IN TELEGRAM
😁5
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3😁3