INTEGRITY Документация

Включите New Relic

Cloudflare Logpush поддерживает отправку журналов напрямую в New Relic через панель управления Cloudflare или API.

Управление через панель управления Cloudflare

  1. На панели управления Cloudflare перейдите к разделу Logpush на уровне аккаунта или домена (также называемого зоной).

    Для аккаунта: Перейдите в Logpush ↗

    Для домена (также называемого зоной): Перейдите в Logpush ↗

  2. В зависимости от выбора вам доступны наборы данных уровня аккаунта и наборы данных, привязанные к зоне, соответственно.

  3. Выберите Создание задания Logpush.

  1. В Выберите пункт назначения, выберите New Relic.

  2. Введите New Relic Logs Endpoint:

  • "https://log-api.newrelic.com/log/v1?Api-Key=<NR_LICENSE_KEY>&format=cloudflare"
  • "https://log-api.eu.newrelic.com/log/v1?Api-Key=<NR_LICENSE_KEY>&format=cloudflare"

Используйте регион, соответствующий региону, настроенному в вашей учётной записи New Relic. Лицензионный ключ можно найти в dashboard New Relic. Получить его можно, выполнив эти шаги ↗.

Когда вы закончите вводить данные получателя, выберите Продолжение.

  1. Выберите набор данных для отправки в хранилище.

  2. На следующем шаге настройте задание Logpush:

    • Введите Название задания.
    • В разделе Если журналы соответствуют, вы можете выбрать, какие события включить в журналы или исключить из них. См. Фильтры с дополнительной информацией. Эта опция доступна не для всех наборов данных.
    • В Отправьте следующие поля, вы можете либо отправлять в хранилище назначения все журналы, либо выбирать, какие журналы отправлять.
  3. В Advanced Options, вы можете:

    • Выберите формат полей отметки времени в своих журналах (RFC3339 (по умолчанию), Unix, или UnixNano).
    • Выберите частота сэмплирования для ваших журналов или отправлять случайно выбранный процент журналов.
    • Включите скрытие данных для CVE-2021-44228. Эта опция заменит каждое вхождение ${ с x{.
  4. Выберите Отправить после того как настройка задания Logpush завершена.

Управление через API

Убедитесь Log Share разрешения включены, прежде чем пытаться читать или настраивать задание Logpush. Дополнительные сведения см. в Раздел Roles.

1. Создайте задание

Чтобы создать задание, выполните POST запрос к конечной точке заданий Logpush со следующими полями:

Пример запроса с использованием cURL:

Необходимые разрешения API-токена

Хотя бы одно из следующих права доступа токена требуется:
Создать задание Logpush
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/logpush/jobs" \
	--request POST \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"name": "<DOMAIN_NAME>",
		"output_options": {
				"field_names": [
						"ClientIP",
						"ClientRequestHost",
						"ClientRequestMethod",
						"ClientRequestURI",
						"EdgeEndTimestamp",
						"EdgeResponseBytes",
						"EdgeResponseStatus",
						"EdgeStartTimestamp",
						"RayID"
				],
				"timestamp_format": "unix"
		},
		"destination_conf": "https://log-api.newrelic.com/log/v1?Api-Key=<NR_LICENSE_KEY>&format=cloudflare",
		"max_upload_bytes": 5000000,
		"dataset": "http_requests",
		"enabled": true
	}'

Ответ:

{
  "errors": [],
  "messages": [],
  "result": {
    "id": <JOB_ID>,
    "dataset": "http_requests",
    "kind": "",
    "max_upload_bytes": 5000000,
    "enabled": true,
    "name": "<DOMAIN_NAME>",
    "output_options": {
      "field_names": ["ClientIP", "ClientRequestHost", "ClientRequestMethod", "ClientRequestURI", "EdgeEndTimestamp","EdgeResponseBytes", "EdgeResponseStatus", "EdgeStartTimestamp", "RayID"],
      "timestamp_format": "unix"
    },
    "destination_conf": "https://log-api.newrelic.com/log/v1?Api-Key=<NR_LICENSE_KEY>&format=cloudflare",
    "last_complete": null,
    "last_error": null,
    "error_message": null
  },
  "success": true
}

См. Управлять Logpush с помощью cURL чтобы обновить задание (включая включение и отключение).