Современные реалии таковы, что не каждый бизнес может себе позволить сайт, особенно стартующий бизнес. Поэтому выгодно воспользоваться конструктором сайтов, например filandor. Запуск сайта через несколько минут.

Отправляйте журналы Cloudflare Workers в пункт назначения по вашему выбору с помощью Workers Trace Events Logpush

При написании кода вы можете двигаться настолько быстро, насколько можете отлаживать.

Наша цель в Cloudflare — предоставить нашим разработчикам инструменты для развертывания приложений быстрее, чем когда-либо прежде. Это означает предоставление вам инструментов для всего, от инициализации вашего проекта Workers до наблюдения за вашим приложением, успешно обслуживающим производственный трафик.

В прошлом году мы представили wrangler tail, позволяя вам получить доступ к живому потоку журналов Workers, чтобы помочь точно определить ошибки для отладки ваших приложений. Workers Trace Events Logpush (или просто Workers Logpush для краткости) расширяет эту функциональность — вы можете использовать его для отправки журналов Workers в место хранения объектов или на аналитическую платформу по вашему выбору.

Workers Logpush теперь доступен всем на тарифном плане Workers Paid! Читайте дальше, чтобы узнать, как начать работу и получить информацию о ценах.

Двигайтесь быстро и не ломать вещи

С появлением таких платформ, как Cloudflare Workers, над контейнерами и виртуальными машинами, развертывание приложений теперь занимает всего несколько минут. Но при создании приложения любой выбранный вами технологический стек имеет свой собственный набор компромиссов.

Как разработчик, выбор Workers означает, что вам не нужно беспокоиться ни о какой базовой архитектуре. Вы просто пишете код, и он работает (надеюсь!). Распространенная критика этого стиля платформы заключается в том, что наблюдаемость становится более сложной.

Мы хотим изменить это.

За прошедшие годы мы усовершенствовали предлагаемые нами инструменты тестирования и отладки. wrangler dev, Miniflare и совсем недавно наша среда выполнения с открытым исходным кодом workerd. Эти улучшения значительно упростили локальную отладку и выполнение модульных тестов. Однако всегда будут крайние случаи или ошибки, которые воспроизводятся только в производственных средах.

Если что-то сломается… введите Workers Logpush

Хвост Wrangler позволяет просматривать журналы в режиме реального времени, но мы слышали от разработчиков, что вы также хотели бы настроить мониторинг своих служб и иметь историческую запись, на которую можно оглянуться. Workers Logpush включает метаданные о запросах, console.log() сообщения и любые неперехваченные исключения. Чтобы дать вам представление о том, как это выглядит, ниже приведен образец строки журнала:

{
   "AccountID":12345678,
   "Event":{
      "RayID":"7605d2b69f961000",
      "Request":{
         "URL":"https://example.com",
         "Method":"GET"
      },
      "Response":{
         "status":200
      },
      "EventTimestampMs":1666814897697,
      "EventType":"fetch",
      "Exceptions":[
      ],
      "Logs":[
         {
            "Level":"log",
            "Message":[
               "please work!"
            ],
            "TimestampMs":1666814897697
         }
      ],
      "Outcome":"ok",
      "ScriptName":"example-script"
   }

Logpush поддерживает самые популярные инструменты наблюдения. Отправляйте журналы в Datadog, New Relic или даже R2 для хранения и специальных запросов.

Цены

Workers Logpush доступен обоим клиентам в наших планах Workers Paid и Enterprise. Мы хотели, чтобы это было очень доступным для наших разработчиков. Стоимость Logpush для рабочих составляет 0,05 доллара США за миллион запросов, и мы взимаем плату только за запросы, в результате которых журналы доставляются в конечный пункт назначения после применения какой-либо фильтрации или выборки. Он также включает использование 10 миллионов запросов каждый месяц.

Конфигурация

Logpush невероятно прост в настройке.

1. Создайте задание Logpush. В следующем примере журналы Workers отправляются на R2.

curl -X POST 'https://api.cloudflare.com/client/v4/accounts/<ACCOUNT_ID>/logpush/jobs' \
-H 'X-Auth-Key: <API_KEY>' \
-H 'X-Auth-Email: <EMAIL>' \
-H 'Content-Type: application/json' \
-d '{
"name": "workers-logpush",
"logpull_options": "fields=Event,EventTimestampMs,Outcome,Exceptions,Logs,ScriptName",
"destination_conf": "r2://<BUCKET_PATH>/{DATE}?account-id=<ACCOUNT_ID>&access-key-id=<R2_ACCESS_KEY_ID>&secret-access-key=<R2_SECRET_ACCESS_KEY>",
"dataset": "workers_trace_events",
"enabled": true
}'| jq .

В Logpush вы также можете настроить фильтры и частоту дискретизации, чтобы лучше контролировать объем данных, отправляемых в настроенное место назначения. Например, если вы хотите получать журналы только для тех случаев, когда возникло исключение, вы можете добавить следующее в разделе logpull_options:

"filter":"{\"where\": {\"key\":\"Outcome\",\"operator\":\"eq\",\"value\":\"exception\"}}"

2. Включите ведение журнала в вашем скрипте Workers.

Вы можете сделать это, добавив новое свойство, logpush = trueна ваш wrangler.toml файл. Это можно добавить либо в конфигурацию верхнего уровня, либо в среду. Любые новые скрипты с этим свойством будут автоматически подхватываться заданием Logpush.

Начните сегодня!

Оба клиента, использующие план Workers Paid Plan и Enterprise, могут начать работу с Workers Logpush прямо сейчас! Полное руководство о том, как начать, находится здесь.