@ru_devops

Страница 353 из 999
Vitaliy
09.08.2017
12:39:14
вариантов не много. npe = «что-то где-то сломалось»

Aleserche
09.08.2017
12:39:40
ну не совсем строчк, там стектрейс такой красивый с подстановками и все такое

Vitaliy
09.08.2017
12:40:28
ну стектрейс, и что? Реальный источник ошибки не в нём

Google
Марк ☢
09.08.2017
17:59:38
Типа аффтар сказал что это чтобы не засирать логи строчка логируется с маленькой вероятностью

Эпичнейший срач в гитхабе был

Чювак не понимал почему такое нельзя делать

Vladimir
09.08.2017
18:11:31
Это называется семплирование

Dmitrii
09.08.2017
18:46:00
Когда трафика дохера то есть смысл

(дохера == миллионы реквестов)

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

Марк ☢
09.08.2017
18:48:55
Это называется семплирование
Это задача рсислога жи. Или жюрналдэ

А не софта

Dmitrii
09.08.2017
18:50:48
Какая разница чья задача есть throughput в итоге такой что все пиздой накрывается?

Vladimir
09.08.2017
18:50:49
Если у софта очень жёсткие логи, то может быть и софта

Точнее это задача того кто это ваще может сделать

Журнал быстро дохнет от логов

Google
Vladimir
09.08.2017
18:51:38
Рсислог чуть позже

Но тоже можно убить его

Марк ☢
09.08.2017
18:52:35
И чем логировать тады ?

Sergey
09.08.2017
18:52:43
Марк ☢
09.08.2017
18:53:03
Тогда чем рсислог хуже ? Фсинк выключаешь у него и фперед

Sergey
09.08.2017
18:53:14
я может быть стар и немоден, но по прежнему считаю что софт должен логировать в файлы _сам_

Марк ☢
09.08.2017
18:53:34
here1am
09.08.2017
18:53:42
как по фэншую подсунуть какому-нибудь условному билдботу приватную репу гитхаба?

Марк ☢
09.08.2017
18:53:48
Управление фсинками ага

Sergey
09.08.2017
18:53:57
Не. Говно. Плохоуправлчемо. Ротация логов ага
да, логи в json, в systemd, в ядро их запихните, парсите на лету регулярками на руби

Марк ☢
09.08.2017
18:54:02
Перенаправление в сеть ага

Sergey
09.08.2017
18:54:42
Перенаправление в сеть ага
rsyslog вполне может читать файл, если тебе нужно все эти штуки делать

Sergey
09.08.2017
18:55:29
Штэ ?
если тебе надо отправлять лог в сеть, преобразовывать, складывать в кафку, потом еще куда-нибудь в реальном времени - вполне можно заставить rsyslog тейлить файл и делать все эти ништяки

Марк ☢
09.08.2017
18:55:54
Не. Логирование точно нужно централизовать в чото

И кода меньше и проще все

Vladimir
09.08.2017
18:56:44
Не. Логирование точно нужно централизовать в чото
Не дело софта уметь логировать во все что ни попадя

Марк ☢
09.08.2017
18:57:16
Не дело софта уметь логировать во все что ни попадя
Праильно. Поэтому надо поддерживать только сислог :) ну или щас модно журналдэ

Google
Sergey
09.08.2017
18:57:44
Марк ☢
09.08.2017
18:57:45
Или просто файлы
Просто файлы нихера не просто

Vladimir
09.08.2017
18:57:46
А там пусть то чем ты там пользуешься это в сеть шьет

Марк ☢
09.08.2017
18:57:59
Vladimir
09.08.2017
18:58:11
Просто файлы нихера не просто
Что будет если сислог сдох?

Sergey
09.08.2017
18:58:17
С юникссокетами то ?
с юникс-сокетами сислог-отправитель архитектурно приспособлен терять сообщения

Марк ☢
09.08.2017
18:58:30
Что будет если сислог сдох?
Потеря сообщений. А что если метеорит упал ?

Vladimir
09.08.2017
18:58:31
Что будет если ты в него шлешь столько данных, что ему поплохело?

Sergey
09.08.2017
18:58:34
с TCP-сокетами сислог-отправитель архитектурно приспособлен уметь в буферизацию, ретраи и т.п.

то есть задача нихуя не решена.

Vladimir
09.08.2017
18:59:00
Dmitrii
09.08.2017
18:59:12
А зачем вам гарантированая доставка для логов?

Марк ☢
09.08.2017
18:59:12
Что будет если ты в него шлешь столько данных, что ему поплохело?
А что будет если пишешь в файл так что фс поплохело ?

Dmitrii
09.08.2017
18:59:22
Это же не WAL для финансов

Марк ☢
09.08.2017
18:59:32
Vladimir
09.08.2017
18:59:34
А что будет если пишешь в файл так что фс поплохело ?
Забавно что это решить проще чем с сислогом

Sergey
09.08.2017
18:59:44
Это же не WAL для финансов
бывает, что это почти WAL для финансов

Vladimir
09.08.2017
18:59:51
Google
Vladimir
09.08.2017
19:00:06
Но вот чтоб сислог не вешал приложение - нужно

pl
09.08.2017
19:00:41
Вешает

Марк ☢
09.08.2017
19:00:43
С удп точно

Vladimir
09.08.2017
19:00:45
И как ?
Кроме ситуации совсем сдохшего железа оно тебе когда нибудь вернёт управление. А сислог может и не вернуть

Sergey
09.08.2017
19:00:47
Пример?
например когда я работал в поисковиках, логи пользователей (и расширенные логи ранжирования) были чуть ли не самым важным что можно было придумать. потеря 0.05% логов уже вызывала вопли со стороны статистики

Admin
ERROR: S client not available

Dmitrii
09.08.2017
19:01:26
Это задача приложения

Sergey
09.08.2017
19:01:30
Так такое надо писать в кафку стрим а не в лог
да, да. кафка тоже теряет сообщения.

теряла. хз как щас.

Vladimir
09.08.2017
19:01:51
теряла. хз как щас.
По определению она может терять данные

Dmitrii
09.08.2017
19:01:54
Ну слушай, кластер кафки уж явно поустойчивее будет

Sergey
09.08.2017
19:02:20
Ну слушай, кластер кафки уж явно поустойчивее будет
так он не падает. она просто проебывает маленькую порцию сообщений. молча.

Sergey
09.08.2017
19:02:26
и потом этих сообщений у тебя нет, вообще нигде.

Dmitrii
09.08.2017
19:02:55
и потом этих сообщений у тебя нет, вообще нигде.
Дык это же дизайн кафки — ивенты.

here1am
09.08.2017
19:02:58
С удп точно
видел как с SOCK_DGRAM вешало

Dmitrii
09.08.2017
19:03:07
Надо гарантию — кластер рэбита и так далее

Google
Марк ☢
09.08.2017
19:03:16
SIGALRM кароч. Вот что надо от любых зависаний же
Или писать в сокет с таймаутом через poll

Sergey
09.08.2017
19:03:18
писать файлы, ротировать и в момент ротации (или позже) аплоадить в хадуп/архивный сторадж по результатам выходило надежнее.

Dmitrii
09.08.2017
19:03:22
Правда там пошардить придется

Sergey
09.08.2017
19:03:25
Надо гарантию — кластер рэбита и так далее
слушай, это ты мне кафку предложил

Dmitrii
09.08.2017
19:03:42
Не кафкой едины

Sergey
09.08.2017
19:04:05
вариантов хватает, я не спорю

но разве это проблема именно приложения - встраиваться в пайплайны обработки событий? приложение должно уметь отправлять в кафку, в хуявку, в хадуп, в реббит, агрегировать это все и отправлять в графит?

IMHO, задача приложения просто выплюнуть все нужные данные туда, где те, кому интересно, могут их подобрать. и приложение должно сразу же забыть о данных после того как выплюнуло. файл, за которым смотрит кто-то другой подходит здесь отлично.

Dmitrii
09.08.2017
19:05:58
Ну вот например в рэбите можно было бы сбоку подсосаться через фанаут схему

Т.е. насирать можно в один фанаут а дальше раутингом все сделать

Sergey
09.08.2017
19:06:43
Посему файл то, епт
он локально, близко, примитивный рабочий интерфейс, не требует НИЧЕГО, кроме файловой системы.

Dmitrii
09.08.2017
19:07:00
Внутри рэббит сам тебе запилит копию сообщения а дальше делай топик и подписывайся на него. Надо гарантию — делай еще уровень через очереди.

Марк ☢
09.08.2017
19:07:09
Пермишшены

И прочая хуита

И да, в линупсе врайты зависают если пейджкеш переполнен

Sergey
09.08.2017
19:08:00
А ротация и фсинки ?
ротация необязательна даже, во многих кейсах можно тупо транкейтить файлы (если объемы единичных write'ов невелики)

Dmitrii
09.08.2017
19:08:42
@spuzirev у нас в конторе кластера рэббита вообще на разных материках находятся. Схема фанаутов, топиков и очередей для приложений на этой шине ханимает несколько страниц документации.

Страница 353 из 999