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

Включите IBM Cloud Logs

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

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

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

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

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

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

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

  1. В Выберите пункт назначения, выберите IBM Cloud Logs.

  2. Введите следующую информацию о получателе:

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

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

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

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

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

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

Чтобы настроить задание IBM Cloud Logs:

  1. Создайте задание, указав соответствующий URL конечной точки и параметры аутентификации.
  2. Включите задание, чтобы оно начало отправлять журналы.

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

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

ibmcl://<INSTANCE_ID>.ingress.<REGION>.logs.cloud.ibm.com/logs/v1/singles?ibm_api_key=<IBM_API_KEY>

Пример запроса с использованием 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": {
				"output_type": "ndjson",
				"timestamp_format": "rfc3339",
				"batch_prefix": "[",
				"batch_suffix": "]",
				"record_prefix": "{\"applicationName\":\"ibm-platform-log\",\"subsystemName\":\"internet-svcs:logpush\",\"text\":{",
				"record_suffix": "}}",
				"record_delimiter": ","
		},
		"destination_conf": "ibmcl://<INSTANCE_ID>.ingress.<REGION>.logs.cloud.ibm.com/logs/v1/singles?ibm_api_key=<IBM_API_KEY>",
		"max_upload_bytes": 2000000,
		"dataset": "http_requests",
		"enabled": true
	}'

Ответ:

{
  "errors": [],
  "messages": [],
  "result": {
    "id": <JOB_ID>,
    "dataset": "http_requests",
    "kind": "",
    "max_upload_bytes": 2000000,
    "enabled": true,
    "name": "<DOMAIN_NAME>",
    "output_options": {
      "output_type": "ndjson",
      "timestamp_format": "rfc3339",
      "batch_prefix": "[",
      "batch_suffix": "]",
      "record_prefix": "{\"applicationName\":\"ibm-platform-log\",\"subsystemName\":\"internet-svcs:logpush\",\"text\":{",
      "record_suffix": "}}",
      "record_delimiter": ","
    },
    "destination_conf": "ibmcl://<INSTANCE_ID>.ingress.<REGION>.logs.cloud.ibm.com/logs/v1/singles?ibm_api_key=<IBM_API_KEY>",
    "last_complete": null,
    "last_error": null,
    "error_message": null
  },
  "success": true
}

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