66 lines
1.7 KiB
C
66 lines
1.7 KiB
C
/*
|
|
* Copyright (c) Huawei Technologies Co., Ltd. 2012-2018. All rights reserved.
|
|
*
|
|
* Description: interfaces to generate imonitor event struct and convert it
|
|
* to regular string which can be analysed by imonitor engine
|
|
* Author: yaomanhai <yaomanhai@huawei.com>
|
|
*/
|
|
|
|
#ifndef _IMONITOR_H
|
|
#define _IMONITOR_H
|
|
#include "imonitor_keys.h"
|
|
|
|
#define IMONITOR_NEW_API
|
|
#define IMONITOR_NEW_API_V2
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
struct imonitor_eventobj;
|
|
|
|
struct imonitor_eventobj *imonitor_create_eventobj(unsigned int eventid);
|
|
|
|
/* deprecated */
|
|
int imonitor_set_param(struct imonitor_eventobj *eventobj,
|
|
unsigned short paramid, long value);
|
|
|
|
#ifdef IMONITOR_NEW_API
|
|
int imonitor_set_param_integer(struct imonitor_eventobj *eventobj,
|
|
unsigned short paramid, long value);
|
|
|
|
int imonitor_set_param_string(struct imonitor_eventobj *eventobj,
|
|
unsigned short paramid, const char *value);
|
|
#endif
|
|
|
|
int imonitor_unset_param(struct imonitor_eventobj *eventobj,
|
|
unsigned short paramid);
|
|
|
|
#ifdef IMONITOR_NEW_API_V2
|
|
int imonitor_set_param_integer_v2(struct imonitor_eventobj *eventobj,
|
|
const char *param, long value);
|
|
|
|
int imonitor_set_param_string_v2(struct imonitor_eventobj *eventobj,
|
|
const char *param, const char *value);
|
|
|
|
int imonitor_unset_param_v2(struct imonitor_eventobj *eventobj,
|
|
const char *param);
|
|
#endif
|
|
|
|
int imonitor_set_time(struct imonitor_eventobj *eventobj,
|
|
long long seconds);
|
|
|
|
int imonitor_add_dynamic_path(struct imonitor_eventobj *eventobj,
|
|
const char *path);
|
|
|
|
int imonitor_add_and_del_dynamic_path(struct imonitor_eventobj *eventobj,
|
|
const char *path);
|
|
|
|
int imonitor_send_event(struct imonitor_eventobj *eventobj);
|
|
|
|
void imonitor_destroy_eventobj(struct imonitor_eventobj *eventobj);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
#endif
|