Если есть смысл, то почему бы и нет?
Я уже давно являюсь полноценным разработчиком веб-приложений, и мне почти всегда советовали отключать боковые журналы браузера в рабочей среде. Хотя по большей части я согласен с общепринятым мнением, я считаю, что в определенных ситуациях, если все сделано правильно, журналы в рабочей среде могут быть полезными.
Но что насчет…
Все причины, по которым их не надевали? Давайте посмотрим на пару из них и на то, почему они недостаточно хороши, чтобы вызвать у меня паранойю по поводу производственных журналов.
Они раскрывают конфиденциальные данные и поток приложений.
Хотя да, их удаление скрывает данные от посторонних глаз, но все же не обеспечивает никакой реальной безопасности. Любой, у кого есть злые намерения и технические знания, как нанести вред вашей системе, может сделать это без отображения журналов. Помните, что все файлы, код и данные уже выполняются и находятся в пользовательской системе, и доступ к ним относительно прост. чем журналы.
Они плохо выглядят.
Я лично даже не считаю это веским аргументом, но он приведен. Меня не волнует, что кто-то думает о том, что моя производственная консоль разработчика не выглядит чистой.
Она не должна выглядеть модно, для этого и предназначен настоящий веб-сайт. Предполагается, что это место для резких сообщений, четко и кратко излагающих, что происходит со страницей.
Хорошо написанные журналы выглядят круто, и вы не можете изменить мое мнение.
Как они помогают?
Преимущества могут быть нишевыми и ориентированными на варианты использования, но, безусловно, бывают случаи, когда они помогают.
Они рассказывают историю лучше, чем рассказ обычного пользователя о проблеме.
У меня было несколько случаев, когда служба поддержки просила меня исправить проблему, с которой столкнулся пользователь, и я не мог понять причину только по описанию пользователя. И простой скриншот консоли от пользователя показал мне свет божий.
Лог просто лучше рассказывает историю, чем визуальное поведение сайта. И эта история намного яснее в случае определенных вопросов.
Первые дни производства и открытая демонстрация
Если ваше приложение только что запущено в производство или, возможно, у вас есть открытая демонстрация, доступная для потенциальных клиентов в первые дни маркетинга, будьте уверены, что оно обязательно столкнется с проблемами. В этих случаях рекомендуется держать журналы включенными до тех пор, пока вы не добьетесь большей стабильности, а также предоставлять более информативные отзывы потенциальным клиентам вместо «я не знаю, что происходит».
Их всегда можно отключить. позже, когда проблемы с производством станут далеко и широко распространены.
Некоторые рекомендации
Если вы делаете это, вы можете также сделать это правильно. Некоторые рекомендации по ведению журнала.
Никогда не используйте «console.log»
непосредственно
Вместо этого используйте модуль-оболочку, который принимает аргументы и регистрирует их с помощью console.log
. Он обеспечивает больший контроль, поэтому вы можете легко настроить его, чтобы включить или выключить журналы в зависимости от некоторых переменных среды. Очень простой пример:
function logger () { if (ENV === “production”) return; console.log (…arguments); } logger (1, 2, 3, "This is some message", {data : "some data"});
Использование уровней журнала
Способ иметь более точный контроль над вашими журналами — использовать уровни журналов. Это означает, что вместо простого console.log
вы можете настроить вышеупомянутую оболочку, чтобы иметь несколько типов журналов, таких как info
, debug
, error
, где каждый обслуживает определенный тип варианта использования. И все или некоторые из них могут быть отключены в зависимости от среды, в которой они работают.
Пример одного из таких простых многоуровневых логгеров можно найти здесь.
Это чтение было предназначено не для того, чтобы рекомендовать рабочие журналы, а как просьбу непредвзято относиться к этому, посмотреть на ваше требование и решить, имеет ли смысл включать некоторые или все из них. И пара советов, как сделать это правильно.
Журналы — это лучшие инструменты, о которых может мечтать разработчик, и они могут быть таковыми даже в рабочей среде. Это не должно быть преступлением. Если это имеет смысл, то все в порядке.
Твои мысли?