Спасибо за столь ясную и простую на восприятие подачу информации. Разъяснили все моменты, что недопонял при изучении самим. Который раз убеждаюсь, что ваш канал - один из самых приятных для прослушивания и полезный на тему IT. Всех благ!
Каждое видео в яблочко, вы у меня первый в рекомендациях! Работаю в строительной компании, постоянно применяю что вы говорите. Я один программист, до меня у них собственных it сервисов не было)
Спасибо)) теперь основы стали ясны))) а то когда пытался сам разобраться, то было всё как-то запутанно и ничего понять не мог и всё время откладывал это на потом))) Погнал документацию читать)))
Самое полезное в работе с логами, когда они перенаправляются (с помощью хэндлеров) куда-нибудь в Graylog+Grafana или ELK. Где настроены дашборды, метрики, уведомления и т.д. Чувствуешь себя в дашборде, как в рубке космического корабля. А работать с (большими) логами в файлах -- это пытка обычно.
Я Error использую, когда случилась единичная ошибка ( у пользователя что-нибудь пошло не так), а Critical - когда произошла ошибка, которая приводит к тому, что у всех пользователей что-то не будет работать (отвалилась БД, не читается важный файл)
Спасибо! Было бы ещё супер посмотреть, как правильно подключать отправку на емеил, а если точнее - подключать некие функций при возникновении ошибки. Тот самый пример - отвалилась БД, как сразу отправить емеил?) Спасибо ещё раз)
Супер! Спасибо за полезное видео. Всегда, когда сомневаюсь, а является ли это бест практис или нет, смотрю ваши видосы, учитывая что вы практик, я уверенно юзаю вещи, так как вы показываете(естесственно дальше изучая самостоятельно, что то может чуть по другому, но крепкую базу часто беру от ваших видео)🙂
Есть ещё такая классная штука как sentry. Ловит исключения, сохраняя весь контекст в момент падения, вплоть до значения переменных. Отображает это все в удобном виде, со статистикой (сколько такая ошибка повторялась, например). Спасибо за видео)
Спасибо! Как насчет небольшого видоса по DRF? Работа со сторонними api в джанго. Первое что пришло в голову - ютуб статистика, берем json, закидываем в бд. Ну и в докер это все завернуть, чтобы совсем все классно
Есть вопрос, а в каком месте во views.py происходит подвязка настроек логгера из settings.py? Если я правильно понял из документации нужно в каждом модуле вставлять две строчки: logging.config.dictConfig(settings.LOGGING) logger = logging.getLogger("__name__") ?
И еще вопрос, а чем вы сами пользуетесь loguru или logging? и почему, правильно понимаю что файл настроек в logging одновременно и минус, если он через чур большой и одновременно и плюс, так как настройки логирования для всего проекта находятся в одном месте?
Иии еще вопрос) Если мы запускаем сервер непосредственно то в __name__ будет хранится __main__ и тогда нужно добавить в словарь LOGGING 'loggers': '__main__'? Или не нужно запускать сервер непосредственно
Великолепно! Вопрос к ведущему, чем вы будете зарабатывать на жизнь при полном отсутствии электричества, ну когда все вырубится и по улицам будут ходить с ножами злые люди?
Что думаешь по разделению ошибок Error / critical на уровень операции приложения. То есть критикал - ошибка, которая с большой вероятностью влияет на все приложение целиком, а еррор - ошибка, которая влияет на конкретную сущность из множества (сессия, пользователь) Например, предоставление сессионной куки, которая не найдена в хранилище сессий это варнинг, ошибка разбора данных конкретной записи в базе - еррор, Ошибка подключения к базе - критикал
Алексей, отличное видео, спасибо вам! Не могли ли бы вы ответить на вопрос. Бывают ли ситуации, когда логи стоит писать в проекте сразу? Могут ли такие системы, как сентри, заменить логирование?
@@t0digital отлично, было бы шикарно если бы рассказали о том как поднять проект в контейнерах вместе с фронтендом и базой и реверс прокси и все это красиво соединить, но тут уже конечно пахнет платным материалом, может стоит включить в ваш курс)
в файле mailings/views.py, переменная __name__ = 'mailings.views', логгер называется mailings, каким образом logging понимает какой логгер вернуть из getLogger(__name__)?
Привет! Вот так бусти:( Напишите свой email мне на alexey@salesbeat.pro, давайте писать им в поддержку выяснять. Похоже, надо уходить с бусти, если такие проблемы
@@t0digital Похоже надо было сойтись звёздам, что без слова Автора ничего хорошего не происходило. Найдена сохранённая страница, через подключение к каналу Telegram. Только что отписался. Если ответят на запрос - расскажу где у них не то с интерфейсом для новых пользователей. Подписку на видео не проверял, ну да я думаю справлюсь. Ответил в Telegram об успехе.
Алексей! В одном из Ваших роликов была информация, что очередной набор на Ваши платные курсы будет проводиться до конца июня 2023 года. Я спрашивал у Вас, когда конкретно. На этот вопрос Вы ответили, что это зависит от того сколько слушателей всего Вы будете набирать на свой курс. И вот уже подходит конец июня 2023 года. У Вас ситуация прояснилась? Оно мне не к спеху, но я боюсь пропустить набор. Поясните всё подробнее. Тут вылез какой-то абстракный ник в моём комменте. Что это за абракадабра, я не знаю.система сама шифрует, как ей вздумается. Мой ник Алекс Лин.
информация прояснилась - до конца июня точно набора не будет, уже вероятно в июле. Как только курс запустится, будет информация и здесь в ютубе (если канал не удалят по какой-то причине) и в Telegram. Рекомендую вам подписаться в Telegram или в VK, чтобы не пропустить: t.me/t0digital vk.com/digitalize.team
@@t0digital подключить их к какой нибудь централизации, Sentry, ELK, пока еще не знаю точно как правильно, но по JSON'у' же проще поиск настроить, подскажи как правильнее и проще плиз
Нужно видео про паттерны проектирования использованные в django)
Спасибо за столь ясную и простую на восприятие подачу информации. Разъяснили все моменты, что недопонял при изучении самим. Который раз убеждаюсь, что ваш канал - один из самых приятных для прослушивания и полезный на тему IT. Всех благ!
Алексей, как насчёт стрима с созданием небольшого проекта на Джанго? Очень хочется посмотреть как вы это делаете)
Возможно. Нет идей, что написать по-быстрому, чтобы за стрим уложиться
Какую нибуть классику типа мини-твиттера. Количество функций - как получится, что можно успеть за какое-то разумное время.
@@t0digital Сокращатель ссылок. Либо блог можно
@@forward672 блог совсем грустно, есть же официальная дока с блогом. Твиттер и туду листы тоже уже грустно)
@@t0digital Та что нибудь полезное снимайте, лайки не глядя ставим. Вы очень крутой!
Каждое видео в яблочко, вы у меня первый в рекомендациях! Работаю в строительной компании, постоянно применяю что вы говорите.
Я один программист, до меня у них собственных it сервисов не было)
Отличное место, чтобы набраться опыта!
Логирование SQL запросов в консоль
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'handlers': {
'console': {
'class': 'logging.StreamHandler',
},
},
'loggers': {
'django.db.backends': {
'level': 'DEBUG',
'handlers': ['console'],
},
},
}
сяб=)
Спасибо за качественный контент. Ваши видео сильно мотивируют развиваться в программировании и все больше погружаться в Python.
Рад, что полезно!
Спасибо)) теперь основы стали ясны))) а то когда пытался сам разобраться, то было всё как-то запутанно и ничего понять не мог и всё время откладывал это на потом)))
Погнал документацию читать)))
Да, логинг постоянно откладывается на потом, такое часто вижу:)
Больше, больше таких классных видео!
Спасибо! Тут уже пишут, что передоз, слишком часто:)
@@t0digital отличный темп, как по мне ))
новая студия, картинка, звук, контент - кайф)
Спасибооо🙏
обьясняешь очень классно, в watch later пол видосов твои. с удовольствием смотрю все.
Ёхо-хо...супер, спасибо!!! Очень нужная тема!
Спасибо 🙏
1000 благодарностей!
🙏
Супер! Очень понятно и полезно! Алексей, запили пожалуйста видос про кэширование в Джанго. Использование редис и вот это все.
Самое полезное в работе с логами, когда они перенаправляются (с помощью хэндлеров) куда-нибудь в Graylog+Grafana или ELK. Где настроены дашборды, метрики, уведомления и т.д. Чувствуешь себя в дашборде, как в рубке космического корабля. А работать с (большими) логами в файлах -- это пытка обычно.
Да, согласен. Как-нибудь может сделаю материал по графане тоже
Ура,спасибо,жду с надежной про кеширование))))
Крутяк! Большое спасибо!
Наконец-то я дождался этого видео)
Да:)!
Спасибо! То, что я искал! Продолжайте в том же духе!
Смотрю уже какое видео и впечатляюсь как настроен vim, просто красота!
Есть ли какой-то гайд? Или howto?
Спасибо за информацию по логгированию, самое время переписать свои костыли :)
Я Error использую, когда случилась единичная ошибка ( у пользователя что-нибудь пошло не так), а Critical - когда произошла ошибка, которая приводит к тому, что у всех пользователей что-то не будет работать (отвалилась БД, не читается важный файл)
Кстати да, отличный подход
Близко, но не совсем.
Спасибо! Было бы ещё супер посмотреть, как правильно подключать отправку на емеил, а если точнее - подключать некие функций при возникновении ошибки.
Тот самый пример - отвалилась БД, как сразу отправить емеил?)
Спасибо ещё раз)
Шпасиба, круто, особенно идея с логированием sql запросов, побегу тестить=)
Спасибо, очередная годнота! Отличная дикция и подход!
Супер! Спасибо за полезное видео. Всегда, когда сомневаюсь, а является ли это бест практис или нет, смотрю ваши видосы, учитывая что вы практик, я уверенно юзаю вещи, так как вы показываете(естесственно дальше изучая самостоятельно, что то может чуть по другому, но крепкую базу часто беру от ваших видео)🙂
Отличное видео! Спасибо, что объясняете все доступным и понятным языком)
Рад, что полезно, спасибо!
про rest framework ещё что-нибудь бы хотелось
Планирую такой материал, но не уверен, что скоро
Error - произошла ошибка, можно продолжить работу (не операцию).
Critical - продолжать нельзя. Например, в плохо написанной системе отвалилась база.
Спасибо! Очень полезно!
Есть ещё такая классная штука как sentry. Ловит исключения, сохраняя весь контекст в момент падения, вплоть до значения переменных. Отображает это все в удобном виде, со статистикой (сколько такая ошибка повторялась, например). Спасибо за видео)
Спасибо! Да, про sentry планирую тоже записать видео:)
Годнота!
Уровни логирования на примере котиков:
Debug - направление: миска. Проверка: миска. Еда присутствует.
Info - еды в миске осталось 43%
Warning - открой дверь! Впусти!!1!!!
Error - тебе отказано в праве помыть меня. Да не полезу я, блин, в ванную!
Critical - ОГУРЕЦ
Ещё про кеширование было бы вообще огонь )
Спасибо, супер!!!
как всегда видео на высоте, автору дикий +rep
@@ЕгорТупикин-л6ъ спасибооо!
Класс, классный контент
🙏
Спасибо! Как насчет небольшого видоса по DRF? Работа со сторонними api в джанго. Первое что пришло в голову - ютуб статистика, берем json, закидываем в бд. Ну и в докер это все завернуть, чтобы совсем все классно
по DRF планируется материал
как я понимаю если в любой вью функции можно просто написать logger.error() и это будет записано в лог файл даже если там не будет ошибки
Сделай пожалуйста ролик ,что нужно изучить новичку,чтобы начать зарабатывать на пайтоне или устроиться на работу или на стажировку.
это обычно в тексте вакансий написано. можно ещё десяток тестовых собеседований походить, чисто посмотреть что спрашивать будут
Есть вопрос, а в каком месте во views.py происходит подвязка настроек логгера из settings.py?
Если я правильно понял из документации нужно в каждом модуле вставлять две строчки:
logging.config.dictConfig(settings.LOGGING)
logger = logging.getLogger("__name__") ?
И еще вопрос, а чем вы сами пользуетесь loguru или logging? и почему, правильно понимаю что файл настроек в logging одновременно и минус, если он через чур большой и одновременно и плюс, так как настройки логирования для всего проекта находятся в одном месте?
Иии еще вопрос) Если мы запускаем сервер непосредственно то в __name__ будет хранится __main__ и тогда нужно добавить в словарь LOGGING 'loggers': '__main__'? Или не нужно запускать сервер непосредственно
Великолепно! Вопрос к ведущему, чем вы будете зарабатывать на жизнь при полном отсутствии электричества, ну когда все вырубится и по улицам будут ходить с ножами злые люди?
Придётся ходить отбирать ножи у злых людей, а то чо они)
Отлично. Очень интересно. Как всегда на высоте. Только нет привета котанам :(
Котаны все на месте, это главное:)!
Пожалуйста сделайте видос про websocet и каналы в джанге
Что думаешь по разделению ошибок Error / critical на уровень операции приложения. То есть критикал - ошибка, которая с большой вероятностью влияет на все приложение целиком, а еррор - ошибка, которая влияет на конкретную сущность из множества (сессия, пользователь)
Например, предоставление сессионной куки, которая не найдена в хранилище сессий это варнинг, ошибка разбора данных конкретной записи в базе - еррор,
Ошибка подключения к базе - критикал
Спасибо
ограмющее спасибо!!!! ты спас мою психику!!!!!!!!!!!!!!!!!!!!
неожиданный результат:)!
А есть ли в логгере log rotate настроенный по умолчанию или его надо конфигурировать?
Есть. Можете loguru еще посмотреть, более простой (возможно) в настройке
Алексей, отличное видео, спасибо вам! Не могли ли бы вы ответить на вопрос. Бывают ли ситуации, когда логи стоит писать в проекте сразу? Могут ли такие системы, как сентри, заменить логирование?
Логирование лучше делать сразу, да. Sentry по отзывам хорошая штука, сделаю по нему видео, думаю
@@t0digital Спасибо огромное, что отвечаете! Вы делаете крутой и полезный контент.
Здравствуйте, спасибо за то что вы делаете, планируете ли материал про докер, ci/cd и прочие девопс приколюхи?
Спасибо🙏 Да, планирую
@@t0digital отлично, было бы шикарно если бы рассказали о том как поднять проект в контейнерах вместе с фронтендом и базой и реверс прокси и все это красиво соединить, но тут уже конечно пахнет платным материалом, может стоит включить в ваш курс)
Все круто! А как насчет легирования в python ? там я так понимаю formatters, handlers нет ? или как их использовать?
Это всё есть в самом питоне - docs.python.org/3/library/logging.html
в файле mailings/views.py, переменная __name__ = 'mailings.views', логгер называется mailings, каким образом logging понимает какой логгер вернуть из getLogger(__name__)?
__name__ это наименование модуля, а не файла
вечер добрый, как я понял это тоже самое что тесты? и чем отличается?)
логирование это не тесты
Алексей привет! Замечательный канал! Проблема: Boosty оплачена 10 июля подписка 2+к, ни раннего доступа, ни телеграмм канала нет.
Привет! Вот так бусти:( Напишите свой email мне на alexey@salesbeat.pro, давайте писать им в поддержку выяснять. Похоже, надо уходить с бусти, если такие проблемы
@@t0digital Похоже надо было сойтись звёздам, что без слова Автора ничего хорошего не происходило. Найдена сохранённая страница, через подключение к каналу Telegram. Только что отписался. Если ответят на запрос - расскажу где у них не то с интерфейсом для новых пользователей. Подписку на видео не проверял, ну да я думаю справлюсь. Ответил в Telegram об успехе.
Передозировка хорошего контента! 😂
А когда будет стрим? По курсу
Будет оповещение в новостях на канале
Алексей! В одном из Ваших роликов была информация, что очередной набор на Ваши платные курсы будет проводиться до конца июня 2023 года. Я спрашивал у Вас, когда конкретно. На этот вопрос Вы ответили, что это зависит от того сколько слушателей всего Вы будете набирать на свой курс. И вот уже подходит конец июня 2023 года. У Вас ситуация прояснилась? Оно мне не к спеху, но я боюсь пропустить набор. Поясните всё подробнее. Тут вылез какой-то абстракный ник в моём комменте. Что это за абракадабра, я не знаю.система сама шифрует, как ей вздумается. Мой ник Алекс Лин.
информация прояснилась - до конца июня точно набора не будет, уже вероятно в июле. Как только курс запустится, будет информация и здесь в ютубе (если канал не удалят по какой-то причине) и в Telegram. Рекомендую вам подписаться в Telegram или в VK, чтобы не пропустить:
t.me/t0digital
vk.com/digitalize.team
Расскажи про деплой Django приложения на продакшн, чтоб все секурно было
про деплой есть видео на канале
@@t0digital Извиняйте, не заметил)
Ооостааанооовитесь, я не успеваю смотреть видео😄
Што поделать, што поделать:)!
хотелось бы узнать как эти логи в json оформить
зачем?
@@t0digital подключить их к какой нибудь централизации, Sentry, ELK, пока еще не знаю точно как правильно, но по JSON'у' же проще поиск настроить, подскажи как правильнее и проще плиз
docs.python.org/3/howto/logging-cookbook.html
см Implementing structured logging
что скажешь о Sentry?
Будет отдельное видео по Sentry
Положить систему профессионально))! Это они могут.
А если не __name___?
Здравствуйте дорогие друзья?)) А как же котаны?
Главное, что все котаны на месте:)!
Мне больше понравился твой часы),
Спасибо, мне тоже нравятся:) Ракета
Критичные ошибки - это те ошибки, которые кладут программу на лопатки?
Сложно понять, что такое положить систему на лопатки, error тоже в общем приводит к нерабочему функционалу
Горшочек не вари :)
print великолепный способ логирования и не надо ля-ля
Похоже пора переименовать канал в «Ля-ля о разработке»!
Включать и выключать print очень легко: "заменить все" print( на #print(
И наоборот.
в тысячах мест по всему проекту и засорять этим коммиты, отл идея
@@t0digital Моё дело предложить ;)
А как же котаны(
Котаны все на месте, это главное:)!
print(111)
print('func_example !!!')
Классика жанра:)
loguru - бест
забавная штука, спасибо!
Диджитализируй! Спасибо, что видео сделал по ней, мне приятно, что я посоветовал, и тут бам, видасик вышел😂
астановитесь хватит контента слишком часто
Нельзя вот так вот взять и перестать пилить видосы!
@@t0digital Слишком много выходит контента. Я не успеваю посмотреть даже