diff options
author | Vladislavs Sokurenko <vladislavs.sokurenko@zabbix.com> | 2020-04-20 12:26:01 +0300 |
---|---|---|
committer | Vladislavs Sokurenko <vladislavs.sokurenko@zabbix.com> | 2020-04-20 12:26:01 +0300 |
commit | f9151189023ad710297b51bed8391ed4bec44707 (patch) | |
tree | 7699496764e08dca3330d104f5fc872ca1cae268 /src/libs/zbxembed/zabbix.c | |
parent | 4df9828b370bd1181f5511e7817def756ac0499a (diff) |
........S. [ZBXNEXT-5877] logging to json, initial commit
Diffstat (limited to 'src/libs/zbxembed/zabbix.c')
-rw-r--r-- | src/libs/zbxembed/zabbix.c | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/src/libs/zbxembed/zabbix.c b/src/libs/zbxembed/zabbix.c index cba38229cb1..6dea5cfbed7 100644 --- a/src/libs/zbxembed/zabbix.c +++ b/src/libs/zbxembed/zabbix.c @@ -66,7 +66,27 @@ static duk_ret_t es_zabbix_ctor(duk_context *ctx) ******************************************************************************/ static duk_ret_t es_zabbix_log(duk_context *ctx) { - zabbix_log(duk_to_int(ctx, 0), "%s", duk_to_string(ctx, 1)); + zbx_es_env_t *env; + const char *message; + int level; + duk_memory_functions out_funcs; + + level = duk_to_int(ctx, 0); + message = duk_to_string(ctx, 1); + + zabbix_log(level, "%s", message); + + duk_get_memory_functions(ctx, &out_funcs); + env = (zbx_es_env_t *)out_funcs.udata; + + if (NULL == env->json) + return 0; + + zbx_json_addobject(env->json, NULL); + zbx_json_adduint64(env->json, "level", (zbx_uint64_t)level); + zbx_json_addstring(env->json, "message", message, ZBX_JSON_TYPE_STRING); + zbx_json_close(env->json); + return 0; } |