DDU для лога мониторинга

Материал из Документация Ключ-АСТРОМ

На этой странице объясняется концепция мониторинга журналов, как мы рассчитываем ВИД для мониторинга журналов и как вы можете оценивать и отслеживать потребление ВИД, если вы используете мониторинг журналов.

Что такое мониторинг журналов?

Используя мониторинг журналов как часть платформы Ключ-АСТРОМ, вы получаете прямой доступ к содержимому журналов всех ваших критически важных процессов. Вы можете создавать собственные показатели журнала для более разумного и быстрого устранения неполадок. Вы сможете понять данные журнала в контексте вашего полного стека, включая реальные воздействия на пользователя.

Как Ключ-АСТРОМ рассчитывает потребление ВИД для мониторинга журналов?

ВИД подсчитывает все входящие записи журнала (записи) из ваших данных журнала. Каждая запись журнала (строка, сообщение, запись) вычитается 0.0005 ВИДиз доступной квоты. Например, 1 миллион записей журнала, умноженный на вес ВИД, равный 0,0005, потребляет всего 500 ВИД.

Запись журнала распознается двумя способами:

  • Отметка времени
  • Объект JSON

Отметка времени

Ключ-АСТРОМ предполагает, что отметка времени является началом новой записи журнала.

Например, в следующих данных журнала (потребляемых с помощью файла журнала или общего приема) Ключ-АСТРОМ насчитывает девять записей журнала на основе появления метки времени:

Ввод файла журнала

1: Oct 18 05:56:11 INFO ip-10-176-34-132 DHCPREQUEST on eth0 to 10.176.34.1
2: Oct 18 05:56:12 INFO ip-10-176-34-132 DHCPACK from 10.176.34.1
3: Oct 18 05:56:13 INFO ip-10-176-34-132 bound to 10.176.34.132 -- renewal in 1551s4:
4: Oct 18 05:56:15 INFO ip-10-176-34-132 [get_meta] Getting token for IMDSv
5: Oct 18 05:56:16 INFO ip-10-176-34-132 [get_meta] Trying to get http://169.23.2.3
6: Oct 18 05:56:18 INFO ip-10-176-34-132 [rewrite_aliases] Rewriting aliases
7: Oct 18 06:22:06 INFO ip-10-176-34-132 DHCPREQUEST on eth0 to 10.176.34.1 port 67
8: Oct 18 06:22:07 INFO ip-10-176-34-132 DHCPACK from 10.176.34.1 (xid=0x3a182c8c)
9: Oct 18 06:22:10 INFO ip-10-176-34-132 bound to 10.176.34.132 -- renewal in 1364s

Общие входные данные для приема

curl -X POST "https://my.activegate/api/v2/logs/ingest" 
     -H  "accept: application/json; charset=utf-8" 
     -H  "Content-Type: text/plain; charset=utf-8" 
     -d "Oct 18 05:56:11 INFO ip-10-176-34-132 DHCPREQUEST on eth0 to 10.176.34.1Oct 18 05:56:12 INFO ip-10-176-34-132 DHCPACK from 10.176.34.1Oct 18 05:56:13 INFO ip-10-176-34-132 bound to 10.176.34.132 -- renewal in 1551s4:Oct 18 05:56:15 INFO ip-10-176-34-132 [get_meta] Getting token for IMDSvOct 18 05:56:16 INFO ip-10-176-34-132 [get_meta] Trying to get http://169.23.2.3Oct 18 05:56:18 INFO ip-10-176-34-132 [rewrite_aliases] Rewriting aliasesOct 18 06:22:06 INFO ip-10-176-34-132 DHCPREQUEST on eth0 to 10.176.34.1 port 67Oct 18 06:22:07 INFO ip-10-176-34-132 DHCPACK from 10.176.34.1 (xid=0x3a182c8c)Oct 18 06:22:10 INFO ip-10-176-34-132 bound to 10.176.34.132 -- renewal in 1364s"

9строк журнала / записи x 0.0005вес журнала = 0.0045 ВИД

Объект JSON

Ключ-АСТРОМ предполагает, что отдельный объект JSON является записью журнала. Файл JSON может содержать несколько объектов, которые считаются записью журнала.

Например, в следующих данных журнала Ключ-АСТРОМ подсчитывает три записи журнала на основе вхождения объекта JSON:

Лог-файл

[
  {
  "timestamp": "2021-07-29T10:54:40.962165022Z",
  "level": "error",
  "log.source": "/var/log/syslog",
  "application.id": "PaymentService-Prod",
  "content": "DHCPREQUEST on eth0 to 10.176.34.1"
  },
  {
  "log.source": "/var/log/syslog",
  "content": "[get_meta] Getting token for IMDSv"
  },
  {
  "content": "DHCPACK from 10.176.34.1 (xid=0x3a182c8c)"
  }
]
curl -X POST "https://my.activegate/api/v2/logs/ingest" 
     -H  "accept: application/json; charset=utf-8" 
     -H  "Content-Type: application/json; charset=utf-8" 
     -d "[{\"timestamp\":\"2021-07-29T10:54:40.962165022Z\",\"level\":\"error\",\"log.source\":\"/var/log/syslog\",\"application.id\":\"PaymentService-Prod\",\"content\":\"DHCPREQUEST on eth0 to 10.176.34.1\"},{\"log.source\":\"/var/log/syslog\",\"content\":\"[get_meta] Getting token for IMDSv\"},{\"content\":\"DHCPACK from 10.176.34.1 (xid=0x3a182c8c)\"}]"

3строки журнала / записи x 0.0005вес журнала = 0.0015DDU.

Как мониторинг журналов может повлиять на потребление ВИД

Ключ-АСТРОМ считает записи журнала на основе отметки времени, даже если запись журнала содержит присоединенную трассировку стека.

Например, оба следующих журнала ( Log1 и Log2 ) содержат 14 строк данных журнала. Ключ-АСТРОМ вычисляет записи журнала, которые используют ВИД с действительной меткой времени. В результате Log1 генерировал стоимость 0.007 ВИД, а Log2 генерировал стоимость 0.001 ВИД.

Журнал1

1:  Oct 18 05:56:11 INFO ip-10-176-34-132 DHCPREQUEST on eth0 to 10.176.34.1
2:  Oct 18 05:56:12 INFO ip-10-176-34-132 DHCPACK from 10.176.34.1
3:  Oct 18 05:56:13 INFO ip-10-176-34-132 bound to 10.176.34.132 -- renewal in 1551s4:
4:  Oct 18 05:56:15 INFO ip-10-176-34-132 [get_meta] Getting token for IMDSv
5:  Oct 18 05:56:16 INFO ip-10-176-34-132 [get_meta] Trying to get http://169.23.2.3
6:  Oct 18 05:56:15 INFO ip-10-176-34-132 [get_meta] Getting token for IMDSv
7:  Oct 18 06:16:16 INFO ip-10-176-34-132 [get_meta] Trying to get http://169.23.2.3
8:  Oct 18 06:16:18 INFO ip-10-176-34-132 [rewrite_aliases] Rewriting aliases
9:  Oct 18 06:21:26 INFO ip-10-176-34-132 DHCPREQUEST on eth0 to 10.176.34.1 port 67
10: Oct 18 06:22:06 INFO ip-10-176-34-132 DHCPREQUEST on eth0 to 10.176.34.1 port 67
11: Oct 18 06:22:07 INFO ip-10-176-34-132 DHCPACK from 10.176.34.1 (xid=0x3a182c8c)
12: Oct 18 06:22:10 INFO ip-10-176-34-132 bound to 10.176.34.132 -- renewal in 1364s
13: Oct 18 14:51:22 ERROR ip-10-176-34-32 classOne: Index out of range
14: Oct 18 16:52:10 ERROR ip-10-176-34-32 classOne: Index out of range

14записей 0.0005журнала x вес журнала = 0.007 ВИД.

Журнал2

1: Oct 18 14:51:22 ERROR ip-10-176-34-32 classOne: Index out of range
2:     java.lang.StringIndexOutOfBoundsException: String index out of range: 18
3:     at java.lang.String.charAt(String.java:658)
4:     at com.example.app.loggingApp.classOne.getResult(classOne.java:15)
5:     at com.example.app.loggingApp.AppController.tester(AppController.java:27)
6:     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
7:     at sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:62)
8: Oct 18 16:52:10 ERROR ip-10-176-34-32 classOne: Index out of range
9:     java.lang.StringIndexOutOfBoundsException: String index out of range: 18
10:    at java.lang.String.charAt(String.java:658)
11:    at com.example.app.loggingApp.classOne.getResult(classOne.java:15)
12:    at com.example.app.loggingApp.AppController.tester(AppController.java:27)
13:    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
14:    at sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java:62)

2записи 0.0005журнала x вес журнала = 0.001DDU.