170 похожих чатов

А как решается проблема, что в тестах срабатывает логгер и

в консоль сыпет сообщения? Или это не считают проблемой?

22 ответов

31 просмотр

а почему это проблема?

Daniel Podolsky
а почему это проблема?

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

кладешь test logger в контекст, и проблемы нет

Александр Костюченко
должен, но не всегда так бывает

А когда не бывает, логи как раз могут помочь понять, почему он не зеленый

Artem (☞゚ヮ゚)☞ Bortnikov
А когда не бывает, логи как раз могут помочь понят...

в тестах немного другой механизм сообщения о том, почему он провалился)

Александр Костюченко
имхо, много по сути не нужных для тестах сообщений...

Так и при пробросе через контекст можно передавать в контекст логгер, который пишет в никуда или в тестовый буффер

Илья О
кладешь test logger в контекст, и проблемы нет

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

Anton Kachurin
Так и при пробросе через контекст можно передавать...

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

Александр Костюченко
да, можно, как по мне это лишние дополнительные де...

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

Artur Karapetov
именно. контекст это средства управления логером,...

А можешь объяснить? Ну вот логируешь ты ошибки как Error. Зачем тут менять уровень на другой в рантайме?

Rostislav Teryaev
А можешь объяснить? Ну вот логируешь ты ошибки ка...

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

Rostislav Teryaev
А можешь объяснить? Ну вот логируешь ты ошибки ка...

Если прод высоконагоуженный, то ты всякие инфо не легируешь уже

Rostislav Teryaev
А можешь объяснить? Ну вот логируешь ты ошибки ка...

ну вот вызываешь ты метод /api/jobIsDone?user_id=123 и он делает не так как ты хочешь. и не понятно почему. пошел и вызвал его с уровнем логирования трейс в заголовке, получил тонну данных для анализа проблемы.

Artur Karapetov
ну вот вызываешь ты метод /api/jobIsDone?user_id=1...

я возможно логирую как-то по-другому. Ты же в коде пишешь logger.Info(123) как у этого менять уровень?

Vadim
Речь о log level.

ну Info - это log level

Мок или забить

Можно логгеру дать io.Discard

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
1
Он в одиночку это дело запилил или была какая-то команда?
Aquinary
12
~ 2m21s  nix shell github:nixos/nixpkgs#stack ~  stack ghc -- --version error: … while calling the 'derivationStrict' builtin at /builtin/derivation.nix:...
Rebuild your mind.
6
Всем привет, нужна как никогда, нужна помощь с IO в загрузчике. Пишу в code16 после установки сегментных регистров, пишу вывод символа. Пробовал 2 варианта: # 1 mov $0x0E, %a...
Shadow Akira
14
Карта сайта