Полезные инструменты: Chrome Logger

Ох, далеко не весь код "красив". Бывает такая лапша, что без бутылки не разобраться. Вот только вместо бутылки обычно используют отладчики, логгирование и прокручивание всего алгоритма/состояний в голове.

В веб проектах логгирование, а точнее говорят "отладка принтами" - популярный метод.

Как это бывает - страницы на HTML, Javascript, а в глубине богомерзкий бэкэнд, которые плюет данные. Даже не важно на чем он, но для конкретики возьмем Django. Бэкэнд принимает запросы, обрабатывает, возвращает пользователю красивую страницу с данными, а браузер счатливо ее рисует.

И вот - применяем "отладку принтами" - принты с данными показываются где-то в терминале или IDE, а Javascript плюется информацией в браузер. И бегаешь между двумя окнами.

Так вот, с помощью Chrome Logger ( https://craig.is/writing/chrome-logger ) можно не бегать.

Chrome Logger - набор из расширения для Google Chrome и пачки клиентов-логгеров под разные языки.

Логгеры управляют заголовком X-ChromeLogger-Data - туда добавляют в особом формате данные. А уже в браузере, расширение разбирает их и рисует прямо в консоли браузера.

Особа прелесть - можно скармливать сразу объекты моделей, а не мучаться с их представлением в виде JSON

Посмотреть как это работает можно по ссылке - https://craig.is/writing/chrome-logger

Рейтинг
Текущий рейтинг: 5


Комментарии

Python-конференция

Теги

notify, os, isinstance, encode, database, all, многопоточность, mail, срез, сборник, pytest, новый год, конкурентность, аргумент, pycon, gevent, GIL, интерпретатор, python проект, игры, замыкание, copy, функциональное программирование, pynotify, pypi, типы данных, csv, график, testing, поиск ошибок, автоматизация, ardruio, swagger, память, файл, pip, тест, web, статический анализ, dsl, syntax, отчет, список, ide, графика, notification, rest, pycallgraph, githook, generic, hook. webhook, история, asyncio, logging, инструмент, swig, click, crawler, while, aiohttp, clonedigger, оптимизация, трансдьюсер, matplotlib, Бизли, bottle, концепция, типизация, fuzzy-testing, урок, language, путь, nose, image, тестирование, консоль, vk, c, list, operator, pylint, print, практика, сравнение, functools, измерение, польза, selenium, сопроцедуры, генерация данных, БД, мастер класс, plotly, tests, bokeh, генерация, производительность, winapi, flask, typing, strip, lxml, grab, scandir, Qt, pycharm, проект, книга, dictwriter, coverage, html, фп, pypy, signal, стандартная библиотека, now, weakref, google, практика программирования, corotine, sqlalchemy, nameko, синтаксис, import, паттер, virtualenv, api, зеленый поток, timeit, контекст, бд, funcy, encoding, кэш, json, статистика, байт-код, unittest, кодировка, opencv, datetime, ооп, itertools, package, fp, mixin, python, assert, pyqt, утка, garbage collector, курс, frozenset, numpy, django-debug-toolbar, терминал, xpath, closure, type, дубликат, requirements, статическая типизация, PIL, работа, debug, быстродействие, plot, рейтинг, водяной знак, ip, python3, yield from, видео, test, fuzzy, curses, gitter, unicode, decode, cache, twitter, pep, вконтакте, операционная система, ОС, тесты, any, awesome, задача, последовательность, geoip, ошибки, генератор, hardcore, toolbar, Wx, qt, магия, doctest, железо, marshal, множество, сигнал, greenlet, слайс, future, db, время, admin, pyside, regex, module, slots, примесь, sys, email, action, requirementstxt, регулярные выражения, дубликат кода, одноплатный компьютер, scrapinghub, micropython, фича, mock, raspberry pi, foreign key, ссылка, django, нг, pickle, модуль, celery, справочник, импорт, лямбда, rpc, with, наука, jinja2, log, обработка текста, super, set, svg, матрица, pygame, fixture, docstring, fabric, декларативный язык, пакет, опыт, магическая переменная, regexp, Гвидо, slice, gui, база данных, vkcom, юникод, yattag, ospath, cython, unit, maxmind, матан, документация, анализатор, Tags, менеджер контекста, yield, учебник, real-time, слабая ссылка, IPython, браузер, xml, GUI, gc, channel, машинное обучение, zip, библиотека, ошибка, данные, оповещение, парсинг, изображение, CLI, tox, фильтр, R, feedly, cffi, http, таблицы, python2, gunicorn, стандарт, if, requests, rss, tkinter, time, mechanize, gensim, интерфейс, enum, визуализация, postgresql, web parsing, язык, исключение, архитектура, lstrip, parsing, путь до файла, copy paste, multiprocessing, rstrip, статический анализатор, lambda