שרת - חילופי נתונים פרוקסי מבוססת על פורמט JSON.
הודעות בקשה ותגובה חייבות להתחיל ב-כותרת ונתונים length.
בקשת ה-proxy config נשלחת על ידי השרת כדי לספק פרוקסי נתוני תצורה. בקשה זו נשלחת בכל ProxyConfigFrequency
(פרמטר תצורת שרת) שניות.
|name|<|<|<|סוג ערך|תיאור| |-|-|-|--------|--------|-------------------------------- -------------------| |שרת→פרוקסי:|<|<|<|<|<| |request|<|<|<|string|'config proxy'| |<table>|<|<|<|object|אובייקט אחד או יותר עם נתוני <table>.| | |שדות|<|<|מערך|מערך שמות שדות.| |^| |-|<|string|שם שדה.| |^|נתונים|<|<|מערך|מערך שורות.| |^| |-|<|מערך|מערך עמודות.| ||| |-|string,number|ערך עמודה עם סוג בהתאם לסוג העמודה בסכימת מסד הנתונים.| |proxy→שרת:|<|<|<|<|<| |תגובה|<|<|<|string|בקש מידע על הצלחה ('הצלחה' או 'נכשל').| |גרסה|<|<|<|string|גרסת פרוקסי (<major>.<minor>.<build>).|
דוגמא:
שרת → פרוקסי:
{
"request": "תצורת פרוקסי",
"globalmacro":{
"שדות":[
"גלובלמאקרואיד",
"מאקרו",
"ערך"
],
"נתונים":[
[
2,
"{$SNMP_COMMUNITY}",
"פּוּמְבֵּי"
]
]
},
"מארחים":{
"שדות":[
"hostid",
"מנחה",
"סטָטוּס",
"ipmi_authtype",
"ipmi_privilege",
"ipmi_username",
"ipmi_password",
"שֵׁם",
"tls_connect",
"tls_accept",
"tls_issuer",
"tls_subject",
"tls_psk_identity",
"tls_psk"
],
"נתונים":[
[
10001,
"לינוקס",
3,
-1,
2,
"",
"",
"לינוקס",
1,
1,
"",
"",
"",
""
],
[
10050,
"סוכן Zabbix",
3,
-1,
2,
"",
"",
"סוכן Zabbix",
1,
1,
"",
"",
"",
""
],
[
10105,
"כּוֹרֵת עֵצִים",
0,
-1,
2,
"",
"",
"כּוֹרֵת עֵצִים",
1,
1,
"",
"",
"",
""
]
]
},
"מִמְשָׁק":{
"שדות":[
"interfaceid",
"hostid",
"רָאשִׁי",
"סוּג",
"useip",
"ip",
"dns",
"נמל",
"תִפזוֹרֶת"
],
"נתונים":[
[
2,
10105,
1,
1,
1,
"127.0.0.1",
"",
"10050",
1
]
]
},
...
}
proxy→שרת:
בקשת נתוני proxy
משמשת כדי להשיג זמינות של ממשק מארח, נתונים היסטוריים, גילוי ורישום אוטומטי מ-proxy. הבקשה הזאת נשלח בכל ProxyDataFrequency
(פרמטר תצורת שרת) שניות.
|name|<|סוג ערך|תיאור| |-|--------|----------------|-------------------------------- ---------------| |שרת→פרוקסי:|<|<|<| |request|<|string|'נתוני proxy'| |proxy→שרת:|<|<|<| |session|<|string|אסימון הפעלת נתונים.| |זמינות ממשק|<|מערך|(אופציונלי) מערך אובייקטי נתוני זמינות ממשק.| | |מזהה ממשק|מספר|מזהה ממשק.| |^|זמין|מספר|זמינות ממשק:
0, INTERFACE_AVAILABLE_UNKNOWN - לא ידוע
1, INTERFACE_AVAILABLE _TRUE - זמין
2, INTERFACE_AVAILABLE_FALSE - לא זמין| |^|שגיאה|מחרוזת|הודעת שגיאה בממשק או מחרוזת ריקה.| |נתוני היסטוריה|<|מערך|(אופציונלי) מערך אובייקטי נתוני היסטוריה.| | |itemid|number|מזהה פריט.| |^|שעון|מספר|חותמת זמן של ערך פריט (שניות).| |^|ns|מספר|חותמת זמן של ערך פריט (ננו-שניות).| |^|ערך|מחרוזת|(אופציונלי) ערך פריט.| |^|id|number|מזהה ערך (מונה עולה, ייחודי בתוך הפעלת נתונים אחת).| |^|חותמת זמן|מספר|(אופציונלי) חותמת זמן של פריטים מסוג יומן.| |^|מקור|מחרוזת|(אופציונלי) ערך מקור פריט יומן אירועים.| |^|חומרה|מספר|(אופציונלי) ערך חומרת פריט יומן אירועים.| |^|eventid|number|(אופציונלי) Eventtid פריט ערך eventtid.| |^|מצב|מחרוזת|(אופציונלי) מצב פריט:
0, ITEM_STATE_NORMAL
1, ITEM_STATE _NOTSUPPORTED| |^|lastlogsize|מספר|(אופציונלי) גודל יומן אחרון של פריטים מסוג יומן.| |^|mtime|מספר|(אופציונלי) זמן שינוי של פריטים מסוג יומן.| |נתוני גילוי|<|מערך|(אופציונלי) מערך של אובייקטי נתוני גילוי.| | |שעון|מספר|חותמת זמן של נתוני גילוי.| |^|druleid|מספר|מזהה כלל גילוי.| |^|dcheckid|number|מזהה בדיקת גילוי או null עבור נתוני כלל גילוי.| |^|סוג|מספר|סוג בדיקת גילוי:
-1 נתוני כללי גילוי
0, SVC_SSH - בדיקת שירות SSH
1, SVC_LDAP - בדיקת שירות LDAP
2, SVC_SMTP - בדיקת שירות SMTP
3, SVC_FTP - בדיקת שירות FTP
4, SVC_HTTP - בדיקת שירות HTTP
5, SVC_POP - בדיקת שירות POP
6, * SVC_NNTP* - בדיקת שירות NNTP
7, SVC_IMAP - בדיקת שירות IMAP
8, SVC_TCP - בדיקת זמינות יציאת TCP
** 9, SVC_AGENT - סוכן Zabbix
10, SVC_SNMPv1 - סוכן SNMPv1
11, SVC_SNMPv2 - סוכן SNMPv2
* 12, SVC_ICMPPING - ICMP ping
13, SVC_SNMPv3 - סוכן SNMPv3
14, SVC_HTTPS - בדיקת שירות HTTPS<br >15, SVC_TELNET - בדיקת זמינות Telnet| |^|ip|string|כתובת IP מארח.| |^|dns|מחרוזת|שם DNS מארח.| |^|יציאה|מספר|(אופציונלי) מספר יציאת שירות.| |^|מפתח_|מחרוזת|(אופציונלי) מפתח פריט לבדיקת גילוי מסוג 9 SVC_AGENT| |^|value|string|(אופציונלי) ערך שהתקבל מהשירות, יכול להיות ריק עבור רוב השירותים.| |^|סטטוס|מספר|(אופציונלי) סטטוס שירות:
0, DOBJECT_STATUS_UP - שירות UP
1 , DOBJECT_STATUS_DOWN* - שירות DOWN| |רישום אוטומטי|<|מערך|(אופציונלי) מערך אובייקטי נתוני רישום אוטומטי.| | |שעון|מספר|חותמת זמן של נתוני רישום אוטומטי.| |^|מארח|מחרוזת|שם מארח.| |^|ip|מחרוזת|(אופציונלי) כתובת IP מארח.| |^|dns|string|(אופציונלי) שם DNS נפתר מכתובת IP.| |^|יציאה|מחרוזת|(אופציונלי) יציאת מארח.| |^|host_metadata|string|(אופציונלי) מטא נתונים מארח שנשלחו על ידי הסוכן (מבוסס על פרמטר תצורת סוכן HostMetadata או HostMetadataItem).| |משימות|<|מערך|(אופציונלי) מערך משימות.| | |סוג|מספר|סוג משימה:
0, ZBX_TM_TASK_PROCESS_REMOTE_COMMAND_RESULT - תוצאת פקודה מרחוק| |^|status|number|סטטוס ביצוע פקודה מרחוק:
0, ZBX_TM_REMOTE_COMMAND_COMPLETED - הפקודה מרחוק הושלמה בהצלחה
1, ZBX_TM_REMOTE_COMMAND_FAILED - פקודת מרחוק נכשלה| |^|שגיאה|מחרוזת|(אופציונלי) הודעת שגיאה.| |^|הורה_משימה|מספר|מזהה משימת הורה.| |עוד|<|מספר|(אופציונלי) 1 - יש עוד נתוני היסטוריה לשלוח.| |שעון|<|מספר|(אופציונלי) חותמת זמן להעברת נתונים (שניות).| |ns|<|מספר|(אופציונלי) חותמת זמן להעברת נתונים (ננו-שניות).| |גרסה|<|מחרוזת|גרסת פרוקסי (<major>.<minor>.<build>).| |שרת→פרוקסי:|<|<|<| |תגובה|<|string|בקש מידע על הצלחה ('הצלחה' או 'נכשל').| |משימות|<|מערך|(אופציונלי) מערך משימות.| | |סוג|מספר|סוג משימה:
1, ZBX_TM_TASK_PROCESS_REMOTE_COMMAND - פקודה מרחוק| |^|שעון|מספר|זמן יצירת משימה.| |^|ttl|number|הזמן בשניות שאחריו יפוג המשימה.| |^|סוג פקודה|מספר|סוג פקודה מרחוק:
0**, *ZBX_SC
בקשת ה-proxy heartbeat נשלחת על ידי proxy כדי לדווח על כך רץ. בקשה זו נשלחת בכל HeartbeatFrequency
(פרוקסי פרמטר תצורה) שניות.
|שם|סוג ערך|תיאור| |--------|--------|-------------------------------- -------------| |proxy→שרת:|<|<| |בקשה|מחרוזת|'קצב לב פרוקסי'| |מארח|מחרוזת|שם פרוקסי.| |גרסה|מחרוזת|גרסת פרוקסי (<major>.<minor>.<build>).| |שרת→פרוקסי:|<|<| |** תגובה**|מחרוזת|בקש מידע על הצלחה ('הצלחה' או 'נכשל').|
proxy→שרת:
שרת → פרוקסי:
בקשת ה-proxy config נשלחת באמצעות פרוקסי כדי לקבל פרוקסי נתוני תצורה. בקשה זו נשלחת בכל ConfigFrequency
(פרוקסי פרמטר תצורה) שניות.
|name|<|<|<|סוג ערך|תיאור| |-|-|-|--------|--------|-------------------------------- -------------------| |proxy→שרת:|<|<|<|<|<| |request|<|<|<|string|'config proxy'| |מארח|<|<|<|מחרוזת|שם פרוקסי.| |גרסה|<|<|<|string|גרסת פרוקסי (<major>.<minor>.<build>).| |שרת→פרוקסי:|<|<|<|<|<| |request|<|<|<|string|'config proxy'| |<table>|<|<|<|object|אובייקט אחד או יותר עם נתוני <table>.| | |שדות|<|<|מערך|מערך שמות שדות.| |^| |-|<|string|שם שדה.| |^|נתונים|<|<|מערך|מערך שורות.| |^| |-|<|מערך|מערך עמודות.| ||| |-|string,number|ערך עמודה עם סוג בהתאם לסוג העמודה בסכימת מסד הנתונים.| |proxy→שרת:|<|<|<|<|<| |תגובה|<|<|<|string|בקש מידע על הצלחה ('הצלחה' או 'נכשל').|
דוגמא:
proxy→שרת:
שרת → פרוקסי:
{
"globalmacro":{
"שדות":[
"גלובלמאקרואיד",
"מאקרו",
"ערך"
],
"נתונים":[
[
2,
"{$SNMP_COMMUNITY}",
"פּוּמְבֵּי"
]
]
},
"מארחים":{
"שדות":[
"hostid",
"מנחה",
"סטָטוּס",
"ipmi_authtype",
"ipmi_privilege",
"ipmi_username",
"ipmi_password",
"שֵׁם",
"tls_connect",
"tls_accept",
"tls_issuer",
"tls_subject",
"tls_psk_identity",
"tls_psk"
],
"נתונים":[
[
10001,
"לינוקס",
3,
-1,
2,
"",
"",
"לינוקס",
1,
1,
"",
"",
"",
""
],
[
10050,
"סוכן Zabbix",
3,
-1,
2,
"",
"",
"סוכן Zabbix",
1,
1,
"",
"",
"",
""
],
[
10105,
"כּוֹרֵת עֵצִים",
0,
-1,
2,
"",
"",
"כּוֹרֵת עֵצִים",
1,
1,
"",
"",
"",
""
]
]
},
"מִמְשָׁק":{
"שדות":[
"interfaceid",
"hostid",
"רָאשִׁי",
"סוּג",
"useip",
"ip",
"dns",
"נמל",
"תִפזוֹרֶת"
],
"נתונים":[
[
2,
10105,
1,
1,
1,
"127.0.0.1",
"",
"10050",
1
]
]
},
...
}
proxy→שרת:
בקשת ה-proxy config נשלחת באמצעות פרוקסי כדי לקבל פרוקסי נתוני תצורה. בקשה זו נשלחת בכל ConfigFrequency
(פרוקסי פרמטר תצורה) שניות.
|name|<|<|<|סוג ערך|תיאור| |-|-|-|--------|--------|-------------------------------- -------------------| |proxy→שרת:|<|<|<|<|<| |request|<|<|<|string|'config proxy'| |מארח|<|<|<|מחרוזת|שם פרוקסי.| |גרסה|<|<|<|string|גרסת פרוקסי (<major>.<minor>.<build>).| |שרת→פרוקסי:|<|<|<|<|<| |request|<|<|<|string|'config proxy'| |<table>|<|<|<|object|אובייקט אחד או יותר עם נתוני <table>.| | |שדות|<|<|מערך|מערך שמות שדות.| |^| |-|<|string|שם שדה.| |^|נתונים|<|<|מערך|מערך שורות.| |^| |-|<|מערך|מערך עמודות.| ||| |-|string,number|ערך עמודה עם סוג בהתאם לסוג העמודה בסכימת מסד הנתונים.| |proxy→שרת:|<|<|<|<|<| |תגובה|<|<|<|string|בקש מידע על הצלחה ('הצלחה' או 'נכשל').|
דוגמא:
proxy→שרת:
שרת → פרוקסי:
{
"globalmacro":{
"שדות":[
"גלובלמאקרואיד",
"מאקרו",
"ערך"
],
"נתונים":[
[
2,
"{$SNMP_COMMUNITY}",
"פּוּמְבֵּי"
]
]
},
"מארחים":{
"שדות":[
"hostid",
"מנחה",
"סטָטוּס",
"ipmi_authtype",
"ipmi_privilege",
"ipmi_username",
"ipmi_password",
"שֵׁם",
"tls_connect",
"tls_accept",
"tls_issuer",
"tls_subject",
"tls_psk_identity",
"tls_psk"
],
"נתונים":[
[
10001,
"לינוקס",
3,
-1,
2,
"",
"",
"לינוקס",
1,
1,
"",
"",
"",
""
],
[
10050,
"סוכן Zabbix",
3,
-1,
2,
"",
"",
"סוכן Zabbix",
1,
1,
"",
"",
"",
""
],
[
10105,
"כּוֹרֵת עֵצִים",
0,
-1,
2,
"",
"",
"כּוֹרֵת עֵצִים",
1,
1,
"",
"",
"",
""
]
]
},
"מִמְשָׁק":{
"שדות":[
"interfaceid",
"hostid",
"רָאשִׁי",
"סוּג",
"useip",
"ip",
"dns",
"נמל",
"תִפזוֹרֶת"
],
"נתונים":[
[
2,
10105,
1,
1,
1,
"127.0.0.1",
"",
"10050",
1
]
]
},
...
}
proxy→שרת: