diff options
| author | alex <alex@97f52cf1-0a1b-0410-bd0e-c28be96e8082> | 2006-11-22 12:16:53 +0000 |
|---|---|---|
| committer | alex <alex@97f52cf1-0a1b-0410-bd0e-c28be96e8082> | 2006-11-22 12:16:53 +0000 |
| commit | 9875c11fb7e4dbca03f7775f81bf8e4eafa2b4d5 (patch) | |
| tree | 03d23a038745ef414097f80cd86a8d9ed5a90a98 | |
| parent | e3a9c8732564acac5c5dce55cdfd201212752716 (diff) | |
- added support of macro TRIGGER.URL and TRIGGER.COMMENT (Alexei)
git-svn-id: svn://svn.zabbix.com/trunk@3503 97f52cf1-0a1b-0410-bd0e-c28be96e8082
| -rw-r--r-- | ChangeLog | 4 | ||||
| -rwxr-xr-x | go | 4 | ||||
| -rw-r--r-- | include/db.h | 1 | ||||
| -rw-r--r-- | src/zabbix_server/events.c | 11 | ||||
| -rw-r--r-- | src/zabbix_server/expression.c | 19 |
5 files changed, 29 insertions, 10 deletions
@@ -19,6 +19,10 @@ Changes for 1.3: Integrated from 1.1.x +1.1.5 + + - added support of macro TRIGGER.URL and TRIGGER.COMMENT (Alexei) + 1.1.4 - fixed Y asix value displaying for graphs (Eugene) @@ -28,8 +28,8 @@ automake echo Configuring... export CFLAGS="-Wall" #export CFLAGS="-Wall -pedantic" -./configure --enable-agent --enable-server --with-sqlite3 --with-net-snmp --prefix=`pwd` 2>>WARNINGS >/dev/null -#./configure --enable-agent --enable-server --with-mysql --with-net-snmp --prefix=`pwd` 2>>WARNINGS >/dev/null +#./configure --enable-agent --enable-server --with-sqlite3 --with-net-snmp --prefix=`pwd` 2>>WARNINGS >/dev/null +./configure --enable-agent --enable-server --with-mysql --with-net-snmp --prefix=`pwd` 2>>WARNINGS >/dev/null #./configure --enable-agent --enable-server --with-oracle=/home/zabbix/sqlora8 --with-net-snmp --prefix=`pwd` 2>>WARNINGS >/dev/null echo Cleaning... make clean 2>>WARNINGS >/dev/null diff --git a/include/db.h b/include/db.h index 82bc080a..b3ca6081 100644 --- a/include/db.h +++ b/include/db.h @@ -178,6 +178,7 @@ DB_EVENT int acknowledged; char trigger_description[TRIGGER_DESCRIPTION_LEN_MAX]; int trigger_priority; + char trigger_url[TRIGGER_URL_LEN_MAX]; char trigger_comments[TRIGGER_COMMENTS_LEN_MAX]; }; diff --git a/src/zabbix_server/events.c b/src/zabbix_server/events.c index 84dc259d..eece75d3 100644 --- a/src/zabbix_server/events.c +++ b/src/zabbix_server/events.c @@ -68,15 +68,20 @@ static void add_trigger_info(DB_EVENT *event) if(event->triggerid == 0) return; - result = DBselect("select description,priority,comments from triggers where triggerid=" ZBX_FS_UI64, + result = DBselect("select description,priority,comments,url from triggers where triggerid=" ZBX_FS_UI64, event->triggerid); row = DBfetch(result); + event->trigger_description[0]=0; + event->trigger_comments[0]=0; + event->trigger_url[0]=0; + if(row) { - zbx_strlcpy(event->trigger_description, row[0], TRIGGER_DESCRIPTION_LEN_MAX); + strscpy(event->trigger_description, row[0]); event->trigger_priority = atoi(row[1]); - zbx_strlcpy(event->trigger_comments, row[2], TRIGGER_COMMENTS_LEN_MAX); + strscpy(event->trigger_comments, row[2]); + strscpy(event->trigger_url, row[3]); } DBfree_result(result); diff --git a/src/zabbix_server/expression.c b/src/zabbix_server/expression.c index c4f6018d..36082155 100644 --- a/src/zabbix_server/expression.c +++ b/src/zabbix_server/expression.c @@ -561,17 +561,18 @@ int evaluate(int *result,char *exp, char *error, int maxerrlen) ******************************************************************************/ /* definition of macros variables */ #define MVAR_DATE "{DATE}" -#define MVAR_TIME "{TIME}" +#define MVAR_EVENT_ID "{EVENT.ID}" #define MVAR_HOST_NAME "{HOSTNAME}" #define MVAR_IPADDRESS "{IPADDRESS}" -#define MVAR_TRIGGER_NAME "{TRIGGER.NAME}" +#define MVAR_TIME "{TIME}" #define MVAR_TRIGGER_COMMENT "{TRIGGER.COMMENT}" +#define MVAR_TRIGGER_ID "{TRIGGER.ID}" #define MVAR_TRIGGER_KEY "{TRIGGER.KEY}" +#define MVAR_TRIGGER_NAME "{TRIGGER.NAME}" +#define MVAR_TRIGGER_SEVERITY "{TRIGGER.SEVERITY}" #define MVAR_TRIGGER_STATUS "{TRIGGER.STATUS}" #define MVAR_TRIGGER_STATUS_OLD "{STATUS}" -#define MVAR_TRIGGER_SEVERITY "{TRIGGER.SEVERITY}" -#define MVAR_TRIGGER_ID "{TRIGGER.ID}" -#define MVAR_EVENT_ID "{EVENT.ID}" +#define MVAR_TRIGGER_URL "{TRIGGER.URL}" #define STR_UNKNOWN_VARIAVLE "*UNKNOWN*" @@ -767,6 +768,14 @@ void substitute_simple_macros(DB_EVENT *event, DB_ACTION *action, char *data, in zbx_snprintf(replace_to, sizeof(replace_to), "%d", event->triggerid); } else if(macro_type & (MACRO_TYPE_MESSAGE_SUBJECT | MACRO_TYPE_MESSAGE_BODY) && + strncmp(pr, MVAR_TRIGGER_URL, strlen(MVAR_TRIGGER_URL)) == 0) + { + /* NOTE: if you make changes for this bloc, don't forgot MVAR_TRIGGER_STATUS block */ + var_len = strlen(MVAR_TRIGGER_URL); + + zbx_snprintf(replace_to, sizeof(replace_to), "%s", event->trigger_url); + } + else if(macro_type & (MACRO_TYPE_MESSAGE_SUBJECT | MACRO_TYPE_MESSAGE_BODY) && strncmp(pr, MVAR_EVENT_ID, strlen(MVAR_EVENT_ID)) == 0) { /* NOTE: if you make changes for this bloc, don't forgot MVAR_TRIGGER_STATUS block */ |
