Нотификации в telegram о падении приложения, через графану
Это не анонсированная третья часть. Первые две здесь:
1. Подготовка Django приложения для локальной разработки и деплоя
2. Django приложение в докере. Логирование и мониторинг(тоже в докере)
Не анонсированная, потому что этот способ подходит для любого приложения с метриками через Prometheus, но как настраивать их для конкретного Django приложения можно посмотреть в предыдущих частях.
Для начала нужно создать telegram-бота, находим бота BotFather и создаем нового бота в нем с помощью команды /newbot, получаем токен вашего бота.
Теперь нужно получить ChatId. Для этого, напишите вашему новому боту сообщение, а затем откройте в браузере(желательно инкогнито, а еще лучше curl-ом) следующий адрес
https://api.telegram.org/bot<your_bot_token/getUpdates
Заменив <your_bot_tokenна токен вашего бота. В ответе вы получите json с информацией о последних сообщениях, отправленных вашему боту. В этом JSON найдите поле chat, которое будет содержать ваш id.
Значение поля id внутри объекта chat — это и есть ваш Chat ID.
Ну, основное позади.
Далее переходим в графану Home -> Alerting -> Contact points
Там у вас, если еще не было Contact points редактируем единственный существующий.
Вводим любое название и в поле Integration выбираем Telegram.
Там указываем BOT API Token и Chat ID полученные ранее, сохраняем.
Переходим в Alert rules в том же Alerting и создаем новое правило — New alert rule.
Тут мы подразумеваем, что у вас уже есть настроенный на приложение Prometheus, хотя бы из предыдущих шагов.
Итак, в первом поле вводим любое название правила. Ниже в А выбираем Prometheus, в Metric вводим up и в лэйблах выбираем приложение. Далее в B выбираем input A, Function — Min, Mode — Strict. В С(Threshold) выбираем Input — B, ниже IS BELOW — 1.
Читать: https://habr.com/ru/articles/845462/
#ru
@django_prog | Другие наши каналы
Это не анонсированная третья часть. Первые две здесь:
1. Подготовка Django приложения для локальной разработки и деплоя
2. Django приложение в докере. Логирование и мониторинг(тоже в докере)
Не анонсированная, потому что этот способ подходит для любого приложения с метриками через Prometheus, но как настраивать их для конкретного Django приложения можно посмотреть в предыдущих частях.
Для начала нужно создать telegram-бота, находим бота BotFather и создаем нового бота в нем с помощью команды /newbot, получаем токен вашего бота.
Теперь нужно получить ChatId. Для этого, напишите вашему новому боту сообщение, а затем откройте в браузере(желательно инкогнито, а еще лучше curl-ом) следующий адрес
https://api.telegram.org/bot<your_bot_token/getUpdates
Заменив <your_bot_tokenна токен вашего бота. В ответе вы получите json с информацией о последних сообщениях, отправленных вашему боту. В этом JSON найдите поле chat, которое будет содержать ваш id.
Значение поля id внутри объекта chat — это и есть ваш Chat ID.
Ну, основное позади.
Далее переходим в графану Home -> Alerting -> Contact points
Там у вас, если еще не было Contact points редактируем единственный существующий.
Вводим любое название и в поле Integration выбираем Telegram.
Там указываем BOT API Token и Chat ID полученные ранее, сохраняем.
Переходим в Alert rules в том же Alerting и создаем новое правило — New alert rule.
Тут мы подразумеваем, что у вас уже есть настроенный на приложение Prometheus, хотя бы из предыдущих шагов.
Итак, в первом поле вводим любое название правила. Ниже в А выбираем Prometheus, в Metric вводим up и в лэйблах выбираем приложение. Далее в B выбираем input A, Function — Min, Mode — Strict. В С(Threshold) выбираем Input — B, ниже IS BELOW — 1.
Читать: https://habr.com/ru/articles/845462/
#ru
@django_prog | Другие наши каналы
🚀 Преимущества Django в 2024 году
Django продолжает оставаться фаворитом среди веб-разработчиков благодаря своей полной функциональности, масштабируемости и безопасности. В 2024 году этот "все-в-одном" фреймворк активно обновляется, поддерживает современные инструменты и обладает мощным сообществом.
Подробности: https://codymohit.com/how-to-set-up-a-django-project-like-a-pro-in-2024
#en
@django_prog | Другие наши каналы
Django продолжает оставаться фаворитом среди веб-разработчиков благодаря своей полной функциональности, масштабируемости и безопасности. В 2024 году этот "все-в-одном" фреймворк активно обновляется, поддерживает современные инструменты и обладает мощным сообществом.
Подробности: https://codymohit.com/how-to-set-up-a-django-project-like-a-pro-in-2024
#en
@django_prog | Другие наши каналы
🔧 Улучшение Django логирования: кастомные фильтры 👨💻
Чувствуете, что стандартное логирование в Django вам не хватает? С помощью кастомных фильтров вы можете добавить в логи подробную информацию, такую как IP-адреса, браузеры и данные пользователей. Улучшите процесс отладки и станьте мастером логирования! Подробнее в статье.
Подробности: https://selftaughtdev.hashnode.dev/supercharge-your-django-logging-custom-filters-for-the-win
#en
@django_prog | Другие наши каналы
Чувствуете, что стандартное логирование в Django вам не хватает? С помощью кастомных фильтров вы можете добавить в логи подробную информацию, такую как IP-адреса, браузеры и данные пользователей. Улучшите процесс отладки и станьте мастером логирования! Подробнее в статье.
Подробности: https://selftaughtdev.hashnode.dev/supercharge-your-django-logging-custom-filters-for-the-win
#en
@django_prog | Другие наши каналы
Настройка Jenkins CI/CD для Django через GitHub
Подробное руководство описывает процесс создания CI/CD пайплайна с использованием Jenkins, GitHub и Docker для развёртывания Django приложения. Интеграция позволяет автоматически обновлять приложение при изменении кода в репозитории. Все шаги детально рассмотрены для безошибочного выполнения.
Подробности: https://amitabhdevops.hashnode.dev/jenkins-cicd-declarative-pipeline
#en
@django_prog | Другие наши каналы
Подробное руководство описывает процесс создания CI/CD пайплайна с использованием Jenkins, GitHub и Docker для развёртывания Django приложения. Интеграция позволяет автоматически обновлять приложение при изменении кода в репозитории. Все шаги детально рассмотрены для безошибочного выполнения.
Подробности: https://amitabhdevops.hashnode.dev/jenkins-cicd-declarative-pipeline
#en
@django_prog | Другие наши каналы
От REST к GraphQL: эволюция управления данными в Wagtail
В системах управления контентом (или CMS) часто приходится работать с огромными и постоянно меняющимися массивами данных. Так что оптимизация производительности уже не роскошь, а необходимость.
Привет! Я Олег, Python-разработчик в Kokoc Group, и сегодня расскажу, как ускорить работу с данными в CMS Wagtail и сделать разработку проще и приятнее с помощью GraphQL и Graphene. В статье разберу реальные примеры и покажу процесс настройки конкретной системы.
Читать: https://habr.com/ru/companies/kokocgroup/articles/845690/
#ru
@django_prog | Другие наши каналы
В системах управления контентом (или CMS) часто приходится работать с огромными и постоянно меняющимися массивами данных. Так что оптимизация производительности уже не роскошь, а необходимость.
Привет! Я Олег, Python-разработчик в Kokoc Group, и сегодня расскажу, как ускорить работу с данными в CMS Wagtail и сделать разработку проще и приятнее с помощью GraphQL и Graphene. В статье разберу реальные примеры и покажу процесс настройки конкретной системы.
Читать: https://habr.com/ru/companies/kokocgroup/articles/845690/
#ru
@django_prog | Другие наши каналы
Уроки безопасности платежей в Django: случай HabariPay
Недавний инцидент с HabariPay показал важность защиты платежных систем от атак. Хакеры использовали "гонку условий," чтобы провести несанкционированные транзакции на 1.1 млрд Наир. Статья обсуждает методы предотвращения таких уязвимостей в Django.
Подробности: https://afeez1131.hashnode.dev/django-payment-security-lessons-from-habaripays-incident
#en
@django_prog | Другие наши каналы
Недавний инцидент с HabariPay показал важность защиты платежных систем от атак. Хакеры использовали "гонку условий," чтобы провести несанкционированные транзакции на 1.1 млрд Наир. Статья обсуждает методы предотвращения таких уязвимостей в Django.
Подробности: https://afeez1131.hashnode.dev/django-payment-security-lessons-from-habaripays-incident
#en
@django_prog | Другие наши каналы
⚡2
Начало работы с Django REST Framework
Создание API может быть сложной задачей, но Django REST Framework (DRF) упрощает её благодаря мощным инструментам. Эта статья поможет вам начать создание первого API с DRF. Основные шаги: установка, создание проекта и приложения, настройка моделей и сериализаторов, определение представлений и URL.
Подробности: https://waniathar.hashnode.dev/beginners-guide-to-django-rest-framework
#en
@django_prog | Другие наши каналы
Создание API может быть сложной задачей, но Django REST Framework (DRF) упрощает её благодаря мощным инструментам. Эта статья поможет вам начать создание первого API с DRF. Основные шаги: установка, создание проекта и приложения, настройка моделей и сериализаторов, определение представлений и URL.
Подробности: https://waniathar.hashnode.dev/beginners-guide-to-django-rest-framework
#en
@django_prog | Другие наши каналы
📌 Создание Dockerfile для Django-Notes приложения на AWS
В этой статье вы узнаете, как контейнеризировать Django-Notes приложение с помощью Docker и развернуть его на AWS. Подробно описаны все шаги, начиная с клонирования репозитория до тестирования контейнера. Подробности и код проекта доступны в GitHub.
Подробности: https://deepeshmlgupta.hashnode.dev/docker-project-on-aws
#en
@django_prog | Другие наши каналы
В этой статье вы узнаете, как контейнеризировать Django-Notes приложение с помощью Docker и развернуть его на AWS. Подробно описаны все шаги, начиная с клонирования репозитория до тестирования контейнера. Подробности и код проекта доступны в GitHub.
Подробности: https://deepeshmlgupta.hashnode.dev/docker-project-on-aws
#en
@django_prog | Другие наши каналы
Начало работы с Django: Установка и Первый Проект
В новой статье о Django рассматривается установка фреймворка, создание первого проекта и приложения, а также структура проектов и приложений в Django. Узнайте, как настроить и запустить свой первый Django-проект и освоить базовые концепции его структуры.
Подробности: https://simplykeep.in/day-3-getting-started-with-django-installing-creating-your-first-project-and-understanding-the-structure
#en
@django_prog | Другие наши каналы
В новой статье о Django рассматривается установка фреймворка, создание первого проекта и приложения, а также структура проектов и приложений в Django. Узнайте, как настроить и запустить свой первый Django-проект и освоить базовые концепции его структуры.
Подробности: https://simplykeep.in/day-3-getting-started-with-django-installing-creating-your-first-project-and-understanding-the-structure
#en
@django_prog | Другие наши каналы
Как тестировать конфигурационные файлы в Python
Использование конфигурационных файлов позволяет легко управлять настройками приложения без изменения кода. Статья объясняет, как тестировать и мокировать такие файлы с помощью Pytest и Unittest. Автор демонстрирует, как создать фикстуру для тестов и проверить поведение программы при успешных и ошибочных сценариях. 💡 Тестирование конфигурационных файлов: стратегии и практики
В статье рассматриваются различные методы тестирования конфигурационных файлов с помощью библиотеки pytest. Используя мок-объекты, автор демонстрирует, как проверять существование секций и ключей в конфигурации, а также как убедиться, что функции корректно обрабатывают исключительные ситуации.
Подробности: https://hemachandra.hashnode.dev/how-to-test-or-mock-configuration-files-in-python
#en
@django_prog | Другие наши каналы
Использование конфигурационных файлов позволяет легко управлять настройками приложения без изменения кода. Статья объясняет, как тестировать и мокировать такие файлы с помощью Pytest и Unittest. Автор демонстрирует, как создать фикстуру для тестов и проверить поведение программы при успешных и ошибочных сценариях. 💡 Тестирование конфигурационных файлов: стратегии и практики
В статье рассматриваются различные методы тестирования конфигурационных файлов с помощью библиотеки pytest. Используя мок-объекты, автор демонстрирует, как проверять существование секций и ключей в конфигурации, а также как убедиться, что функции корректно обрабатывают исключительные ситуации.
Подробности: https://hemachandra.hashnode.dev/how-to-test-or-mock-configuration-files-in-python
#en
@django_prog | Другие наши каналы
Обзор Django Framework
Django — популярный open-source фреймворк для разработки веб-приложений на Python. Он предлагает интеграцию с библиотеками, высокую безопасность и масштабируемость. Django используется в различных сферах: от публикации контента до машинного обучения и SaaS. Идеален для больших проектов.
Подробности: https://mojtabamaleki.hashnode.dev/overview-of-django-framework
#en
@django_prog | Другие наши каналы
Django — популярный open-source фреймворк для разработки веб-приложений на Python. Он предлагает интеграцию с библиотеками, высокую безопасность и масштабируемость. Django используется в различных сферах: от публикации контента до машинного обучения и SaaS. Идеален для больших проектов.
Подробности: https://mojtabamaleki.hashnode.dev/overview-of-django-framework
#en
@django_prog | Другие наши каналы
Наши успехи в Django: управление магазинами и товарами
На этой неделе были достигнуты значительные успехи в проекте на Django. Мы улучшили главную страницу сайта с помощью Bootstrap, интегрировали функционал админ-панели и упростили управление магазинами и товарами. Подробности читайте в статье!
Подробности: https://abubakarkhanlakhwera.hashnode.dev/week-in-review-my-django-development-journey-stores-and-items-management
#en
@django_prog | Другие наши каналы
На этой неделе были достигнуты значительные успехи в проекте на Django. Мы улучшили главную страницу сайта с помощью Bootstrap, интегрировали функционал админ-панели и упростили управление магазинами и товарами. Подробности читайте в статье!
Подробности: https://abubakarkhanlakhwera.hashnode.dev/week-in-review-my-django-development-journey-stores-and-items-management
#en
@django_prog | Другие наши каналы
⚡2
Обзор новостей Python/FastAPI/Django за неделю
С 16 по 22 сентября 2024 года прошли ключевые события в мире Python/FastAPI/Django, включая выпуск Python 3.13 с новым REPL, обновления безопасности Django и успешную кампанию Kickstarter для JupyterLab. Узнайте больше о новых библиотеках и руководствах для автоматизации задач!
Подробнее читайте здесь: poovarasu.dev/python-fastapi-django-weekly-..
Подробности: https://poovarasu.hashnode.dev/stay-updated-with-pythonfastapidjango-weekly-news-summary-16092024-22092024
#en
@django_prog | Другие наши каналы
С 16 по 22 сентября 2024 года прошли ключевые события в мире Python/FastAPI/Django, включая выпуск Python 3.13 с новым REPL, обновления безопасности Django и успешную кампанию Kickstarter для JupyterLab. Узнайте больше о новых библиотеках и руководствах для автоматизации задач!
Подробнее читайте здесь: poovarasu.dev/python-fastapi-django-weekly-..
Подробности: https://poovarasu.hashnode.dev/stay-updated-with-pythonfastapidjango-weekly-news-summary-16092024-22092024
#en
@django_prog | Другие наши каналы
Что изменилось в open source-альтернативе TestRail. От кастомных статусов и атрибутов до bulk-операций
Привет! Я Александр Зырянов, проектный менеджер TestY и QA-менеджер в департаменте контроля качества YADRO. Тест-менеджмент системе TestY, которая доступна в open source любой команде и компании, скоро два года. Мы готовим крупный релиз 2.0 с масштабными изменениями, в том числе дизайна интерфейса.
А пока в качестве «аппетайзера» я расскажу про последние обновления к релизу 1.3.4. Среди них — bulk-операции, пуш-уведомления пользователей, доработка кастомных атрибутов и статусов. Подробнее о каждом — под катом. Устанавливайте TestY и испытайте в работе нашу открытую систему.
Читать: https://habr.com/ru/companies/yadro/articles/846614/
#ru
@django_prog | Другие наши каналы
Привет! Я Александр Зырянов, проектный менеджер TestY и QA-менеджер в департаменте контроля качества YADRO. Тест-менеджмент системе TestY, которая доступна в open source любой команде и компании, скоро два года. Мы готовим крупный релиз 2.0 с масштабными изменениями, в том числе дизайна интерфейса.
А пока в качестве «аппетайзера» я расскажу про последние обновления к релизу 1.3.4. Среди них — bulk-операции, пуш-уведомления пользователей, доработка кастомных атрибутов и статусов. Подробнее о каждом — под катом. Устанавливайте TestY и испытайте в работе нашу открытую систему.
Читать: https://habr.com/ru/companies/yadro/articles/846614/
#ru
@django_prog | Другие наши каналы
#Путеводитель по Python-фреймворкам для начинающих
Статья объясняет разницу между модулями, пакетами, библиотеками и фреймворками в Python. Рассматриваются основные типы фреймворков: Full-Stack (например, Django), Micro (например, Flask) и Asynchronous (например, FastAPI). Узнайте, как эти инструменты упрощают разработку программного обеспечения.
Подробности: https://vijaywrites.hashnode.dev/the-ultimate-beginners-guide-to-python-frameworks
#en
@django_prog | Другие наши каналы
Статья объясняет разницу между модулями, пакетами, библиотеками и фреймворками в Python. Рассматриваются основные типы фреймворков: Full-Stack (например, Django), Micro (например, Flask) и Asynchronous (например, FastAPI). Узнайте, как эти инструменты упрощают разработку программного обеспечения.
Подробности: https://vijaywrites.hashnode.dev/the-ultimate-beginners-guide-to-python-frameworks
#en
@django_prog | Другие наши каналы
Трудности многопользовательской архитектуры в Django
Пост: Разрабатывая многопользовательское приложение на Django, я столкнулся с массой проблем, особенно касаемо аутентификации. Попытка использовать разные базы данных и схемы оказалась слишком сложной. В итоге переход на одну БД с общей схемой и кэшированием через Redis существенно упростил задачу.
Подробности: https://codewithmarlon.hashnode.dev/is-django-multi-tenant-worth-it-a-developers-tale-of-trials-errors-and-rediscovery
#en
@django_prog | Другие наши каналы
Пост: Разрабатывая многопользовательское приложение на Django, я столкнулся с массой проблем, особенно касаемо аутентификации. Попытка использовать разные базы данных и схемы оказалась слишком сложной. В итоге переход на одну БД с общей схемой и кэшированием через Redis существенно упростил задачу.
Подробности: https://codewithmarlon.hashnode.dev/is-django-multi-tenant-worth-it-a-developers-tale-of-trials-errors-and-rediscovery
#en
@django_prog | Другие наши каналы
Настройка безопасного Django с PostgreSQL, Nginx и Gunicorn
Для успешного развертывания Django на Ubuntu 22.04 воспользуйтесь нашим гидом по настройке PostgreSQL, Nginx и Gunicorn. Это обеспечит безопасность и масштабируемость вашего приложения, автоматическую настройку через DigitalOcean и изоляцию зависимостей с помощью виртуальной среды.
Подробности: https://sundar365.com.np/how-to-set-up-secure-django-with-postgres-nginx-and-gunicorn-on-ubuntu
#en
@django_prog | Другие наши каналы
Для успешного развертывания Django на Ubuntu 22.04 воспользуйтесь нашим гидом по настройке PostgreSQL, Nginx и Gunicorn. Это обеспечит безопасность и масштабируемость вашего приложения, автоматическую настройку через DigitalOcean и изоляцию зависимостей с помощью виртуальной среды.
Подробности: https://sundar365.com.np/how-to-set-up-secure-django-with-postgres-nginx-and-gunicorn-on-ubuntu
#en
@django_prog | Другие наши каналы
🔍 Погружаемся в мир баз данных!
Начинается серия статей о СУБД (системах управления базами данных), где вас ждёт простое и доступное объяснение ключевых понятий. Узнайте, как работают базы данных, и как их применяют в реальной индустрии. Эта серия — ваш гид в мире СУБД!
Подробности: https://ritiksharmaaa.hashnode.dev/dbms-article-series-an-in-depth-journey-into-databases
#en
@django_prog | Другие наши каналы
Начинается серия статей о СУБД (системах управления базами данных), где вас ждёт простое и доступное объяснение ключевых понятий. Узнайте, как работают базы данных, и как их применяют в реальной индустрии. Эта серия — ваш гид в мире СУБД!
Подробности: https://ritiksharmaaa.hashnode.dev/dbms-article-series-an-in-depth-journey-into-databases
#en
@django_prog | Другие наши каналы
👍2
Управление сложными таблицами данных в Django
Разбираем серверную обработку больших таблиц в Django, используя DataTables! В статье описан процесс настройки отображения таблицы сообщений блога с динамическими столбцами и сложной системой фильтрации. Узнайте, как это позволяет эффективно обрабатывать тысячи записей.
Подробности: https://selftaughtdev.hashnode.dev/mastering-complex-datatables-with-django-a-deep-dive-into-server-side-processing
#en
@django_prog | Другие наши каналы
Разбираем серверную обработку больших таблиц в Django, используя DataTables! В статье описан процесс настройки отображения таблицы сообщений блога с динамическими столбцами и сложной системой фильтрации. Узнайте, как это позволяет эффективно обрабатывать тысячи записей.
Подробности: https://selftaughtdev.hashnode.dev/mastering-complex-datatables-with-django-a-deep-dive-into-server-side-processing
#en
@django_prog | Другие наши каналы
Создание анонимной системы обратной связи с Django и Twilio
В статье описан процесс создания безопасной системы обратной связи с использованием Django, Twilio и Pinata. Пользователи могут оставлять анонимные отзывы, загружать медиа и получать SMS-уведомления. Используются технологии IPFS для хранения данных и TailwindCSS для адаптивного дизайна.
Подробности: https://doxzy.hashnode.dev/building-a-secure-anonymous-feedback-system-with-django-twilio-and-pinata
#en
@django_prog | Другие наши каналы
В статье описан процесс создания безопасной системы обратной связи с использованием Django, Twilio и Pinata. Пользователи могут оставлять анонимные отзывы, загружать медиа и получать SMS-уведомления. Используются технологии IPFS для хранения данных и TailwindCSS для адаптивного дизайна.
Подробности: https://doxzy.hashnode.dev/building-a-secure-anonymous-feedback-system-with-django-twilio-and-pinata
#en
@django_prog | Другие наши каналы
Расширяем возможности Django: Руководство для новичков
Хотите расширить возможности модели пользователя в Django? Узнайте, как создать кастомную модель CustomUser и внедрить email-аутентификацию вместо устаревшей схемы с именем пользователя. Этот гид поможет вам настроить современную аутентификацию и адаптировать ее к вашим проектам.
Подробности: https://createdbydalius.hashnode.dev/simple-guide-for-beginners-on-extending-django-user-models
#en
@django_prog | Другие наши каналы
Хотите расширить возможности модели пользователя в Django? Узнайте, как создать кастомную модель CustomUser и внедрить email-аутентификацию вместо устаревшей схемы с именем пользователя. Этот гид поможет вам настроить современную аутентификацию и адаптировать ее к вашим проектам.
Подробности: https://createdbydalius.hashnode.dev/simple-guide-for-beginners-on-extending-django-user-models
#en
@django_prog | Другие наши каналы