ru:manual:appendix:items:activepassive

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Last revision Both sides next revision
ru:manual:appendix:items:activepassive [2015/12/19 15:15]
dotneft created
ru:manual:appendix:items:activepassive [2015/12/19 15:55]
dotneft
Line 14: Line 14:
 </​code>​ </​code>​
  
-Чтобы не израсходовать память полностью (в теории) Zabbix сервер ограничен на прием данных только ​64МБ за одно соединение при использовании Zabbix протокола версий 2.2.0-2.2.2 (128МБ до 2.2.0, неограничено в версиях до Zabbix 2.0.3) +Чтобы не израсходовать память полностью (в теории) Zabbix сервер ограничен на прием данных только ​128МБ за одно соединение при использовании Zabbix протокола.
- +
-Начиная с версии Zabbix 2.2.3 лимит был изменен обратно до 128МБ, чтобы оставалась совместимость со старыми версиями Zabbix, когда процесс с лимитом отправки данных в 128МБ мог бы отправить данные другому процессу с лимитом в 64МБ, такое поведение могло послужить причиной отказа от приема данных приемником по причине выхода за лимит размера.+
  
 === Пассивные проверки === === Пассивные проверки ===
Line 28: Line 26:
 **Ответ агента** **Ответ агента**
  
-<​code><​HEADER><​DATALEN><​DATA></​code>​+<​code><​HEADER><​DATALEN><​DATA>​[\0<​ERROR>​]</​code>​ 
 + 
 +Часть в квадратных скобках выше опциональна и отправляется только по неподдерживаемым элементам данных.
  
 Например:​ Например:​
Line 36: Line 36:
   - Агент читает запрос и отвечает с **<​HEADER><​DATALEN>​1**   - Агент читает запрос и отвечает с **<​HEADER><​DATALEN>​1**
   - Сервер обрабатывает данные,​ чтобы извлечь значение,​ в нашем случае 1   - Сервер обрабатывает данные,​ чтобы извлечь значение,​ в нашем случае 1
 +  - TCP соединение закрывается
 +
 +
 +Для неподдерживаемых элементов данных:​
 +
 +  - Сервер открывает TCP соединение
 +  - Сервер отправляет **vfs.fs.size[/​nono]\n**
 +  - Agent читает запрос и отвечает с **<​HEADER><​DATALEN>​ZBX_NOTSUPPORTED\0Cannot obtain filesystem information:​ [2] No such file or directory**
 +  - Сервер обрабатывает данные,​ меняет состояние элемента данных на неподдерживаемое с указанным сообщением об ошибке
   - TCP соединение закрывается   - TCP соединение закрывается
  
Line 59: Line 68:
  
 <​code>​ <​code>​
-{+<​HEADER><​DATALEN>​{
     "​response":"​success",​     "​response":"​success",​
     "​data":​[     "​data":​[
-    ​+        ​
-        "​key":"​log[\/home\/zabbix\/logs\/​zabbix_agentd.log]",​ +            "​key":"​log[/​home/​zabbix/​logs/​zabbix_agentd.log]",​ 
-        "​delay":​"30"+            "​delay":​30,​ 
-        "​lastlogsize":​"0" +            "​lastlogsize":​0
-    }, +            ​"mtime":​0 
-    +        }, 
-        "​key":"​agent.version",​ +        
-        "​delay":"​600"​ +            "​key":"​agent.version",​ 
-    }+            "​delay":​600, 
 +            ​"lastlogsize":​0,​ 
 +            "​mtime":​0 
 +        }, 
 +        { 
 +            "​key":"​vfs.fs.size[/​nono]",​ 
 +            "​delay":​600
 +            ​"lastlogsize":​0,​ 
 +            "​mtime":​0 
 +        ​}
     ]     ]
 } }
 </​code>​ </​code>​
  
-Сервер должен ответить положительно. У каждого полученного элемента данных обязательно должны быть указаны параметры **key** и **delay**. Для ​элементов данных, которые имеют тип "Журнал ​(Log)",​ также должен быть параметр **lastlogsize**.+Сервер должен ответить положительно. У каждого полученного элемента данных обязательно должны быть указаны параметры **key**, **lastlogsize** и **delay**, независимо от того ​элемент данных ​является журнальным ​или нет.
  
 Например:​ Например:​
Line 85: Line 103:
   - TCP соединение закрывается   - TCP соединение закрывается
   - Агент начинает периодический сбор данных   - Агент начинает периодический сбор данных
 +
 +<note important>​Возьмите на заметку,​ что (чувствительные) данные конфигурации могут стать доступными лицам, имеющим доступ к порту траппера Zabbix сервера,​ когда используются активные проверки. Это возможно так как любой может претендовать на возможность быть активным агентом и запросить данные конфигурации элементов данных;​ аутентификация не производится.</​note>​
  
 == Отправка собранных данных == == Отправка собранных данных ==
Line 92: Line 112:
 <​code>​ <​code>​
 <​HEADER><​DATALEN>​{ <​HEADER><​DATALEN>​{
-   "​request":"​agent data",​ +    ​"​request":"​agent data",​ 
-   ​"​data":​[ +    "​data":​[ 
-       ​+        
-           ​"​host":"<​hostname>",​ +            "​host":"<​hostname>",​ 
-           ​"​key":"​log[\/home\/zabbix\/logs\/​zabbix_agentd.log]",​ +            "​key":"​agent.version",​ 
-           ​"​value":" ​13039:20090907:184546.759 zabbix_agentd startedZABBIX 1.6.(revision ​{7836}).", +            "​value":"​2.4.0",​ 
-           ​"lastlogsize":80+            "​clock":​1400675595,​ 
-           ​"clock":1252926015 +            "​ns":​76808644 
-       ​}, +        }, 
-       ​+        { 
-           ​"​host":"<​hostname>",​ +            "​host":"<​hostname>",​ 
-           ​"​key":"​agent.version", +            ​"​key":"​log[/​home/​zabbix/​logs/​zabbix_agentd.log]",​ 
-           ​"​value":"​1.6.6", +            "​lastlogsize":​112,​ 
-           ​"​clock":​1252926015 +            ​"​value":" ​19845:20140621:141708.521 Starting Zabbix Agent [<​hostname>​]Zabbix 2.4.(revision ​50000).", 
-       ​+            "clock":1400675595
-   ​], +            "ns":77053975 
-   ​"​clock":​1252926016+        }, 
 +        
 +            "​host":"<​hostname>",​ 
 +            "​key":"​vfs.fs.size[/​nono]", 
 +            "​state":​1,​ 
 +            ​"​value":"​Cannot obtain filesystem information:​ [2] No such file or directory", 
 +            "​clock":​1400675595,​ 
 +            "​ns":​78154128 
 +        
 +    ], 
 +    "​clock": ​1400675595,​ 
 +    "​ns":​ 78211329
 } }
 </​code>​ </​code>​
Line 117: Line 148:
 <​HEADER><​DATALEN>​{ <​HEADER><​DATALEN>​{
     "​response":"​success",​     "​response":"​success",​
-    "​info":"​Processed 2 Failed ​Total 2 Seconds ​spent 0.002070"+    "​info":"​processed: 3; failed: ​0; total: 3; seconds ​spent0.003534"
 } }
 </​code>​ </​code>​
  
-<note important>​Если отправка некоторых значений завершилась неудаче на сервере (например,​ по причине того, что узел сети или элемент данных был деактивирован или удален),​ агент не будет повторять отправку этих элементов данных</​note>​+<note important>​Если отправка некоторых значений завершилась неудачей на сервере (например,​ по причине того, что узел сети или элемент данных был деактивирован или удален),​ агент не будет повторять отправку этих элементов данных</​note>​
  
 Например:​ Например:​
Line 129: Line 160:
   - Сервер обрабатывает данные и отправляет статус обратно   - Сервер обрабатывает данные и отправляет статус обратно
   - TCP соединение закрывается   - TCP соединение закрывается
 +
 +Обратите внимание на то, как в примере выше указывается неподдерживаемое состояние для vfs.fs.size[/​nono] при помощи значения "​state"​ равного 1 и сообщения об ошибке в свойстве "​value"​.
 +
 +<note important>​Сообщение об ошибке будет усечено до 2048 символов на стороне сервера.</​note>​
  
 === Более старый XML протокол === === Более старый XML протокол ===