DEV_EASY_NOTES Telegram 427
Когда смотришь, как сделаны логи в других системах, понимаешь, насколько круто реализованы логи в Java. Вот смотрите, основная проблема: у тебя есть какая-то библиотека, в которой есть логи. Есть два варианта, как их делать: забить и просто всегда выводить в консоль, либо ты каким-то образом предоставляешь клиенту возможность использовать свой логер.

В мире бэкенд-разработки на Java, разработчики сели, подумали и решили: а давайте сделаем общий интерфейс логов, на который все будут завязаны, и чтобы была возможность в runtime подставить реализацию, удобную клиенту. Так появился SLF4J. Поэтому все библиотеки для Java завязываются на SLF4J, и если у вас в проекте уже настроен логгер, он автоматически будет работать с этой библиотекой – весьма удобно.

В мире Android все либо используют Timber (или какой-то мультиплатформенный аналог), либо делают что-то свое. Библиотеки в основном предоставляют какой-то интерфейс для логов, например, Interceptor в OkHttp. Общего решения может и нет, но жить можно.

Однако в мире js все гораздо забавнее. Я делал сервис с использованием Next.js. Эти ребята вообще не заморачиваются с логированием, они просто выводят все в консоль. Нет никаких стандартных инструментов, чтобы это исправить. Что если мне нужно не в консоль, а в файл? Что если мне нужен особый формат? Вообще похую.

Решается это интересным способом. Так как JavaScript весь из себя такой гибкий, можно просто переопределить стандартную функцию вызова консоли на свою функцию, в которой мы уже вызываем нормальный логгер.

Ох уж эти фронтендеры, казалось бы, простая вещь, которая уже решена, но даже тут возникают сложности.
🗿22😁7👍52🔥1🤔1



tgoop.com/dev_easy_notes/427
Create:
Last Update:

Когда смотришь, как сделаны логи в других системах, понимаешь, насколько круто реализованы логи в Java. Вот смотрите, основная проблема: у тебя есть какая-то библиотека, в которой есть логи. Есть два варианта, как их делать: забить и просто всегда выводить в консоль, либо ты каким-то образом предоставляешь клиенту возможность использовать свой логер.

В мире бэкенд-разработки на Java, разработчики сели, подумали и решили: а давайте сделаем общий интерфейс логов, на который все будут завязаны, и чтобы была возможность в runtime подставить реализацию, удобную клиенту. Так появился SLF4J. Поэтому все библиотеки для Java завязываются на SLF4J, и если у вас в проекте уже настроен логгер, он автоматически будет работать с этой библиотекой – весьма удобно.

В мире Android все либо используют Timber (или какой-то мультиплатформенный аналог), либо делают что-то свое. Библиотеки в основном предоставляют какой-то интерфейс для логов, например, Interceptor в OkHttp. Общего решения может и нет, но жить можно.

Однако в мире js все гораздо забавнее. Я делал сервис с использованием Next.js. Эти ребята вообще не заморачиваются с логированием, они просто выводят все в консоль. Нет никаких стандартных инструментов, чтобы это исправить. Что если мне нужно не в консоль, а в файл? Что если мне нужен особый формат? Вообще похую.

Решается это интересным способом. Так как JavaScript весь из себя такой гибкий, можно просто переопределить стандартную функцию вызова консоли на свою функцию, в которой мы уже вызываем нормальный логгер.

Ох уж эти фронтендеры, казалось бы, простая вещь, которая уже решена, но даже тут возникают сложности.

BY Dev Easy Notes




Share with your friend now:
tgoop.com/dev_easy_notes/427

View MORE
Open in Telegram


Telegram News

Date: |

Healing through screaming therapy The administrator of a telegram group, "Suck Channel," was sentenced to six years and six months in prison for seven counts of incitement yesterday. Ng, who had pleaded not guilty to all charges, had been detained for more than 20 months. His channel was said to have contained around 120 messages and photos that incited others to vandalise pro-government shops and commit criminal damage targeting police stations. Select: Settings – Manage Channel – Administrators – Add administrator. From your list of subscribers, select the correct user. A new window will appear on the screen. Check the rights you’re willing to give to your administrator. Ng Man-ho, a 27-year-old computer technician, was convicted last month of seven counts of incitement charges after he made use of the 100,000-member Chinese-language channel that he runs and manages to post "seditious messages," which had been shut down since August 2020.
from us


Telegram Dev Easy Notes
FROM American