AT&T ECOMP Vendor Event Listener library  0.1
Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
evel.h File Reference

Header for EVEL library. More...

#include <stdbool.h>
#include <stdio.h>
#include <stdarg.h>
#include <time.h>
#include "double_list.h"
Include dependency graph for evel.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  evel_option_double
 Optional parameter holder for double. More...
 
struct  evel_option_string
 Optional parameter holder for string. More...
 
struct  evel_option_int
 Optional parameter holder for int. More...
 
struct  evel_option_ull
 Optional parameter holder for unsigned long long. More...
 
struct  evel_option_time
 Optional parameter holder for time_t. More...
 
struct  event_header
 Event header. More...
 
struct  event_fault
 Fault. More...
 
struct  fault_additional_info
 Fault Additional Info. More...
 
struct  measurement_errors
 Errors. More...
 
struct  event_measurement
 Measurement. More...
 
struct  measurement_cpu_use
 CPU Usage. More...
 
struct  measurement_fsys_use
 Filesystem Usage. More...
 
struct  measurement_latency_bucket
 Latency Bucket. More...
 
struct  measurement_vnic_use
 Virtual NIC usage. More...
 
struct  measurement_codec_use
 Codec Usage. More...
 
struct  measurement_feature_use
 Feature Usage. More...
 
struct  measurement_group
 Measurement Group. More...
 
struct  custom_measurement
 Custom Defined Measurement. More...
 
struct  event_report
 Report. More...
 
struct  mobile_gtp_per_flow_metrics
 Mobile GTP Per Flow Metrics. More...
 
struct  event_mobile_flow
 Mobile Flow. More...
 
struct  event_other
 Other. More...
 
struct  other_field
 Other Field. More...
 
struct  evel_event_instance_id
 Event Instance Identifier JSON equivalent field: eventInstanceIdentifier. More...
 
struct  event_service
 Service Events. More...
 
struct  event_signaling
 Signaling. More...
 
struct  event_state_change
 State Change. More...
 
struct  state_change_additional_field
 State Change Additional Field. More...
 
struct  event_syslog
 Syslog. More...
 
struct  syslog_additional_field
 Syslog Additional Field. More...
 
struct  copyright
 Copyright. More...
 

Macros

#define EVEL_API_MAJOR_VERSION   3
 
#define EVEL_API_MINOR_VERSION   0
 
#define EVEL_MAX_STRING_LEN   4096
 
#define EVEL_MAX_JSON_BODY   16000
 
#define EVEL_MAX_ERROR_STRING_LEN   255
 
#define EVEL_MAX_URL_LEN   511
 
#define EVEL_TOS_SUPPORTED   256
 
#define EVEL_HEADER_MAJOR_VERSION   1
 
#define EVEL_HEADER_MINOR_VERSION   2
 
#define EVEL_FAULT_MAJOR_VERSION   1
 
#define EVEL_FAULT_MINOR_VERSION   1
 
#define EVEL_MEASUREMENT_MAJOR_VERSION   1
 
#define EVEL_MEASUREMENT_MINOR_VERSION   1
 
#define EVEL_REPORT_MAJOR_VERSION   1
 
#define EVEL_REPORT_MINOR_VERSION   1
 
#define EVEL_MOBILE_FLOW_MAJOR_VERSION   1
 
#define EVEL_MOBILE_FLOW_MINOR_VERSION   1
 
#define EVEL_SERVICE_MAJOR_VERSION   1
 
#define EVEL_SERVICE_MINOR_VERSION   1
 
#define EVEL_SIGNALING_MAJOR_VERSION   1
 
#define EVEL_SIGNALING_MINOR_VERSION   1
 
#define EVEL_STATE_CHANGE_MAJOR_VERSION   1
 
#define EVEL_STATE_CHANGE_MINOR_VERSION   1
 
#define EVEL_SYSLOG_MAJOR_VERSION   1
 
#define EVEL_SYSLOG_MINOR_VERSION   1
 
#define EVEL_DEBUG(FMT, ...)   log_debug(EVEL_LOG_DEBUG, (FMT), ##__VA_ARGS__)
 
#define EVEL_INFO(FMT, ...)   log_debug(EVEL_LOG_INFO, (FMT), ##__VA_ARGS__)
 
#define EVEL_SPAMMY(FMT, ...)   log_debug(EVEL_LOG_SPAMMY, (FMT), ##__VA_ARGS__)
 
#define EVEL_ERROR(FMT, ...)
 
#define EVEL_ENTER()
 
#define EVEL_EXIT()
 
#define INDENT_SEPARATORS   "| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | "
 
#define EVEL_DEBUG_ON()   ((debug_level) >= EVEL_LOG_DEBUG)
 

Typedefs

typedef struct evel_option_double EVEL_OPTION_DOUBLE
 Optional parameter holder for double. More...
 
typedef struct evel_option_string EVEL_OPTION_STRING
 Optional parameter holder for string. More...
 
typedef struct evel_option_int EVEL_OPTION_INT
 Optional parameter holder for int. More...
 
typedef struct evel_option_ull EVEL_OPTION_ULL
 Optional parameter holder for unsigned long long. More...
 
typedef struct evel_option_time EVEL_OPTION_TIME
 Optional parameter holder for time_t. More...
 
typedef struct event_header EVENT_HEADER
 Event header. More...
 
typedef struct event_fault EVENT_FAULT
 Fault. More...
 
typedef struct fault_additional_info FAULT_ADDL_INFO
 Fault Additional Info. More...
 
typedef struct measurement_errors MEASUREMENT_ERRORS
 Errors. More...
 
typedef struct event_measurement EVENT_MEASUREMENT
 Measurement. More...
 
typedef struct measurement_cpu_use MEASUREMENT_CPU_USE
 CPU Usage. More...
 
typedef struct measurement_fsys_use MEASUREMENT_FSYS_USE
 Filesystem Usage. More...
 
typedef struct measurement_latency_bucket MEASUREMENT_LATENCY_BUCKET
 Latency Bucket. More...
 
typedef struct measurement_vnic_use MEASUREMENT_VNIC_USE
 Virtual NIC usage. More...
 
typedef struct measurement_codec_use MEASUREMENT_CODEC_USE
 Codec Usage. More...
 
typedef struct measurement_feature_use MEASUREMENT_FEATURE_USE
 Feature Usage. More...
 
typedef struct measurement_group MEASUREMENT_GROUP
 Measurement Group. More...
 
typedef struct custom_measurement CUSTOM_MEASUREMENT
 Custom Defined Measurement. More...
 
typedef struct event_report EVENT_REPORT
 Report. More...
 
typedef struct mobile_gtp_per_flow_metrics MOBILE_GTP_PER_FLOW_METRICS
 Mobile GTP Per Flow Metrics. More...
 
typedef struct event_mobile_flow EVENT_MOBILE_FLOW
 Mobile Flow. More...
 
typedef struct event_other EVENT_OTHER
 Other. More...
 
typedef struct other_field OTHER_FIELD
 Other Field. More...
 
typedef struct evel_event_instance_id EVEL_EVENT_INSTANCE_ID
 Event Instance Identifier JSON equivalent field: eventInstanceIdentifier. More...
 
typedef struct event_service EVENT_SERVICE
 Service Events. More...
 
typedef struct event_signaling EVENT_SIGNALING
 Signaling. More...
 
typedef struct event_state_change EVENT_STATE_CHANGE
 State Change. More...
 
typedef struct state_change_additional_field STATE_CHANGE_ADDL_FIELD
 State Change Additional Field. More...
 
typedef struct event_syslog EVENT_SYSLOG
 Syslog. More...
 
typedef struct syslog_additional_field SYSLOG_ADDL_FIELD
 Syslog Additional Field. More...
 
typedef struct copyright COPYRIGHT
 Copyright. More...
 

Enumerations

enum  EVEL_ERR_CODES {
  EVEL_SUCCESS, EVEL_ERR_GEN_FAIL, EVEL_CURL_LIBRARY_FAIL, EVEL_PTHREAD_LIBRARY_FAIL,
  EVEL_OUT_OF_MEMORY, EVEL_EVENT_BUFFER_FULL, EVEL_EVENT_HANDLER_INACTIVE, EVEL_NO_METADATA,
  EVEL_BAD_METADATA, EVEL_BAD_JSON_FORMAT, EVEL_JSON_KEY_NOT_FOUND, EVEL_MAX_ERROR_CODES
}
 Error codes. More...
 
enum  EVEL_LOG_LEVELS {
  EVEL_LOG_MIN = 0, EVEL_LOG_SPAMMY = 30, EVEL_LOG_DEBUG = 40, EVEL_LOG_INFO = 50,
  EVEL_LOG_ERROR = 60, EVEL_LOG_MAX = 101
}
 Logging levels. More...
 
enum  EVEL_EVENT_DOMAINS {
  EVEL_DOMAIN_INTERNAL, EVEL_DOMAIN_HEARTBEAT, EVEL_DOMAIN_FAULT, EVEL_DOMAIN_MEASUREMENT,
  EVEL_DOMAIN_MOBILE_FLOW, EVEL_DOMAIN_REPORT, EVEL_DOMAIN_SERVICE, EVEL_DOMAIN_SIGNALING,
  EVEL_DOMAIN_STATE_CHANGE, EVEL_DOMAIN_SYSLOG, EVEL_DOMAIN_OTHER, EVEL_MAX_DOMAINS
}
 Event domains for the various events we support. More...
 
enum  EVEL_EVENT_PRIORITIES {
  EVEL_PRIORITY_HIGH, EVEL_PRIORITY_MEDIUM, EVEL_PRIORITY_NORMAL, EVEL_PRIORITY_LOW,
  EVEL_MAX_PRIORITIES
}
 Event priorities. More...
 
enum  EVEL_SEVERITIES {
  EVEL_SEVERITY_CRITICAL, EVEL_SEVERITY_MAJOR, EVEL_SEVERITY_MINOR, EVEL_SEVERITY_WARNING,
  EVEL_SEVERITY_NORMAL, EVEL_MAX_SEVERITIES
}
 Fault / Threshold severities. More...
 
enum  EVEL_SOURCE_TYPES {
  EVEL_SOURCE_OTHER, EVEL_SOURCE_ROUTER, EVEL_SOURCE_SWITCH, EVEL_SOURCE_HOST,
  EVEL_SOURCE_CARD, EVEL_SOURCE_PORT, EVEL_SOURCE_SLOT_THRESHOLD, EVEL_SOURCE_PORT_THRESHOLD,
  EVEL_SOURCE_VIRTUAL_MACHINE, EVEL_SOURCE_VIRTUAL_NETWORK_FUNCTION, EVEL_MAX_SOURCE_TYPES
}
 Fault source types. More...
 
enum  EVEL_VF_STATUSES {
  EVEL_VF_STATUS_ACTIVE, EVEL_VF_STATUS_IDLE, EVEL_VF_STATUS_PREP_TERMINATE, EVEL_VF_STATUS_READY_TERMINATE,
  EVEL_VF_STATUS_REQ_TERMINATE, EVEL_MAX_VF_STATUSES
}
 Fault VNF Status. More...
 
enum  EVEL_COUNTER_CRITICALITIES { EVEL_COUNTER_CRITICALITY_CRIT, EVEL_COUNTER_CRITICALITY_MAJ, EVEL_MAX_COUNTER_CRITICALITIES }
 Counter criticalities. More...
 
enum  EVEL_ALERT_ACTIONS { EVEL_ALERT_ACTION_CLEAR, EVEL_ALERT_ACTION_CONT, EVEL_ALERT_ACTION_SET, EVEL_MAX_ALERT_ACTIONS }
 Alert actions. More...
 
enum  EVEL_ALERT_TYPES {
  EVEL_ALERT_TYPE_CARD, EVEL_ALERT_TYPE_ELEMENT, EVEL_ALERT_TYPE_INTERFACE, EVEL_ALERT_TYPE_SERVICE,
  EVEL_MAX_ALERT_TYPES
}
 Alert types. More...
 
enum  EVEL_ENTITY_STATE { EVEL_ENTITY_STATE_IN_SERVICE, EVEL_ENTITY_STATE_MAINTENANCE, EVEL_ENTITY_STATE_OUT_OF_SERVICE, EVEL_MAX_ENTITY_STATES }
 Alert types. More...
 
enum  EVEL_SYSLOG_FACILITIES {
  EVEL_SYSLOG_FACILITY_KERNEL, EVEL_SYSLOG_FACILITY_USER, EVEL_SYSLOG_FACILITY_MAIL, EVEL_SYSLOG_FACILITY_SYSTEM_DAEMON,
  EVEL_SYSLOG_FACILITY_SECURITY_AUTH, EVEL_SYSLOG_FACILITY_INTERNAL, EVEL_SYSLOG_FACILITY_LINE_PRINTER, EVEL_SYSLOG_FACILITY_NETWORK_NEWS,
  EVEL_SYSLOG_FACILITY_UUCP, EVEL_SYSLOG_FACILITY_CLOCK_DAEMON, EVEL_SYSLOG_FACILITY_SECURITY_AUTH2, EVEL_SYSLOG_FACILITY_FTP_DAEMON,
  EVEL_SYSLOG_FACILITY_NTP, EVEL_SYSLOG_FACILITY_LOG_AUDIT, EVEL_SYSLOG_FACILITY_LOG_ALERT, EVEL_SYSLOG_FACILITY_CLOCK_DAEMON2,
  EVEL_SYSLOG_FACILITY_LOCAL0, EVEL_SYSLOG_FACILITY_LOCAL1, EVEL_SYSLOG_FACILITY_LOCAL2, EVEL_SYSLOG_FACILITY_LOCAL3,
  EVEL_SYSLOG_FACILITY_LOCAL4, EVEL_SYSLOG_FACILITY_LOCAL5, EVEL_SYSLOG_FACILITY_LOCAL6, EVEL_SYSLOG_FACILITY_LOCAL7,
  EVEL_MAX_SYSLOG_FACILITIES
}
 Syslog facilities. More...
 
enum  EVEL_TCP_FLAGS {
  EVEL_TCP_NS, EVEL_TCP_CWR, EVEL_TCP_ECE, EVEL_TCP_URG,
  EVEL_TCP_ACK, EVEL_TCP_PSH, EVEL_TCP_RST, EVEL_TCP_SYN,
  EVEL_TCP_FIN, EVEL_MAX_TCP_FLAGS
}
 TCP flags. More...
 
enum  EVEL_QCI_COS_TYPES {
  EVEL_QCI_COS_UMTS_CONVERSATIONAL, EVEL_QCI_COS_UMTS_STREAMING, EVEL_QCI_COS_UMTS_INTERACTIVE, EVEL_QCI_COS_UMTS_BACKGROUND,
  EVEL_QCI_COS_LTE_1, EVEL_QCI_COS_LTE_2, EVEL_QCI_COS_LTE_3, EVEL_QCI_COS_LTE_4,
  EVEL_QCI_COS_LTE_65, EVEL_QCI_COS_LTE_66, EVEL_QCI_COS_LTE_5, EVEL_QCI_COS_LTE_6,
  EVEL_QCI_COS_LTE_7, EVEL_QCI_COS_LTE_8, EVEL_QCI_COS_LTE_9, EVEL_QCI_COS_LTE_69,
  EVEL_QCI_COS_LTE_70, EVEL_MAX_QCI_COS_TYPES
}
 Mobile QCI Classes of Service. More...
 
enum  EVEL_SERVICE_ENDPOINT_DESC { EVEL_SERVICE_ENDPOINT_CALLEE, EVEL_SERVICE_ENDPOINT_CALLER, EVEL_MAX_SERVICE_ENDPOINT_DESC }
 Service Event endpoint description JSON equivalent field: endpointDesc. More...
 
enum  EVEL_BOOLEAN { EVEL_FALSE, EVEL_TRUE }
 Boolean type for EVEL library. More...
 

Functions

EVEL_ERR_CODES evel_initialize (const char *const fqdn, int port, const char *const path, const char *const topic, int secure, const char *const username, const char *const password, EVEL_SOURCE_TYPES source_type, const char *const role, int verbosity)
 Library initialization. More...
 
EVEL_ERR_CODES evel_terminate (void)
 Clean up the EVEL library. More...
 
EVEL_ERR_CODES evel_post_event (EVENT_HEADER *event)
 Post an event. More...
 
const char * evel_error_string (void)
 Descriptive text for library errors. More...
 
void evel_free_event (void *event)
 Free an event. More...
 
int evel_json_encode_event (char *json, int max_size, EVENT_HEADER *event)
 Encode the event as a JSON event object according to AT&T's schema. More...
 
size_t evel_write_callback (void *contents, size_t size, size_t nmemb, void *userp)
 Callback function to provide returned data. More...
 
EVENT_HEADERevel_new_heartbeat (void)
 Create a new heartbeat event. More...
 
void evel_free_header (EVENT_HEADER *const event)
 Free an event header. More...
 
void evel_init_header (EVENT_HEADER *const header)
 Initialize a newly created event header. More...
 
void evel_header_type_set (EVENT_HEADER *const header, const char *const type)
 Set the Event Type property of the event header. More...
 
void evel_start_epoch_set (EVENT_HEADER *const header, const unsigned long long start_epoch_microsec)
 Set the Start Epoch property of the event header. More...
 
void evel_last_epoch_set (EVENT_HEADER *const header, const unsigned long long last_epoch_microsec)
 Set the Last Epoch property of the event header. More...
 
void evel_reporting_entity_name_set (EVENT_HEADER *const header, const char *const entity_name)
 Set the Reporting Entity Name property of the event header. More...
 
void evel_reporting_entity_id_set (EVENT_HEADER *const header, const char *const entity_id)
 Set the Reporting Entity Id property of the event header. More...
 
EVENT_FAULTevel_new_fault (const char *const condition, const char *const specific_problem, EVEL_EVENT_PRIORITIES priority, EVEL_SEVERITIES severity)
 Create a new fault event. More...
 
void evel_free_fault (EVENT_FAULT *event)
 Free a Fault. More...
 
void evel_fault_interface_set (EVENT_FAULT *fault, const char *const interface)
 Set the Alarm Interface A property of the Fault. More...
 
void evel_fault_addl_info_add (EVENT_FAULT *fault, char *name, char *value)
 Add an additional value name/value pair to the Fault. More...
 
void evel_fault_type_set (EVENT_FAULT *fault, const char *const type)
 Set the Event Type property of the Fault. More...
 
EVENT_MEASUREMENTevel_new_measurement (double measurement_interval)
 Create a new Measurement event. More...
 
void evel_free_measurement (EVENT_MEASUREMENT *event)
 Free a Measurement. More...
 
void evel_measurement_type_set (EVENT_MEASUREMENT *measurement, const char *const type)
 Set the Event Type property of the Measurement. More...
 
void evel_measurement_conc_sess_set (EVENT_MEASUREMENT *measurement, int concurrent_sessions)
 Set the Concurrent Sessions property of the Measurement. More...
 
void evel_measurement_cfg_ents_set (EVENT_MEASUREMENT *measurement, int configured_entities)
 Set the Configured Entities property of the Measurement. More...
 
void evel_measurement_errors_set (EVENT_MEASUREMENT *measurement, int receive_discards, int receive_errors, int transmit_discards, int transmit_errors)
 Add an additional set of Errors to the Measurement. More...
 
void evel_measurement_mean_req_lat_set (EVENT_MEASUREMENT *measurement, double mean_request_latency)
 Set the Mean Request Latency property of the Measurement. More...
 
void evel_measurement_mem_cfg_set (EVENT_MEASUREMENT *measurement, double memory_configured)
 Set the Memory Configured property of the Measurement. More...
 
void evel_measurement_mem_used_set (EVENT_MEASUREMENT *measurement, double memory_used)
 Set the Memory Used property of the Measurement. More...
 
void evel_measurement_request_rate_set (EVENT_MEASUREMENT *measurement, int request_rate)
 Set the Request Rate property of the Measurement. More...
 
void evel_measurement_cpu_use_add (EVENT_MEASUREMENT *measurement, char *id, double usage)
 Add an additional CPU usage value name/value pair to the Measurement. More...
 
void evel_measurement_fsys_use_add (EVENT_MEASUREMENT *measurement, char *filesystem_name, double block_configured, double block_used, int block_iops, double ephemeral_configured, double ephemeral_used, int ephemeral_iops)
 Add an additional File System usage value name/value pair to the Measurement. More...
 
void evel_measurement_feature_use_add (EVENT_MEASUREMENT *measurement, char *feature, int utilization)
 Add a Feature usage value name/value pair to the Measurement. More...
 
void evel_measurement_custom_measurement_add (EVENT_MEASUREMENT *measurement, const char *const group, const char *const name, const char *const value)
 Add a Additional Measurement value name/value pair to the Measurement. More...
 
void evel_measurement_codec_use_add (EVENT_MEASUREMENT *measurement, char *codec, int utilization)
 Add a Codec usage value name/value pair to the Measurement. More...
 
void evel_measurement_agg_cpu_use_set (EVENT_MEASUREMENT *measurement, double cpu_use)
 } Set the Aggregate CPU Use property of the Measurement. More...
 
void evel_measurement_media_port_use_set (EVENT_MEASUREMENT *measurement, int media_ports_in_use)
 Set the Media Ports in Use property of the Measurement. More...
 
void evel_measurement_vnfc_scaling_metric_set (EVENT_MEASUREMENT *measurement, double scaling_metric)
 Set the VNFC Scaling Metric property of the Measurement. More...
 
MEASUREMENT_LATENCY_BUCKETevel_new_meas_latency_bucket (const int count)
 Create a new Latency Bucket to be added to a Measurement event. More...
 
void evel_meas_latency_bucket_high_end_set (MEASUREMENT_LATENCY_BUCKET *const bucket, const double high_end)
 Set the High End property of the Measurement Latency Bucket. More...
 
void evel_meas_latency_bucket_low_end_set (MEASUREMENT_LATENCY_BUCKET *const bucket, const double low_end)
 Set the Low End property of the Measurement Latency Bucket. More...
 
void evel_meas_latency_bucket_add (EVENT_MEASUREMENT *const measurement, MEASUREMENT_LATENCY_BUCKET *const bucket)
 Add an additional Measurement Latency Bucket to the specified event. More...
 
void evel_measurement_latency_add (EVENT_MEASUREMENT *const measurement, const double low_end, const double high_end, const int count)
 Add an additional Latency Distribution bucket to the Measurement. More...
 
MEASUREMENT_VNIC_USEevel_new_measurement_vnic_use (char *const vnic_id, const int packets_in, const int packets_out, const int bytes_in, const int bytes_out)
 Create a new vNIC Use to be added to a Measurement event. More...
 
void evel_free_measurement_vnic_use (MEASUREMENT_VNIC_USE *const vnic_use)
 Free a vNIC Use. More...
 
void evel_vnic_use_bcast_pkt_in_set (MEASUREMENT_VNIC_USE *const vnic_use, const int broadcast_packets_in)
 Set the Broadcast Packets Received property of the vNIC Use. More...
 
void evel_vnic_use_bcast_pkt_out_set (MEASUREMENT_VNIC_USE *const vnic_use, const int broadcast_packets_out)
 Set the Broadcast Packets Transmitted property of the vNIC Use. More...
 
void evel_vnic_use_mcast_pkt_in_set (MEASUREMENT_VNIC_USE *const vnic_use, const int multicast_packets_in)
 Set the Multicast Packets Received property of the vNIC Use. More...
 
void evel_vnic_use_mcast_pkt_out_set (MEASUREMENT_VNIC_USE *const vnic_use, const int multicast_packets_out)
 Set the Multicast Packets Transmitted property of the vNIC Use. More...
 
void evel_vnic_use_ucast_pkt_in_set (MEASUREMENT_VNIC_USE *const vnic_use, const int unicast_packets_in)
 Set the Unicast Packets Received property of the vNIC Use. More...
 
void evel_vnic_use_ucast_pkt_out_set (MEASUREMENT_VNIC_USE *const vnic_use, const int unicast_packets_out)
 Set the Unicast Packets Transmitted property of the vNIC Use. More...
 
void evel_meas_vnic_use_add (EVENT_MEASUREMENT *const measurement, MEASUREMENT_VNIC_USE *const vnic_use)
 Add an additional vNIC Use to the specified Measurement event. More...
 
void evel_measurement_vnic_use_add (EVENT_MEASUREMENT *const measurement, char *const vnic_id, const int packets_in, const int packets_out, const int broadcast_packets_in, const int broadcast_packets_out, const int bytes_in, const int bytes_out, const int multicast_packets_in, const int multicast_packets_out, const int unicast_packets_in, const int unicast_packets_out)
 Add an additional vNIC usage record Measurement. More...
 
EVENT_REPORTevel_new_report (double measurement_interval)
 Create a new Report event. More...
 
void evel_free_report (EVENT_REPORT *event)
 Free a Report. More...
 
void evel_report_type_set (EVENT_REPORT *report, const char *const type)
 Set the Event Type property of the Report. More...
 
void evel_report_feature_use_add (EVENT_REPORT *report, char *feature, int utilization)
 Add a Feature usage value name/value pair to the Report. More...
 
void evel_report_custom_measurement_add (EVENT_REPORT *report, const char *const group, const char *const name, const char *const value)
 Add a Additional Measurement value name/value pair to the Report. More...
 
EVENT_MOBILE_FLOWevel_new_mobile_flow (const char *const flow_direction, MOBILE_GTP_PER_FLOW_METRICS *gtp_per_flow_metrics, const char *const ip_protocol_type, const char *const ip_version, const char *const other_endpoint_ip_address, int other_endpoint_port, const char *const reporting_endpoint_ip_addr, int reporting_endpoint_port)
 Create a new Mobile Flow event. More...
 
void evel_free_mobile_flow (EVENT_MOBILE_FLOW *event)
 Free a Mobile Flow. More...
 
void evel_mobile_flow_type_set (EVENT_MOBILE_FLOW *mobile_flow, const char *const type)
 Set the Event Type property of the Mobile Flow. More...
 
void evel_mobile_flow_app_type_set (EVENT_MOBILE_FLOW *mobile_flow, const char *const type)
 Set the Application Type property of the Mobile Flow. More...
 
void evel_mobile_flow_app_prot_type_set (EVENT_MOBILE_FLOW *mobile_flow, const char *const type)
 Set the Application Protocol Type property of the Mobile Flow. More...
 
void evel_mobile_flow_app_prot_ver_set (EVENT_MOBILE_FLOW *mobile_flow, const char *const version)
 Set the Application Protocol Version property of the Mobile Flow. More...
 
void evel_mobile_flow_cid_set (EVENT_MOBILE_FLOW *mobile_flow, const char *const cid)
 Set the CID property of the Mobile Flow. More...
 
void evel_mobile_flow_con_type_set (EVENT_MOBILE_FLOW *mobile_flow, const char *const type)
 Set the Connection Type property of the Mobile Flow. More...
 
void evel_mobile_flow_ecgi_set (EVENT_MOBILE_FLOW *mobile_flow, const char *const ecgi)
 Set the ECGI property of the Mobile Flow. More...
 
void evel_mobile_flow_gtp_prot_type_set (EVENT_MOBILE_FLOW *mobile_flow, const char *const type)
 Set the GTP Protocol Type property of the Mobile Flow. More...
 
void evel_mobile_flow_gtp_prot_ver_set (EVENT_MOBILE_FLOW *mobile_flow, const char *const version)
 Set the GTP Protocol Version property of the Mobile Flow. More...
 
void evel_mobile_flow_http_header_set (EVENT_MOBILE_FLOW *mobile_flow, const char *const header)
 Set the HTTP Header property of the Mobile Flow. More...
 
void evel_mobile_flow_imei_set (EVENT_MOBILE_FLOW *mobile_flow, const char *const imei)
 Set the IMEI property of the Mobile Flow. More...
 
void evel_mobile_flow_imsi_set (EVENT_MOBILE_FLOW *mobile_flow, const char *const imsi)
 Set the IMSI property of the Mobile Flow. More...
 
void evel_mobile_flow_lac_set (EVENT_MOBILE_FLOW *mobile_flow, const char *const lac)
 Set the LAC property of the Mobile Flow. More...
 
void evel_mobile_flow_mcc_set (EVENT_MOBILE_FLOW *mobile_flow, const char *const mcc)
 Set the MCC property of the Mobile Flow. More...
 
void evel_mobile_flow_mnc_set (EVENT_MOBILE_FLOW *mobile_flow, const char *const mnc)
 Set the MNC property of the Mobile Flow. More...
 
void evel_mobile_flow_msisdn_set (EVENT_MOBILE_FLOW *mobile_flow, const char *const msisdn)
 Set the MSISDN property of the Mobile Flow. More...
 
void evel_mobile_flow_other_func_role_set (EVENT_MOBILE_FLOW *mobile_flow, const char *const role)
 Set the Other Functional Role property of the Mobile Flow. More...
 
void evel_mobile_flow_rac_set (EVENT_MOBILE_FLOW *mobile_flow, const char *const rac)
 Set the RAC property of the Mobile Flow. More...
 
void evel_mobile_flow_radio_acc_tech_set (EVENT_MOBILE_FLOW *mobile_flow, const char *const tech)
 Set the Radio Access Technology property of the Mobile Flow. More...
 
void evel_mobile_flow_sac_set (EVENT_MOBILE_FLOW *mobile_flow, const char *const sac)
 Set the SAC property of the Mobile Flow. More...
 
void evel_mobile_flow_samp_alg_set (EVENT_MOBILE_FLOW *mobile_flow, int algorithm)
 Set the Sampling Algorithm property of the Mobile Flow. More...
 
void evel_mobile_flow_tac_set (EVENT_MOBILE_FLOW *mobile_flow, const char *const tac)
 Set the TAC property of the Mobile Flow. More...
 
void evel_mobile_flow_tunnel_id_set (EVENT_MOBILE_FLOW *mobile_flow, const char *const tunnel_id)
 Set the Tunnel ID property of the Mobile Flow. More...
 
void evel_mobile_flow_vlan_id_set (EVENT_MOBILE_FLOW *mobile_flow, const char *const vlan_id)
 Set the VLAN ID property of the Mobile Flow. More...
 
MOBILE_GTP_PER_FLOW_METRICSevel_new_mobile_gtp_flow_metrics (double avg_bit_error_rate, double avg_packet_delay_variation, int avg_packet_latency, int avg_receive_throughput, int avg_transmit_throughput, int flow_activation_epoch, int flow_activation_microsec, int flow_deactivation_epoch, int flow_deactivation_microsec, time_t flow_deactivation_time, const char *const flow_status, int max_packet_delay_variation, int num_activation_failures, int num_bit_errors, int num_bytes_received, int num_bytes_transmitted, int num_dropped_packets, int num_l7_bytes_received, int num_l7_bytes_transmitted, int num_lost_packets, int num_out_of_order_packets, int num_packet_errors, int num_packets_received_excl_retrans, int num_packets_received_incl_retrans, int num_packets_transmitted_incl_retrans, int num_retries, int num_timeouts, int num_tunneled_l7_bytes_received, int round_trip_time, int time_to_first_byte)
 Create a new Mobile GTP Per Flow Metrics. More...
 
void evel_free_mobile_gtp_flow_metrics (MOBILE_GTP_PER_FLOW_METRICS *metrics)
 Free a Mobile GTP Per Flow Metrics. More...
 
void evel_mobile_gtp_metrics_dur_con_fail_set (MOBILE_GTP_PER_FLOW_METRICS *metrics, int duration)
 Set the Duration of Connection Failed Status property of the Mobile GTP Per Flow Metrics. More...
 
void evel_mobile_gtp_metrics_dur_tun_fail_set (MOBILE_GTP_PER_FLOW_METRICS *metrics, int duration)
 Set the Duration of Tunnel Failed Status property of the Mobile GTP Per Flow Metrics. More...
 
void evel_mobile_gtp_metrics_act_by_set (MOBILE_GTP_PER_FLOW_METRICS *metrics, const char *const act_by)
 Set the Activated By property of the Mobile GTP Per Flow metrics. More...
 
void evel_mobile_gtp_metrics_act_time_set (MOBILE_GTP_PER_FLOW_METRICS *metrics, time_t act_time)
 Set the Activation Time property of the Mobile GTP Per Flow metrics. More...
 
void evel_mobile_gtp_metrics_deact_by_set (MOBILE_GTP_PER_FLOW_METRICS *metrics, const char *const deact_by)
 Set the Deactivated By property of the Mobile GTP Per Flow metrics. More...
 
void evel_mobile_gtp_metrics_con_status_set (MOBILE_GTP_PER_FLOW_METRICS *metrics, const char *const status)
 Set the GTP Connection Status property of the Mobile GTP Per Flow metrics. More...
 
void evel_mobile_gtp_metrics_tun_status_set (MOBILE_GTP_PER_FLOW_METRICS *metrics, const char *const status)
 Set the GTP Tunnel Status property of the Mobile GTP Per Flow metrics. More...
 
void evel_mobile_gtp_metrics_iptos_set (MOBILE_GTP_PER_FLOW_METRICS *metrics, int index, int count)
 Set an IP Type-of-Service count property of the Mobile GTP Per Flow metrics. More...
 
void evel_mobile_gtp_metrics_large_pkt_rtt_set (MOBILE_GTP_PER_FLOW_METRICS *metrics, int rtt)
 Set the Large Packet Round-Trip Time property of the Mobile GTP Per Flow Metrics. More...
 
void evel_mobile_gtp_metrics_large_pkt_thresh_set (MOBILE_GTP_PER_FLOW_METRICS *metrics, double threshold)
 Set the Large Packet Threshold property of the Mobile GTP Per Flow Metrics. More...
 
void evel_mobile_gtp_metrics_max_rcv_bit_rate_set (MOBILE_GTP_PER_FLOW_METRICS *metrics, int rate)
 Set the Max Receive Bit Rate property of the Mobile GTP Per Flow Metrics. More...
 
void evel_mobile_gtp_metrics_max_trx_bit_rate_set (MOBILE_GTP_PER_FLOW_METRICS *metrics, int rate)
 Set the Max Transmit Bit Rate property of the Mobile GTP Per Flow Metrics. More...
 
void evel_mobile_gtp_metrics_num_echo_fail_set (MOBILE_GTP_PER_FLOW_METRICS *metrics, int num)
 Set the Number of GTP Echo Failures property of the Mobile GTP Per Flow Metrics. More...
 
void evel_mobile_gtp_metrics_num_tun_fail_set (MOBILE_GTP_PER_FLOW_METRICS *metrics, int num)
 Set the Number of GTP Tunnel Errors property of the Mobile GTP Per Flow Metrics. More...
 
void evel_mobile_gtp_metrics_num_http_errors_set (MOBILE_GTP_PER_FLOW_METRICS *metrics, int num)
 Set the Number of HTTP Errors property of the Mobile GTP Per Flow Metrics. More...
 
void evel_mobile_gtp_metrics_tcp_flag_count_add (MOBILE_GTP_PER_FLOW_METRICS *metrics, const EVEL_TCP_FLAGS tcp_flag, const int count)
 Add a TCP flag count to the metrics. More...
 
void evel_mobile_gtp_metrics_qci_cos_count_add (MOBILE_GTP_PER_FLOW_METRICS *metrics, const EVEL_QCI_COS_TYPES qci_cos, const int count)
 Add a QCI COS count to the metrics. More...
 
EVENT_SERVICEevel_new_service (const char *const vendor_id, const char *const event_id)
 Create a new Service event. More...
 
void evel_free_service (EVENT_SERVICE *const event)
 Free a Service Events event. More...
 
void evel_service_type_set (EVENT_SERVICE *const event, const char *const type)
 Set the Event Type property of the Service event. More...
 
void evel_service_product_id_set (EVENT_SERVICE *const event, const char *const product_id)
 Set the Product Id property of the Service event. More...
 
void evel_service_subsystem_id_set (EVENT_SERVICE *const event, const char *const subsystem_id)
 Set the Subsystem Id property of the Service event. More...
 
void evel_service_friendly_name_set (EVENT_SERVICE *const event, const char *const friendly_name)
 Set the Friendly Name property of the Service event. More...
 
void evel_service_correlator_set (EVENT_SERVICE *const event, const char *const correlator)
 Set the correlator property of the Service event. More...
 
void evel_service_codec_set (EVENT_SERVICE *const event, const char *const codec)
 Set the Codec property of the Service event. More...
 
void evel_service_callee_codec_set (EVENT_SERVICE *const event, const char *const codec)
 Set the Callee Side Codec property of the Service event. More...
 
void evel_service_caller_codec_set (EVENT_SERVICE *const event, const char *const codec)
 Set the Caller Side Codec property of the Service event. More...
 
void evel_service_rtcp_data_set (EVENT_SERVICE *const event, const char *const rtcp_data)
 Set the RTCP Data property of the Service event. More...
 
void evel_service_adjacency_name_set (EVENT_SERVICE *const event, const char *const adjacency_name)
 Set the Adjacency Name property of the Service event. More...
 
void evel_service_endpoint_desc_set (EVENT_SERVICE *const event, const EVEL_SERVICE_ENDPOINT_DESC endpoint_desc)
 Set the Endpoint Descriptor property of the Service event. More...
 
void evel_service_endpoint_jitter_set (EVENT_SERVICE *const event, const int jitter)
 Set the Endpoint Jitter property of the Service event. More...
 
void evel_service_endpoint_rtp_oct_disc_set (EVENT_SERVICE *const event, const int rtp_oct_disc)
 Set the Endpoint Rtp Octets Discarded property of the Service event. More...
 
void evel_service_endpoint_rtp_oct_recv_set (EVENT_SERVICE *const event, const int rtp_oct_recv)
 Set the Endpoint Rtp Octets Received property of the Service event. More...
 
void evel_service_endpoint_rtp_oct_sent_set (EVENT_SERVICE *const event, const int rtp_oct_sent)
 Set the Endpoint Rtp Octets Sent property of the Service event. More...
 
void evel_service_endpoint_rtp_pkt_disc_set (EVENT_SERVICE *const event, const int rtp_pkt_disc)
 Set the Endpoint Rtp Packets Discarded property of the Service event. More...
 
void evel_service_endpoint_rtp_pkt_recv_set (EVENT_SERVICE *const event, const int rtp_pkt_recv)
 Set the Endpoint Rtp Packets Received property of the Service event. More...
 
void evel_service_endpoint_rtp_pkt_sent_set (EVENT_SERVICE *const event, const int rtp_pkt_sent)
 Set the Endpoint Rtp Packets Sent property of the Service event. More...
 
void evel_service_local_jitter_set (EVENT_SERVICE *const event, const int jitter)
 Set the Local Jitter property of the Service event. More...
 
void evel_service_local_rtp_oct_disc_set (EVENT_SERVICE *const event, const int rtp_oct_disc)
 Set the Local Rtp Octets Discarded property of the Service event. More...
 
void evel_service_local_rtp_oct_recv_set (EVENT_SERVICE *const event, const int rtp_oct_recv)
 Set the Local Rtp Octets Received property of the Service event. More...
 
void evel_service_local_rtp_oct_sent_set (EVENT_SERVICE *const event, const int rtp_oct_sent)
 Set the Local Rtp Octets Sent property of the Service event. More...
 
void evel_service_local_rtp_pkt_disc_set (EVENT_SERVICE *const event, const int rtp_pkt_disc)
 Set the Local Rtp Packets Discarded property of the Service event. More...
 
void evel_service_local_rtp_pkt_recv_set (EVENT_SERVICE *const event, const int rtp_pkt_recv)
 Set the Local Rtp Packets Received property of the Service event. More...
 
void evel_service_local_rtp_pkt_sent_set (EVENT_SERVICE *const event, const int rtp_pkt_sent)
 Set the Local Rtp Packets Sent property of the Service event. More...
 
void evel_service_mos_cqe_set (EVENT_SERVICE *const event, const double mos_cqe)
 Set the Mos Cqe property of the Service event. More...
 
void evel_service_packets_lost_set (EVENT_SERVICE *const event, const int packets_lost)
 Set the Packets Lost property of the Service event. More...
 
void evel_service_packet_loss_percent_set (EVENT_SERVICE *const event, const double packet_loss_percent)
 Set the packet Loss Percent property of the Service event. More...
 
void evel_service_r_factor_set (EVENT_SERVICE *const event, const int r_factor)
 Set the R Factor property of the Service event. More...
 
void evel_service_round_trip_delay_set (EVENT_SERVICE *const event, const int round_trip_delay)
 Set the Round Trip Delay property of the Service event. More...
 
void evel_service_phone_number_set (EVENT_SERVICE *const event, const char *const phone_number)
 Set the Phone Number property of the Service event. More...
 
void evel_service_addl_field_add (EVENT_SERVICE *const event, const char *const name, const char *const value)
 Add a name/value pair to the Service, under the additionalFields array. More...
 
EVENT_SIGNALINGevel_new_signaling (const char *const vendor_id, const char *const event_id)
 Create a new Signaling event. More...
 
void evel_free_signaling (EVENT_SIGNALING *const event)
 Free a Signaling event. More...
 
void evel_signaling_type_set (EVENT_SIGNALING *const event, const char *const type)
 Set the Event Type property of the Signaling event. More...
 
void evel_signaling_product_id_set (EVENT_SIGNALING *const event, const char *const product_id)
 Set the Product Id property of the Signaling event. More...
 
void evel_signaling_subsystem_id_set (EVENT_SIGNALING *const event, const char *const subsystem_id)
 Set the Subsystem Id property of the Signaling event. More...
 
void evel_signaling_friendly_name_set (EVENT_SIGNALING *const event, const char *const friendly_name)
 Set the Friendly Name property of the Signaling event. More...
 
void evel_signaling_correlator_set (EVENT_SIGNALING *const event, const char *const correlator)
 Set the Correlator property of the Signaling event. More...
 
void evel_signaling_local_ip_address_set (EVENT_SIGNALING *const event, const char *const local_ip_address)
 Set the Local Ip Address property of the Signaling event. More...
 
void evel_signaling_local_port_set (EVENT_SIGNALING *const event, const char *const local_port)
 Set the Local Port property of the Signaling event. More...
 
void evel_signaling_remote_ip_address_set (EVENT_SIGNALING *const event, const char *const remote_ip_address)
 Set the Remote Ip Address property of the Signaling event. More...
 
void evel_signaling_remote_port_set (EVENT_SIGNALING *const event, const char *const remote_port)
 Set the Remote Port property of the Signaling event. More...
 
void evel_signaling_compressed_sip_set (EVENT_SIGNALING *const event, const char *const compressed_sip)
 Set the Compressed SIP property of the Signaling event. More...
 
void evel_signaling_summary_sip_set (EVENT_SIGNALING *const event, const char *const summary_sip)
 Set the Summary SIP property of the Signaling event. More...
 
EVENT_STATE_CHANGEevel_new_state_change (const EVEL_ENTITY_STATE new_state, const EVEL_ENTITY_STATE old_state, const char *const interface)
 Create a new State Change event. More...
 
void evel_free_state_change (EVENT_STATE_CHANGE *const state_change)
 Free a State Change. More...
 
void evel_state_change_type_set (EVENT_STATE_CHANGE *const state_change, const char *const type)
 Set the Event Type property of the State Change. More...
 
void evel_state_change_addl_field_add (EVENT_STATE_CHANGE *const state_change, const char *const name, const char *const value)
 Add an additional field name/value pair to the State Change. More...
 
EVENT_SYSLOGevel_new_syslog (EVEL_SOURCE_TYPES event_source_type, const char *const syslog_msg, const char *const syslog_tag)
 Create a new syslog event. More...
 
void evel_syslog_type_set (EVENT_SYSLOG *syslog, const char *const type)
 Set the Event Type property of the Syslog. More...
 
void evel_free_syslog (EVENT_SYSLOG *event)
 Free a Syslog. More...
 
void evel_syslog_addl_field_add (EVENT_SYSLOG *syslog, char *name, char *value)
 Add an additional field name/value pair to the Syslog. More...
 
void evel_syslog_event_source_host_set (EVENT_SYSLOG *syslog, const char *const host)
 Set the Event Source Host property of the Syslog. More...
 
void evel_syslog_facility_set (EVENT_SYSLOG *syslog, EVEL_SYSLOG_FACILITIES facility)
 Set the Syslog Facility property of the Syslog. More...
 
void evel_syslog_proc_set (EVENT_SYSLOG *syslog, const char *const proc)
 Set the Process property of the Syslog. More...
 
void evel_syslog_proc_id_set (EVENT_SYSLOG *syslog, int proc_id)
 Set the Process ID property of the Syslog. More...
 
void evel_syslog_version_set (EVENT_SYSLOG *syslog, int version)
 Set the Version property of the Syslog. More...
 
void evel_syslog_s_data_set (EVENT_SYSLOG *syslog, const char *const s_data)
 Set the Structured Data property of the Syslog. More...
 
EVENT_OTHERevel_new_other (void)
 Create a new other event. More...
 
void evel_free_other (EVENT_OTHER *event)
 Free an Other. More...
 
void evel_other_type_set (EVENT_OTHER *other, const char *const type)
 Set the Event Type property of the Other. More...
 
void evel_other_field_add (EVENT_OTHER *other, char *name, char *value)
 Add a value name/value pair to the Other. More...
 
int evel_get_measurement_interval ()
 Return the current measurement interval provided by the Event Listener. More...
 
void log_initialize (EVEL_LOG_LEVELS level, const char *ident)
 Initialize logging. More...
 
void log_debug (EVEL_LOG_LEVELS level, char *format,...)
 Log debug information. More...
 
void log_error_state (char *format,...)
 

Variables

EVEL_LOG_LEVELS debug_level
 
int debug_indent
 
FILE * fout
 

Detailed Description

Header for EVEL library.

This file implements the EVEL library which is intended to provide a simple wrapper around the complexity of AT&T's Vendor Event Listener API so that VNFs can use it without worrying about details of the API transport.

Zero return value is success (EVEL_SUCCESS), non-zero is failure and will be one of EVEL_ERR_CODES.

License

Copyright(c) <2016>, AT&T Intellectual Property. All other rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  3. All advertising materials mentioning features or use of this software must display the following acknowledgement: This product includes software developed by the AT&T.
  4. Neither the name of AT&T nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY AT&T INTELLECTUAL PROPERTY ''AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL AT&T INTELLECTUAL PROPERTY BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Definition in file evel.h.

Macro Definition Documentation

§ EVEL_API_MAJOR_VERSION

#define EVEL_API_MAJOR_VERSION   3

Definition at line 60 of file evel.h.

§ EVEL_API_MINOR_VERSION

#define EVEL_API_MINOR_VERSION   0

Definition at line 61 of file evel.h.

§ EVEL_DEBUG

#define EVEL_DEBUG (   FMT,
  ... 
)    log_debug(EVEL_LOG_DEBUG, (FMT), ##__VA_ARGS__)

Definition at line 3621 of file evel.h.

§ EVEL_DEBUG_ON

#define EVEL_DEBUG_ON ( )    ((debug_level) >= EVEL_LOG_DEBUG)

Definition at line 3644 of file evel.h.

§ EVEL_ENTER

#define EVEL_ENTER ( )
Value:
{ \
log_debug(EVEL_LOG_DEBUG, "Enter %s {", __FUNCTION__); \
debug_indent += 2; \
}

Definition at line 3626 of file evel.h.

§ EVEL_ERROR

#define EVEL_ERROR (   FMT,
  ... 
)
Value:
log_debug(EVEL_LOG_ERROR, "ERROR: " FMT, \
##__VA_ARGS__)
void log_debug(EVEL_LOG_LEVELS level, char *format,...)
Log debug information.
Definition: evel_logging.c:120

Definition at line 3624 of file evel.h.

§ EVEL_EXIT

#define EVEL_EXIT ( )
Value:
{ \
debug_indent -= 2; \
log_debug(EVEL_LOG_DEBUG, "Exit %s }", __FUNCTION__); \
}

Definition at line 3631 of file evel.h.

§ EVEL_FAULT_MAJOR_VERSION

#define EVEL_FAULT_MAJOR_VERSION   1

Definition at line 442 of file evel.h.

§ EVEL_FAULT_MINOR_VERSION

#define EVEL_FAULT_MINOR_VERSION   1

Definition at line 443 of file evel.h.

§ EVEL_HEADER_MAJOR_VERSION

#define EVEL_HEADER_MAJOR_VERSION   1

Definition at line 403 of file evel.h.

§ EVEL_HEADER_MINOR_VERSION

#define EVEL_HEADER_MINOR_VERSION   2

Definition at line 404 of file evel.h.

§ EVEL_INFO

#define EVEL_INFO (   FMT,
  ... 
)    log_debug(EVEL_LOG_INFO, (FMT), ##__VA_ARGS__)

Definition at line 3622 of file evel.h.

§ EVEL_MAX_ERROR_STRING_LEN

#define EVEL_MAX_ERROR_STRING_LEN   255

Definition at line 102 of file evel.h.

§ EVEL_MAX_JSON_BODY

#define EVEL_MAX_JSON_BODY   16000

Definition at line 101 of file evel.h.

§ EVEL_MAX_STRING_LEN

#define EVEL_MAX_STRING_LEN   4096

Definition at line 100 of file evel.h.

§ EVEL_MAX_URL_LEN

#define EVEL_MAX_URL_LEN   511

Definition at line 103 of file evel.h.

§ EVEL_MEASUREMENT_MAJOR_VERSION

#define EVEL_MEASUREMENT_MAJOR_VERSION   1

Definition at line 486 of file evel.h.

§ EVEL_MEASUREMENT_MINOR_VERSION

#define EVEL_MEASUREMENT_MINOR_VERSION   1

Definition at line 487 of file evel.h.

§ EVEL_MOBILE_FLOW_MAJOR_VERSION

#define EVEL_MOBILE_FLOW_MAJOR_VERSION   1

Definition at line 733 of file evel.h.

§ EVEL_MOBILE_FLOW_MINOR_VERSION

#define EVEL_MOBILE_FLOW_MINOR_VERSION   1

Definition at line 734 of file evel.h.

§ EVEL_REPORT_MAJOR_VERSION

#define EVEL_REPORT_MAJOR_VERSION   1

Definition at line 640 of file evel.h.

§ EVEL_REPORT_MINOR_VERSION

#define EVEL_REPORT_MINOR_VERSION   1

Definition at line 641 of file evel.h.

§ EVEL_SERVICE_MAJOR_VERSION

#define EVEL_SERVICE_MAJOR_VERSION   1

Definition at line 832 of file evel.h.

§ EVEL_SERVICE_MINOR_VERSION

#define EVEL_SERVICE_MINOR_VERSION   1

Definition at line 833 of file evel.h.

§ EVEL_SIGNALING_MAJOR_VERSION

#define EVEL_SIGNALING_MAJOR_VERSION   1

Definition at line 909 of file evel.h.

§ EVEL_SIGNALING_MINOR_VERSION

#define EVEL_SIGNALING_MINOR_VERSION   1

Definition at line 910 of file evel.h.

§ EVEL_SPAMMY

#define EVEL_SPAMMY (   FMT,
  ... 
)    log_debug(EVEL_LOG_SPAMMY, (FMT), ##__VA_ARGS__)

Definition at line 3623 of file evel.h.

§ EVEL_STATE_CHANGE_MAJOR_VERSION

#define EVEL_STATE_CHANGE_MAJOR_VERSION   1

Definition at line 945 of file evel.h.

§ EVEL_STATE_CHANGE_MINOR_VERSION

#define EVEL_STATE_CHANGE_MINOR_VERSION   1

Definition at line 946 of file evel.h.

§ EVEL_SYSLOG_MAJOR_VERSION

#define EVEL_SYSLOG_MAJOR_VERSION   1

Definition at line 986 of file evel.h.

§ EVEL_SYSLOG_MINOR_VERSION

#define EVEL_SYSLOG_MINOR_VERSION   1

Definition at line 987 of file evel.h.

§ EVEL_TOS_SUPPORTED

#define EVEL_TOS_SUPPORTED   256

Definition at line 124 of file evel.h.

§ INDENT_SEPARATORS

#define INDENT_SEPARATORS   "| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | "

Definition at line 3637 of file evel.h.

Typedef Documentation

§ COPYRIGHT

typedef struct copyright COPYRIGHT

Copyright.

JSON equivalent object: attCopyrightNotice

§ CUSTOM_MEASUREMENT

Custom Defined Measurement.

JSON equivalent field: measurements

§ EVEL_EVENT_INSTANCE_ID

Event Instance Identifier JSON equivalent field: eventInstanceIdentifier.

§ EVEL_OPTION_DOUBLE

Optional parameter holder for double.

§ EVEL_OPTION_INT

Optional parameter holder for int.

§ EVEL_OPTION_STRING

Optional parameter holder for string.

§ EVEL_OPTION_TIME

Optional parameter holder for time_t.

§ EVEL_OPTION_ULL

Optional parameter holder for unsigned long long.

§ EVENT_FAULT

typedef struct event_fault EVENT_FAULT

Fault.

JSON equivalent field: faultFields

§ EVENT_HEADER

typedef struct event_header EVENT_HEADER

Event header.

JSON equivalent field: commonEventHeader

§ EVENT_MEASUREMENT

Measurement.

JSON equivalent field: measurementsForVfScalingFields

§ EVENT_MOBILE_FLOW

Mobile Flow.

JSON equivalent field: mobileFlow

§ EVENT_OTHER

typedef struct event_other EVENT_OTHER

Other.

JSON equivalent field: otherFields

§ EVENT_REPORT

typedef struct event_report EVENT_REPORT

Report.

JSON equivalent field: measurementsForVfReportingFields

Note
This is an experimental event type and is not currently a formal part of AT&T's specification.

§ EVENT_SERVICE

typedef struct event_service EVENT_SERVICE

Service Events.

JSON equivalent field: serviceEventsFields

§ EVENT_SIGNALING

Signaling.

JSON equivalent field: signalingFields

§ EVENT_STATE_CHANGE

State Change.

JSON equivalent field: stateChangeFields

§ EVENT_SYSLOG

typedef struct event_syslog EVENT_SYSLOG

Syslog.

JSON equivalent field: syslogFields

§ FAULT_ADDL_INFO

Fault Additional Info.

JSON equivalent field: alarmAdditionalInformation

§ MEASUREMENT_CODEC_USE

Codec Usage.

JSON equivalent field: codecsInUse

§ MEASUREMENT_CPU_USE

CPU Usage.

JSON equivalent field: cpuUsage

§ MEASUREMENT_ERRORS

Errors.

JSON equivalent field: errors

§ MEASUREMENT_FEATURE_USE

Feature Usage.

JSON equivalent field: featuresInUse

§ MEASUREMENT_FSYS_USE

Filesystem Usage.

JSON equivalent field: filesystemUsage

§ MEASUREMENT_GROUP

Measurement Group.

JSON equivalent field: additionalMeasurements

§ MEASUREMENT_LATENCY_BUCKET

Latency Bucket.

JSON equivalent field: latencyBucketMeasure

§ MEASUREMENT_VNIC_USE

Virtual NIC usage.

JSON equivalent field: vNicUsage

§ MOBILE_GTP_PER_FLOW_METRICS

Mobile GTP Per Flow Metrics.

JSON equivalent field: gtpPerFlowMetrics

§ OTHER_FIELD

typedef struct other_field OTHER_FIELD

Other Field.

JSON equivalent field: otherFields

§ STATE_CHANGE_ADDL_FIELD

State Change Additional Field.

JSON equivalent field: additionalFields

§ SYSLOG_ADDL_FIELD

Syslog Additional Field.

JSON equivalent field: additionalFields

Enumeration Type Documentation

§ EVEL_ALERT_ACTIONS

Alert actions.

JSON equivalent field: alertAction

Enumerator
EVEL_ALERT_ACTION_CLEAR 
EVEL_ALERT_ACTION_CONT 
EVEL_ALERT_ACTION_SET 
EVEL_MAX_ALERT_ACTIONS 

Definition at line 225 of file evel.h.

§ EVEL_ALERT_TYPES

Alert types.

JSON equivalent field: alertType

Enumerator
EVEL_ALERT_TYPE_CARD 
EVEL_ALERT_TYPE_ELEMENT 
EVEL_ALERT_TYPE_INTERFACE 
EVEL_ALERT_TYPE_SERVICE 
EVEL_MAX_ALERT_TYPES 

Definition at line 236 of file evel.h.

§ EVEL_BOOLEAN

Boolean type for EVEL library.

Enumerator
EVEL_FALSE 
EVEL_TRUE 

Definition at line 350 of file evel.h.

§ EVEL_COUNTER_CRITICALITIES

Counter criticalities.

JSON equivalent field: criticality

Enumerator
EVEL_COUNTER_CRITICALITY_CRIT 
EVEL_COUNTER_CRITICALITY_MAJ 
EVEL_MAX_COUNTER_CRITICALITIES 

Definition at line 215 of file evel.h.

§ EVEL_ENTITY_STATE

Alert types.

JSON equivalent fields: newState, oldState

Enumerator
EVEL_ENTITY_STATE_IN_SERVICE 
EVEL_ENTITY_STATE_MAINTENANCE 
EVEL_ENTITY_STATE_OUT_OF_SERVICE 
EVEL_MAX_ENTITY_STATES 

Definition at line 248 of file evel.h.

§ EVEL_ERR_CODES

Error codes.

Error codes for EVEL low level interface

Enumerator
EVEL_SUCCESS 
EVEL_ERR_GEN_FAIL 

The operation was successful.

EVEL_CURL_LIBRARY_FAIL 

Non-specific failure.

EVEL_PTHREAD_LIBRARY_FAIL 

A cURL library operation failed.

EVEL_OUT_OF_MEMORY 

A Posix threads operation failed.

EVEL_EVENT_BUFFER_FULL 

A memory allocation failure occurred.

EVEL_EVENT_HANDLER_INACTIVE 

Too many events in the ring-buffer.

EVEL_NO_METADATA 

Attempt to raise event when inactive.

EVEL_BAD_METADATA 

Failed to retrieve OpenStack metadata.

EVEL_BAD_JSON_FORMAT 

OpenStack metadata invalid format.

EVEL_JSON_KEY_NOT_FOUND 

JSON failed to parse correctly.

EVEL_MAX_ERROR_CODES 

Failed to find the specified JSON key.

Maximum number of valid error codes.

Definition at line 68 of file evel.h.

§ EVEL_EVENT_DOMAINS

Event domains for the various events we support.

JSON equivalent field: domain

Enumerator
EVEL_DOMAIN_INTERNAL 
EVEL_DOMAIN_HEARTBEAT 

Internal event, not for external routing.

EVEL_DOMAIN_FAULT 

A Heartbeat event (event header only).

EVEL_DOMAIN_MEASUREMENT 

A Fault event.

EVEL_DOMAIN_MOBILE_FLOW 

A Measurement for VF Scaling event.

EVEL_DOMAIN_REPORT 

A Mobile Flow event.

EVEL_DOMAIN_SERVICE 

A Measurement for VF Reporting event.

EVEL_DOMAIN_SIGNALING 

A Service event.

EVEL_DOMAIN_STATE_CHANGE 

A Signaling event.

EVEL_DOMAIN_SYSLOG 

A State Change event.

EVEL_DOMAIN_OTHER 

A Syslog event.

EVEL_MAX_DOMAINS 

Another event.

Maximum number of recognized Event types.

Definition at line 130 of file evel.h.

§ EVEL_EVENT_PRIORITIES

Event priorities.

JSON equivalent field: priority

Enumerator
EVEL_PRIORITY_HIGH 
EVEL_PRIORITY_MEDIUM 
EVEL_PRIORITY_NORMAL 
EVEL_PRIORITY_LOW 
EVEL_MAX_PRIORITIES 

Definition at line 149 of file evel.h.

§ EVEL_LOG_LEVELS

Logging levels.

Variable levels of verbosity in the logging functions.

Enumerator
EVEL_LOG_MIN 
EVEL_LOG_SPAMMY 
EVEL_LOG_DEBUG 
EVEL_LOG_INFO 
EVEL_LOG_ERROR 
EVEL_LOG_MAX 

Definition at line 88 of file evel.h.

§ EVEL_QCI_COS_TYPES

Mobile QCI Classes of Service.

JSON equivalent fields: mobileQciCosCountList, mobileQciCosList

Enumerator
EVEL_QCI_COS_UMTS_CONVERSATIONAL 
EVEL_QCI_COS_UMTS_STREAMING 
EVEL_QCI_COS_UMTS_INTERACTIVE 
EVEL_QCI_COS_UMTS_BACKGROUND 
EVEL_QCI_COS_LTE_1 
EVEL_QCI_COS_LTE_2 
EVEL_QCI_COS_LTE_3 
EVEL_QCI_COS_LTE_4 
EVEL_QCI_COS_LTE_65 
EVEL_QCI_COS_LTE_66 
EVEL_QCI_COS_LTE_5 
EVEL_QCI_COS_LTE_6 
EVEL_QCI_COS_LTE_7 
EVEL_QCI_COS_LTE_8 
EVEL_QCI_COS_LTE_9 
EVEL_QCI_COS_LTE_69 
EVEL_QCI_COS_LTE_70 
EVEL_MAX_QCI_COS_TYPES 

Definition at line 308 of file evel.h.

§ EVEL_SERVICE_ENDPOINT_DESC

Service Event endpoint description JSON equivalent field: endpointDesc.

Enumerator
EVEL_SERVICE_ENDPOINT_CALLEE 
EVEL_SERVICE_ENDPOINT_CALLER 
EVEL_MAX_SERVICE_ENDPOINT_DESC 

Definition at line 341 of file evel.h.

§ EVEL_SEVERITIES

Fault / Threshold severities.

JSON equivalent field: eventSeverity

Enumerator
EVEL_SEVERITY_CRITICAL 
EVEL_SEVERITY_MAJOR 
EVEL_SEVERITY_MINOR 
EVEL_SEVERITY_WARNING 
EVEL_SEVERITY_NORMAL 
EVEL_MAX_SEVERITIES 

Definition at line 161 of file evel.h.

§ EVEL_SOURCE_TYPES

Fault source types.

JSON equivalent field: eventSourceType

Enumerator
EVEL_SOURCE_OTHER 
EVEL_SOURCE_ROUTER 
EVEL_SOURCE_SWITCH 
EVEL_SOURCE_HOST 
EVEL_SOURCE_CARD 
EVEL_SOURCE_PORT 
EVEL_SOURCE_SLOT_THRESHOLD 
EVEL_SOURCE_PORT_THRESHOLD 
EVEL_SOURCE_VIRTUAL_MACHINE 
EVEL_SOURCE_VIRTUAL_NETWORK_FUNCTION 
EVEL_MAX_SOURCE_TYPES 

Definition at line 174 of file evel.h.

§ EVEL_SYSLOG_FACILITIES

Syslog facilities.

JSON equivalent field: syslogFacility

Enumerator
EVEL_SYSLOG_FACILITY_KERNEL 
EVEL_SYSLOG_FACILITY_USER 
EVEL_SYSLOG_FACILITY_MAIL 
EVEL_SYSLOG_FACILITY_SYSTEM_DAEMON 
EVEL_SYSLOG_FACILITY_SECURITY_AUTH 
EVEL_SYSLOG_FACILITY_INTERNAL 
EVEL_SYSLOG_FACILITY_LINE_PRINTER 
EVEL_SYSLOG_FACILITY_NETWORK_NEWS 
EVEL_SYSLOG_FACILITY_UUCP 
EVEL_SYSLOG_FACILITY_CLOCK_DAEMON 
EVEL_SYSLOG_FACILITY_SECURITY_AUTH2 
EVEL_SYSLOG_FACILITY_FTP_DAEMON 
EVEL_SYSLOG_FACILITY_NTP 
EVEL_SYSLOG_FACILITY_LOG_AUDIT 
EVEL_SYSLOG_FACILITY_LOG_ALERT 
EVEL_SYSLOG_FACILITY_CLOCK_DAEMON2 
EVEL_SYSLOG_FACILITY_LOCAL0 
EVEL_SYSLOG_FACILITY_LOCAL1 
EVEL_SYSLOG_FACILITY_LOCAL2 
EVEL_SYSLOG_FACILITY_LOCAL3 
EVEL_SYSLOG_FACILITY_LOCAL4 
EVEL_SYSLOG_FACILITY_LOCAL5 
EVEL_SYSLOG_FACILITY_LOCAL6 
EVEL_SYSLOG_FACILITY_LOCAL7 
EVEL_MAX_SYSLOG_FACILITIES 

Definition at line 259 of file evel.h.

§ EVEL_TCP_FLAGS

TCP flags.

JSON equivalent fields: tcpFlagCountList, tcpFlagList

Enumerator
EVEL_TCP_NS 
EVEL_TCP_CWR 
EVEL_TCP_ECE 
EVEL_TCP_URG 
EVEL_TCP_ACK 
EVEL_TCP_PSH 
EVEL_TCP_RST 
EVEL_TCP_SYN 
EVEL_TCP_FIN 
EVEL_MAX_TCP_FLAGS 

Definition at line 291 of file evel.h.

§ EVEL_VF_STATUSES

Fault VNF Status.

JSON equivalent field: vfStatus

Enumerator
EVEL_VF_STATUS_ACTIVE 
EVEL_VF_STATUS_IDLE 
EVEL_VF_STATUS_PREP_TERMINATE 
EVEL_VF_STATUS_READY_TERMINATE 
EVEL_VF_STATUS_REQ_TERMINATE 
EVEL_MAX_VF_STATUSES 

Definition at line 202 of file evel.h.

Function Documentation

§ evel_error_string()

const char* evel_error_string ( void  )

Descriptive text for library errors.

Return a text error string that relates to the last failure. May be "<null>" but will never be NULL.

Returns
Text error string.
Note
Must not be freed!

Definition at line 87 of file evel_logging.c.

§ evel_fault_addl_info_add()

void evel_fault_addl_info_add ( EVENT_FAULT fault,
char *  name,
char *  value 
)

Add an additional value name/value pair to the Fault.

The name and value are null delimited ASCII strings. The library takes a copy so the caller does not have to preserve values after the function returns.

Parameters
faultPointer to the fault.
nameASCIIZ string with the attribute's name.
valueASCIIZ string with the attribute's value.

The name and value are null delimited ASCII strings. The library takes a copy so the caller does not have to preserve values after the function returns.

Parameters
faultPointer to the fault.
nameASCIIZ string with the attribute's name. The caller does not need to preserve the value once the function returns.
valueASCIIZ string with the attribute's value. The caller does not need to preserve the value once the function returns.

Definition at line 125 of file evel_fault.c.

§ evel_fault_interface_set()

void evel_fault_interface_set ( EVENT_FAULT fault,
const char *const  interface 
)

Set the Alarm Interface A property of the Fault.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
faultPointer to the fault.
interfaceThe Alarm Interface A to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 164 of file evel_fault.c.

§ evel_fault_type_set()

void evel_fault_type_set ( EVENT_FAULT fault,
const char *const  type 
)

Set the Event Type property of the Fault.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
faultPointer to the fault.
typeThe Event Type to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 194 of file evel_fault.c.

§ evel_free_event()

void evel_free_event ( void *  event)

Free an event.

Free off the event supplied. Will free all the contained allocated memory.

Note
It is safe to free a NULL pointer.

Definition at line 299 of file evel.c.

§ evel_free_fault()

void evel_free_fault ( EVENT_FAULT event)

Free a Fault.

Free off the Fault supplied. Will free all the contained allocated memory.

Note
It does not free the Fault itself, since that may be part of a larger structure.

Definition at line 304 of file evel_fault.c.

§ evel_free_header()

void evel_free_header ( EVENT_HEADER *const  event)

Free an event header.

Free off the event header supplied. Will free all the contained allocated memory.

Note
It does not free the header itself, since that may be part of a larger structure.

Definition at line 349 of file evel_event.c.

§ evel_free_measurement()

void evel_free_measurement ( EVENT_MEASUREMENT event)

Free a Measurement.

Free off the Measurement supplied. Will free all the contained allocated memory.

Note
It does not free the Measurement itself, since that may be part of a larger structure.

Definition at line 1607 of file evel_scaling_measurement.c.

§ evel_free_measurement_vnic_use()

void evel_free_measurement_vnic_use ( MEASUREMENT_VNIC_USE *const  vnic_use)

Free a vNIC Use.

Free off the MEASUREMENT_VNIC_USE supplied. Will free all the contained allocated memory.

Note
It does not free the vNIC Use itself, since that may be part of a larger structure.

Definition at line 955 of file evel_scaling_measurement.c.

§ evel_free_mobile_flow()

void evel_free_mobile_flow ( EVENT_MOBILE_FLOW event)

Free a Mobile Flow.

Free off the Mobile Flow supplied. Will free all the contained allocated memory.

Note
It does not free the Mobile Flow itself, since that may be part of a larger structure.

Definition at line 980 of file evel_mobile_flow.c.

§ evel_free_mobile_gtp_flow_metrics()

void evel_free_mobile_gtp_flow_metrics ( MOBILE_GTP_PER_FLOW_METRICS metrics)

Free a Mobile GTP Per Flow Metrics.

Free off the Mobile GTP Per Flow Metrics supplied. Will free all the contained allocated memory.

Note
It does not free the Mobile GTP Per Flow Metrics itself, since that may be part of a larger structure.

Definition at line 2016 of file evel_mobile_flow.c.

§ evel_free_other()

void evel_free_other ( EVENT_OTHER event)

Free an Other.

Free off the Other supplied. Will free all the contained allocated memory.

Note
It does not free the Other itself, since that may be part of a larger structure.

Definition at line 201 of file evel_other.c.

§ evel_free_report()

void evel_free_report ( EVENT_REPORT event)

Free a Report.

Free off the Report supplied. Will free all the contained allocated memory.

Note
It does not free the Report itself, since that may be part of a larger structure.

Definition at line 400 of file evel_reporting_measurement.c.

§ evel_free_service()

void evel_free_service ( EVENT_SERVICE *const  event)

Free a Service Events event.

Free off the event supplied. Will free all the contained allocated memory.

Note
It does not free the event itself, since that may be part of a larger structure.

Free a Service Events event.

Free off the event supplied. Will free all the contained allocated memory.

Note
It does not free the event itself, since that may be part of a larger structure.

Definition at line 1277 of file evel_service.c.

§ evel_free_signaling()

void evel_free_signaling ( EVENT_SIGNALING *const  event)

Free a Signaling event.

Free off the event supplied. Will free all the contained allocated memory.

Note
It does not free the event itself, since that may be part of a larger structure.

Definition at line 487 of file evel_signaling.c.

§ evel_free_state_change()

void evel_free_state_change ( EVENT_STATE_CHANGE *const  state_change)

Free a State Change.

Free off the State Change supplied. Will free all the contained allocated memory.

Note
It does not free the State Change itself, since that may be part of a larger structure.

Definition at line 111 of file evel_state_change.c.

§ evel_free_syslog()

void evel_free_syslog ( EVENT_SYSLOG event)

Free a Syslog.

Free off the Syslog supplied. Will free all the contained allocated memory.

Note
It does not free the Syslog itself, since that may be part of a larger structure.

Definition at line 464 of file evel_syslog.c.

§ evel_get_measurement_interval()

int evel_get_measurement_interval ( )

Return the current measurement interval provided by the Event Listener.

Returns
The current measurement interval
Return values
EVEL_MEASUREMENT_INTERVAL_UKNOWN(0) - interval has not been specified

Definition at line 206 of file evel_throttle.c.

§ evel_header_type_set()

void evel_header_type_set ( EVENT_HEADER *const  header,
const char *const  type 
)

Set the Event Type property of the event header.

Parameters
headerPointer to the EVENT_HEADER.
typeThe Event Type to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.
Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
headerPointer to the EVENT_HEADER.
typeThe Event Type to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 164 of file evel_event.c.

§ evel_init_header()

void evel_init_header ( EVENT_HEADER *const  header)

Initialize a newly created event header.

Parameters
headerPointer to the header being initialized.

Definition at line 112 of file evel_event.c.

§ evel_initialize()

EVEL_ERR_CODES evel_initialize ( const char *const  fqdn,
int  port,
const char *const  path,
const char *const  topic,
int  secure,
const char *const  username,
const char *const  password,
EVEL_SOURCE_TYPES  source_type,
const char *const  role,
int  verbosity 
)

Library initialization.

Initialize the EVEL library.

Note
This function initializes the cURL library. Applications making use of libcurl may need to pull the initialization out of here. Note also that this function is not threadsafe as a result - refer to libcurl's API documentation for relevant warnings.
See also
Matching Term function.
Parameters
fqdnThe API's FQDN or IP address.
portThe API's port.
pathThe optional path (may be NULL).
topicThe optional topic part of the URL (may be NULL).
secureWhether to use HTTPS (0=HTTP, 1=HTTPS).
usernameUsername for Basic Authentication of requests.
passwordPassword for Basic Authentication of requests.
source_typeThe kind of node we represent.
roleThe role this node undertakes.
verbosity0 for normal operation, positive values for chattier logs.
Returns
Status code
Return values
EVEL_SUCCESSOn success
EVEL_ERR_CODESOn failure.

Initialize the EVEL library.

Note
This function initializes the cURL library. Applications making use of libcurl may need to pull the initialization out of here. Note also that this function is not threadsafe as a result - refer to libcurl's API documentation for relevant warnings.
See also
Matching Term function.
Parameters
fqdnThe API's FQDN or IP address.
portThe API's port.
pathThe optional path (may be NULL).
topicThe optional topic part of the URL (may be NULL).
secureWhether to use HTTPS (0=HTTP, 1=HTTPS)
usernameUsername for Basic Authentication of requests.
passwordPassword for Basic Authentication of requests.
source_typeThe kind of node we represent.
roleThe role this node undertakes.
verbosity0 for normal operation, positive values for chattier logs.
Returns
Status code
Return values
EVEL_SUCCESSOn success
EVEL_ERR_CODESOn failure.

Definition at line 93 of file evel.c.

§ evel_json_encode_event()

int evel_json_encode_event ( char *  json,
int  max_size,
EVENT_HEADER event 
)

Encode the event as a JSON event object according to AT&T's schema.

Parameters
jsonPointer to where to store the JSON encoded data.
max_sizeSize of storage available in json_body.
eventPointer to the EVENT_HEADER to encode.
Returns
Number of bytes actually written.

Definition at line 381 of file evel_event.c.

§ evel_last_epoch_set()

void evel_last_epoch_set ( EVENT_HEADER *const  header,
const unsigned long long  last_epoch_microsec 
)

Set the Last Epoch property of the event header.

Note
The Last Epoch defaults to the time of event creation.
Parameters
headerPointer to the EVENT_HEADER.
last_epoch_microsecThe last epoch to set, in microseconds.

Definition at line 212 of file evel_event.c.

§ evel_meas_latency_bucket_add()

void evel_meas_latency_bucket_add ( EVENT_MEASUREMENT *const  measurement,
MEASUREMENT_LATENCY_BUCKET *const  bucket 
)

Add an additional Measurement Latency Bucket to the specified event.

Parameters
measurementPointer to the Measurement event.
bucketPointer to the Measurement Latency Bucket to add.

Definition at line 834 of file evel_scaling_measurement.c.

§ evel_meas_latency_bucket_high_end_set()

void evel_meas_latency_bucket_high_end_set ( MEASUREMENT_LATENCY_BUCKET *const  bucket,
const double  high_end 
)

Set the High End property of the Measurement Latency Bucket.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
bucketPointer to the Measurement Latency Bucket.
high_endHigh end of the bucket's range.

Definition at line 789 of file evel_scaling_measurement.c.

§ evel_meas_latency_bucket_low_end_set()

void evel_meas_latency_bucket_low_end_set ( MEASUREMENT_LATENCY_BUCKET *const  bucket,
const double  low_end 
)

Set the Low End property of the Measurement Latency Bucket.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
bucketPointer to the Measurement Latency Bucket.
low_endLow end of the bucket's range.

Definition at line 814 of file evel_scaling_measurement.c.

§ evel_meas_vnic_use_add()

void evel_meas_vnic_use_add ( EVENT_MEASUREMENT *const  measurement,
MEASUREMENT_VNIC_USE *const  vnic_use 
)

Add an additional vNIC Use to the specified Measurement event.

Parameters
measurementPointer to the measurement.
vnic_usePointer to the vNIC Use to add.

Definition at line 1148 of file evel_scaling_measurement.c.

§ evel_measurement_agg_cpu_use_set()

void evel_measurement_agg_cpu_use_set ( EVENT_MEASUREMENT measurement,
double  cpu_use 
)

} Set the Aggregate CPU Use property of the Measurement.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
measurementPointer to the measurement.
cpu_useThe CPU use to set.

} Set the Aggregate CPU Use property of the Measurement.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
measurementPointer to the measurement.
cpu_useThe CPU use to set.

Definition at line 656 of file evel_scaling_measurement.c.

§ evel_measurement_cfg_ents_set()

void evel_measurement_cfg_ents_set ( EVENT_MEASUREMENT measurement,
int  configured_entities 
)

Set the Configured Entities property of the Measurement.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
measurementPointer to the Measurement.
configured_entitiesThe Configured Entities to be set.

Definition at line 178 of file evel_scaling_measurement.c.

§ evel_measurement_codec_use_add()

void evel_measurement_codec_use_add ( EVENT_MEASUREMENT measurement,
char *  codec,
int  utilization 
)

Add a Codec usage value name/value pair to the Measurement.

The name is null delimited ASCII string. The library takes a copy so the caller does not have to preserve values after the function returns.

Parameters
measurementPointer to the measurement.
codecASCIIZ string with the codec's name.
utilizationUtilization of the feature.

The name is null delimited ASCII string. The library takes a copy so the caller does not have to preserve values after the function returns.

Parameters
measurementPointer to the measurement.
codecASCIIZ string with the codec's name.
utilizationNumber of codecs in use.

Definition at line 615 of file evel_scaling_measurement.c.

§ evel_measurement_conc_sess_set()

void evel_measurement_conc_sess_set ( EVENT_MEASUREMENT measurement,
int  concurrent_sessions 
)

Set the Concurrent Sessions property of the Measurement.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
measurementPointer to the Measurement.
concurrent_sessionsThe Concurrent Sessions to be set.

Definition at line 150 of file evel_scaling_measurement.c.

§ evel_measurement_cpu_use_add()

void evel_measurement_cpu_use_add ( EVENT_MEASUREMENT measurement,
char *  id,
double  usage 
)

Add an additional CPU usage value name/value pair to the Measurement.

The name and value are null delimited ASCII strings. The library takes a copy so the caller does not have to preserve values after the function returns.

Parameters
measurementPointer to the measurement.
idASCIIZ string with the CPU's identifier.
usageCPU utilization.

Definition at line 385 of file evel_scaling_measurement.c.

§ evel_measurement_custom_measurement_add()

void evel_measurement_custom_measurement_add ( EVENT_MEASUREMENT measurement,
const char *const  group,
const char *const  name,
const char *const  value 
)

Add a Additional Measurement value name/value pair to the Measurement.

The name is null delimited ASCII string. The library takes a copy so the caller does not have to preserve values after the function returns.

Parameters
measurementPointer to the Measurement.
groupASCIIZ string with the measurement group's name.
nameASCIIZ string containing the measurement's name.
nameASCIIZ string containing the measurement's value.

Add a Additional Measurement value name/value pair to the Measurement.

The name is null delimited ASCII string. The library takes a copy so the caller does not have to preserve values after the function returns.

Parameters
measurementPointer to the Measaurement.
groupASCIIZ string with the measurement group's name.
nameASCIIZ string containing the measurement's name.
valueASCIIZ string containing the measurement's value.

Definition at line 531 of file evel_scaling_measurement.c.

§ evel_measurement_errors_set()

void evel_measurement_errors_set ( EVENT_MEASUREMENT measurement,
int  receive_discards,
int  receive_errors,
int  transmit_discards,
int  transmit_errors 
)

Add an additional set of Errors to the Measurement.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
measurementPointer to the measurement.
receive_discardsThe number of receive discards.
receive_errorsThe number of receive errors.
transmit_discardsThe number of transmit discards.
transmit_errorsThe number of transmit errors.

Definition at line 209 of file evel_scaling_measurement.c.

§ evel_measurement_feature_use_add()

void evel_measurement_feature_use_add ( EVENT_MEASUREMENT measurement,
char *  feature,
int  utilization 
)

Add a Feature usage value name/value pair to the Measurement.

The name is null delimited ASCII string. The library takes a copy so the caller does not have to preserve values after the function returns.

Parameters
measurementPointer to the measurement.
featureASCIIZ string with the feature's name.
utilizationUtilization of the feature.

Definition at line 488 of file evel_scaling_measurement.c.

§ evel_measurement_fsys_use_add()

void evel_measurement_fsys_use_add ( EVENT_MEASUREMENT measurement,
char *  filesystem_name,
double  block_configured,
double  block_used,
int  block_iops,
double  ephemeral_configured,
double  ephemeral_used,
int  ephemeral_iops 
)

Add an additional File System usage value name/value pair to the Measurement.

The filesystem_name is null delimited ASCII string. The library takes a copy so the caller does not have to preserve values after the function returns.

Parameters
measurementPointer to the measurement.
filesystem_nameASCIIZ string with the file-system's UUID.
block_configuredBlock storage configured.
block_usedBlock storage in use.
block_iopsBlock storage IOPS.
ephemeral_configuredEphemeral storage configured.
ephemeral_usedEphemeral storage in use.
ephemeral_iopsEphemeral storage IOPS.

Definition at line 432 of file evel_scaling_measurement.c.

§ evel_measurement_latency_add()

void evel_measurement_latency_add ( EVENT_MEASUREMENT *const  measurement,
const double  low_end,
const double  high_end,
const int  count 
)

Add an additional Latency Distribution bucket to the Measurement.

This function implements the previous API, purely for convenience.

Parameters
measurementPointer to the measurement.
low_endLow end of the bucket's range.
high_endHigh end of the bucket's range.
countCount of events in this bucket.

Definition at line 860 of file evel_scaling_measurement.c.

§ evel_measurement_mean_req_lat_set()

void evel_measurement_mean_req_lat_set ( EVENT_MEASUREMENT measurement,
double  mean_request_latency 
)

Set the Mean Request Latency property of the Measurement.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
measurementPointer to the Measurement.
mean_request_latencyThe Mean Request Latency to be set.

Definition at line 272 of file evel_scaling_measurement.c.

§ evel_measurement_media_port_use_set()

void evel_measurement_media_port_use_set ( EVENT_MEASUREMENT measurement,
int  media_ports_in_use 
)

Set the Media Ports in Use property of the Measurement.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
measurementPointer to the measurement.
media_ports_in_useThe media port usage to set.

Definition at line 684 of file evel_scaling_measurement.c.

§ evel_measurement_mem_cfg_set()

void evel_measurement_mem_cfg_set ( EVENT_MEASUREMENT measurement,
double  memory_configured 
)

Set the Memory Configured property of the Measurement.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
measurementPointer to the Measurement.
memory_configuredThe Memory Configured to be set.

Definition at line 300 of file evel_scaling_measurement.c.

§ evel_measurement_mem_used_set()

void evel_measurement_mem_used_set ( EVENT_MEASUREMENT measurement,
double  memory_used 
)

Set the Memory Used property of the Measurement.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
measurementPointer to the Measurement.
memory_usedThe Memory Used to be set.

Definition at line 328 of file evel_scaling_measurement.c.

§ evel_measurement_request_rate_set()

void evel_measurement_request_rate_set ( EVENT_MEASUREMENT measurement,
int  request_rate 
)

Set the Request Rate property of the Measurement.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
measurementPointer to the Measurement.
request_rateThe Request Rate to be set.

Definition at line 356 of file evel_scaling_measurement.c.

§ evel_measurement_type_set()

void evel_measurement_type_set ( EVENT_MEASUREMENT measurement,
const char *const  type 
)

Set the Event Type property of the Measurement.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
measurementPointer to the Measurement.
typeThe Event Type to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 125 of file evel_scaling_measurement.c.

§ evel_measurement_vnfc_scaling_metric_set()

void evel_measurement_vnfc_scaling_metric_set ( EVENT_MEASUREMENT measurement,
double  scaling_metric 
)

Set the VNFC Scaling Metric property of the Measurement.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
measurementPointer to the measurement.
scaling_metricThe scaling metric to set.

Definition at line 712 of file evel_scaling_measurement.c.

§ evel_measurement_vnic_use_add()

void evel_measurement_vnic_use_add ( EVENT_MEASUREMENT *const  measurement,
char *const  vnic_id,
const int  packets_in,
const int  packets_out,
const int  broadcast_packets_in,
const int  broadcast_packets_out,
const int  bytes_in,
const int  bytes_out,
const int  multicast_packets_in,
const int  multicast_packets_out,
const int  unicast_packets_in,
const int  unicast_packets_out 
)

Add an additional vNIC usage record Measurement.

This function implements the previous API, purely for convenience.

The ID is null delimited ASCII string. The library takes a copy so the caller does not have to preserve values after the function returns.

Parameters
measurementPointer to the measurement.
vnic_idASCIIZ string with the vNIC's ID.
packets_inTotal packets received.
packets_outTotal packets transmitted.
broadcast_packets_inBroadcast packets received.
broadcast_packets_outBroadcast packets transmitted.
bytes_inTotal bytes received.
bytes_outTotal bytes transmitted.
multicast_packets_inMulticast packets received.
multicast_packets_outMulticast packets transmitted.
unicast_packets_inUnicast packets received.
unicast_packets_outUnicast packets transmitted.

Definition at line 1186 of file evel_scaling_measurement.c.

§ evel_mobile_flow_app_prot_type_set()

void evel_mobile_flow_app_prot_type_set ( EVENT_MOBILE_FLOW mobile_flow,
const char *const  type 
)

Set the Application Protocol Type property of the Mobile Flow.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
mobile_flowPointer to the Mobile Flow.
typeThe Application Protocol Type to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 259 of file evel_mobile_flow.c.

§ evel_mobile_flow_app_prot_ver_set()

void evel_mobile_flow_app_prot_ver_set ( EVENT_MOBILE_FLOW mobile_flow,
const char *const  version 
)

Set the Application Protocol Version property of the Mobile Flow.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
mobile_flowPointer to the Mobile Flow.
versionThe Application Protocol Version to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 289 of file evel_mobile_flow.c.

§ evel_mobile_flow_app_type_set()

void evel_mobile_flow_app_type_set ( EVENT_MOBILE_FLOW mobile_flow,
const char *const  type 
)

Set the Application Type property of the Mobile Flow.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
mobile_flowPointer to the Mobile Flow.
typeThe Application Type to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 229 of file evel_mobile_flow.c.

§ evel_mobile_flow_cid_set()

void evel_mobile_flow_cid_set ( EVENT_MOBILE_FLOW mobile_flow,
const char *const  cid 
)

Set the CID property of the Mobile Flow.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
mobile_flowPointer to the Mobile Flow.
cidThe CID to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 318 of file evel_mobile_flow.c.

§ evel_mobile_flow_con_type_set()

void evel_mobile_flow_con_type_set ( EVENT_MOBILE_FLOW mobile_flow,
const char *const  type 
)

Set the Connection Type property of the Mobile Flow.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
mobile_flowPointer to the Mobile Flow.
typeThe Connection Type to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 348 of file evel_mobile_flow.c.

§ evel_mobile_flow_ecgi_set()

void evel_mobile_flow_ecgi_set ( EVENT_MOBILE_FLOW mobile_flow,
const char *const  ecgi 
)

Set the ECGI property of the Mobile Flow.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
mobile_flowPointer to the Mobile Flow.
ecgiThe ECGI to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 377 of file evel_mobile_flow.c.

§ evel_mobile_flow_gtp_prot_type_set()

void evel_mobile_flow_gtp_prot_type_set ( EVENT_MOBILE_FLOW mobile_flow,
const char *const  type 
)

Set the GTP Protocol Type property of the Mobile Flow.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
mobile_flowPointer to the Mobile Flow.
typeThe GTP Protocol Type to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 407 of file evel_mobile_flow.c.

§ evel_mobile_flow_gtp_prot_ver_set()

void evel_mobile_flow_gtp_prot_ver_set ( EVENT_MOBILE_FLOW mobile_flow,
const char *const  version 
)

Set the GTP Protocol Version property of the Mobile Flow.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
mobile_flowPointer to the Mobile Flow.
versionThe GTP Protocol Version to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 437 of file evel_mobile_flow.c.

§ evel_mobile_flow_http_header_set()

void evel_mobile_flow_http_header_set ( EVENT_MOBILE_FLOW mobile_flow,
const char *const  header 
)

Set the HTTP Header property of the Mobile Flow.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
mobile_flowPointer to the Mobile Flow.
headerThe HTTP header to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 466 of file evel_mobile_flow.c.

§ evel_mobile_flow_imei_set()

void evel_mobile_flow_imei_set ( EVENT_MOBILE_FLOW mobile_flow,
const char *const  imei 
)

Set the IMEI property of the Mobile Flow.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
mobile_flowPointer to the Mobile Flow.
imeiThe IMEI to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 495 of file evel_mobile_flow.c.

§ evel_mobile_flow_imsi_set()

void evel_mobile_flow_imsi_set ( EVENT_MOBILE_FLOW mobile_flow,
const char *const  imsi 
)

Set the IMSI property of the Mobile Flow.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
mobile_flowPointer to the Mobile Flow.
imsiThe IMSI to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 524 of file evel_mobile_flow.c.

§ evel_mobile_flow_lac_set()

void evel_mobile_flow_lac_set ( EVENT_MOBILE_FLOW mobile_flow,
const char *const  lac 
)

Set the LAC property of the Mobile Flow.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
mobile_flowPointer to the Mobile Flow.
lacThe LAC to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 553 of file evel_mobile_flow.c.

§ evel_mobile_flow_mcc_set()

void evel_mobile_flow_mcc_set ( EVENT_MOBILE_FLOW mobile_flow,
const char *const  mcc 
)

Set the MCC property of the Mobile Flow.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
mobile_flowPointer to the Mobile Flow.
mccThe MCC to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 582 of file evel_mobile_flow.c.

§ evel_mobile_flow_mnc_set()

void evel_mobile_flow_mnc_set ( EVENT_MOBILE_FLOW mobile_flow,
const char *const  mnc 
)

Set the MNC property of the Mobile Flow.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
mobile_flowPointer to the Mobile Flow.
mncThe MNC to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 611 of file evel_mobile_flow.c.

§ evel_mobile_flow_msisdn_set()

void evel_mobile_flow_msisdn_set ( EVENT_MOBILE_FLOW mobile_flow,
const char *const  msisdn 
)

Set the MSISDN property of the Mobile Flow.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
mobile_flowPointer to the Mobile Flow.
msisdnThe MSISDN to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 640 of file evel_mobile_flow.c.

§ evel_mobile_flow_other_func_role_set()

void evel_mobile_flow_other_func_role_set ( EVENT_MOBILE_FLOW mobile_flow,
const char *const  role 
)

Set the Other Functional Role property of the Mobile Flow.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
mobile_flowPointer to the Mobile Flow.
roleThe Other Functional Role to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 670 of file evel_mobile_flow.c.

§ evel_mobile_flow_rac_set()

void evel_mobile_flow_rac_set ( EVENT_MOBILE_FLOW mobile_flow,
const char *const  rac 
)

Set the RAC property of the Mobile Flow.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
mobile_flowPointer to the Mobile Flow.
racThe RAC to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 699 of file evel_mobile_flow.c.

§ evel_mobile_flow_radio_acc_tech_set()

void evel_mobile_flow_radio_acc_tech_set ( EVENT_MOBILE_FLOW mobile_flow,
const char *const  tech 
)

Set the Radio Access Technology property of the Mobile Flow.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
mobile_flowPointer to the Mobile Flow.
techThe Radio Access Technology to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 729 of file evel_mobile_flow.c.

§ evel_mobile_flow_sac_set()

void evel_mobile_flow_sac_set ( EVENT_MOBILE_FLOW mobile_flow,
const char *const  sac 
)

Set the SAC property of the Mobile Flow.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
mobile_flowPointer to the Mobile Flow.
sacThe SAC to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 758 of file evel_mobile_flow.c.

§ evel_mobile_flow_samp_alg_set()

void evel_mobile_flow_samp_alg_set ( EVENT_MOBILE_FLOW mobile_flow,
int  algorithm 
)

Set the Sampling Algorithm property of the Mobile Flow.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
mobile_flowPointer to the Mobile Flow.
algorithmThe Sampling Algorithm to be set.

Definition at line 786 of file evel_mobile_flow.c.

§ evel_mobile_flow_tac_set()

void evel_mobile_flow_tac_set ( EVENT_MOBILE_FLOW mobile_flow,
const char *const  tac 
)

Set the TAC property of the Mobile Flow.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
mobile_flowPointer to the Mobile Flow.
tacThe TAC to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 815 of file evel_mobile_flow.c.

§ evel_mobile_flow_tunnel_id_set()

void evel_mobile_flow_tunnel_id_set ( EVENT_MOBILE_FLOW mobile_flow,
const char *const  tunnel_id 
)

Set the Tunnel ID property of the Mobile Flow.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
mobile_flowPointer to the Mobile Flow.
tunnel_idThe Tunnel ID to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 844 of file evel_mobile_flow.c.

§ evel_mobile_flow_type_set()

void evel_mobile_flow_type_set ( EVENT_MOBILE_FLOW mobile_flow,
const char *const  type 
)

Set the Event Type property of the Mobile Flow.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
mobile_flowPointer to the Mobile Flow.
typeThe Event Type to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 202 of file evel_mobile_flow.c.

§ evel_mobile_flow_vlan_id_set()

void evel_mobile_flow_vlan_id_set ( EVENT_MOBILE_FLOW mobile_flow,
const char *const  vlan_id 
)

Set the VLAN ID property of the Mobile Flow.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
mobile_flowPointer to the Mobile Flow.
vlan_idThe VLAN ID to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 873 of file evel_mobile_flow.c.

§ evel_mobile_gtp_metrics_act_by_set()

void evel_mobile_gtp_metrics_act_by_set ( MOBILE_GTP_PER_FLOW_METRICS metrics,
const char *const  act_by 
)

Set the Activated By property of the Mobile GTP Per Flow metrics.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
metricsPointer to the Mobile GTP Per Flow Metrics.
act_byThe Activated By to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 1304 of file evel_mobile_flow.c.

§ evel_mobile_gtp_metrics_act_time_set()

void evel_mobile_gtp_metrics_act_time_set ( MOBILE_GTP_PER_FLOW_METRICS metrics,
time_t  act_time 
)

Set the Activation Time property of the Mobile GTP Per Flow metrics.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
metricsPointer to the Mobile GTP Per Flow Metrics.
act_timeThe Activation Time to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 1333 of file evel_mobile_flow.c.

§ evel_mobile_gtp_metrics_con_status_set()

void evel_mobile_gtp_metrics_con_status_set ( MOBILE_GTP_PER_FLOW_METRICS metrics,
const char *const  status 
)

Set the GTP Connection Status property of the Mobile GTP Per Flow metrics.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
metricsPointer to the Mobile GTP Per Flow Metrics.
statusThe GTP Connection Status to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 1393 of file evel_mobile_flow.c.

§ evel_mobile_gtp_metrics_deact_by_set()

void evel_mobile_gtp_metrics_deact_by_set ( MOBILE_GTP_PER_FLOW_METRICS metrics,
const char *const  deact_by 
)

Set the Deactivated By property of the Mobile GTP Per Flow metrics.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
metricsPointer to the Mobile GTP Per Flow Metrics.
deact_byThe Deactivated By to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 1363 of file evel_mobile_flow.c.

§ evel_mobile_gtp_metrics_dur_con_fail_set()

void evel_mobile_gtp_metrics_dur_con_fail_set ( MOBILE_GTP_PER_FLOW_METRICS metrics,
int  duration 
)

Set the Duration of Connection Failed Status property of the Mobile GTP Per Flow Metrics.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
metricsPointer to the Mobile GTP Per Flow Metrics.
durationThe Duration of Connection Failed Status to be set.

Definition at line 1245 of file evel_mobile_flow.c.

§ evel_mobile_gtp_metrics_dur_tun_fail_set()

void evel_mobile_gtp_metrics_dur_tun_fail_set ( MOBILE_GTP_PER_FLOW_METRICS metrics,
int  duration 
)

Set the Duration of Tunnel Failed Status property of the Mobile GTP Per Flow Metrics.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
metricsPointer to the Mobile GTP Per Flow Metrics.
durationThe Duration of Tunnel Failed Status to be set.

Definition at line 1274 of file evel_mobile_flow.c.

§ evel_mobile_gtp_metrics_iptos_set()

void evel_mobile_gtp_metrics_iptos_set ( MOBILE_GTP_PER_FLOW_METRICS metrics,
int  index,
int  count 
)

Set an IP Type-of-Service count property of the Mobile GTP Per Flow metrics.

Parameters
metricsPointer to the Mobile GTP Per Flow Metrics.
indexThe index of the IP Type-of-Service.
countThe count.

Definition at line 1448 of file evel_mobile_flow.c.

§ evel_mobile_gtp_metrics_large_pkt_rtt_set()

void evel_mobile_gtp_metrics_large_pkt_rtt_set ( MOBILE_GTP_PER_FLOW_METRICS metrics,
int  rtt 
)

Set the Large Packet Round-Trip Time property of the Mobile GTP Per Flow Metrics.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
metricsPointer to the Mobile GTP Per Flow Metrics.
rttThe Large Packet Round-Trip Time to be set.

Definition at line 1481 of file evel_mobile_flow.c.

§ evel_mobile_gtp_metrics_large_pkt_thresh_set()

void evel_mobile_gtp_metrics_large_pkt_thresh_set ( MOBILE_GTP_PER_FLOW_METRICS metrics,
double  threshold 
)

Set the Large Packet Threshold property of the Mobile GTP Per Flow Metrics.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
metricsPointer to the Mobile GTP Per Flow Metrics.
thresholdThe Large Packet Threshold to be set.

Definition at line 1509 of file evel_mobile_flow.c.

§ evel_mobile_gtp_metrics_max_rcv_bit_rate_set()

void evel_mobile_gtp_metrics_max_rcv_bit_rate_set ( MOBILE_GTP_PER_FLOW_METRICS metrics,
int  rate 
)

Set the Max Receive Bit Rate property of the Mobile GTP Per Flow Metrics.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
metricsPointer to the Mobile GTP Per Flow Metrics.
rateThe Max Receive Bit Rate to be set.

Definition at line 1537 of file evel_mobile_flow.c.

§ evel_mobile_gtp_metrics_max_trx_bit_rate_set()

void evel_mobile_gtp_metrics_max_trx_bit_rate_set ( MOBILE_GTP_PER_FLOW_METRICS metrics,
int  rate 
)

Set the Max Transmit Bit Rate property of the Mobile GTP Per Flow Metrics.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
metricsPointer to the Mobile GTP Per Flow Metrics.
rateThe Max Transmit Bit Rate to be set.

Definition at line 1565 of file evel_mobile_flow.c.

§ evel_mobile_gtp_metrics_num_echo_fail_set()

void evel_mobile_gtp_metrics_num_echo_fail_set ( MOBILE_GTP_PER_FLOW_METRICS metrics,
int  num 
)

Set the Number of GTP Echo Failures property of the Mobile GTP Per Flow Metrics.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
metricsPointer to the Mobile GTP Per Flow Metrics.
numThe Number of GTP Echo Failures to be set.

Definition at line 1594 of file evel_mobile_flow.c.

§ evel_mobile_gtp_metrics_num_http_errors_set()

void evel_mobile_gtp_metrics_num_http_errors_set ( MOBILE_GTP_PER_FLOW_METRICS metrics,
int  num 
)

Set the Number of HTTP Errors property of the Mobile GTP Per Flow Metrics.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
metricsPointer to the Mobile GTP Per Flow Metrics.
numThe Number of HTTP Errors to be set.

Definition at line 1651 of file evel_mobile_flow.c.

§ evel_mobile_gtp_metrics_num_tun_fail_set()

void evel_mobile_gtp_metrics_num_tun_fail_set ( MOBILE_GTP_PER_FLOW_METRICS metrics,
int  num 
)

Set the Number of GTP Tunnel Errors property of the Mobile GTP Per Flow Metrics.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
metricsPointer to the Mobile GTP Per Flow Metrics.
numThe Number of GTP Tunnel Errors to be set.

Definition at line 1623 of file evel_mobile_flow.c.

§ evel_mobile_gtp_metrics_qci_cos_count_add()

void evel_mobile_gtp_metrics_qci_cos_count_add ( MOBILE_GTP_PER_FLOW_METRICS metrics,
const EVEL_QCI_COS_TYPES  qci_cos,
const int  count 
)

Add a QCI COS count to the metrics.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
metricsPointer to the Mobile GTP Per Flow Metrics.
qci_cosThe QCI COS count to be updated.
countThe associated QCI COS count.

Definition at line 1713 of file evel_mobile_flow.c.

§ evel_mobile_gtp_metrics_tcp_flag_count_add()

void evel_mobile_gtp_metrics_tcp_flag_count_add ( MOBILE_GTP_PER_FLOW_METRICS metrics,
const EVEL_TCP_FLAGS  tcp_flag,
const int  count 
)

Add a TCP flag count to the metrics.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
metricsPointer to the Mobile GTP Per Flow Metrics.
tcp_flagThe TCP flag count to be updated.
countThe associated flag count.
Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
metricsPointer to the Mobile GTP Per Flow Metrics.
tcp_flagThe TCP flag to be updated.
countThe associated flag count, which must be nonzero.

Definition at line 1680 of file evel_mobile_flow.c.

§ evel_mobile_gtp_metrics_tun_status_set()

void evel_mobile_gtp_metrics_tun_status_set ( MOBILE_GTP_PER_FLOW_METRICS metrics,
const char *const  status 
)

Set the GTP Tunnel Status property of the Mobile GTP Per Flow metrics.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
metricsPointer to the Mobile GTP Per Flow Metrics.
statusThe GTP Tunnel Status to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 1423 of file evel_mobile_flow.c.

§ evel_new_fault()

EVENT_FAULT* evel_new_fault ( const char *const  condition,
const char *const  specific_problem,
EVEL_EVENT_PRIORITIES  priority,
EVEL_SEVERITIES  severity 
)

Create a new fault event.

Returns
pointer to the newly manufactured EVENT_FAULT. If the event is not used it must be released using evel_free_fault
Return values
NULLFailed to create the event.
Note
The mandatory fields on the Fault must be supplied to this factory function and are immutable once set. Optional fields have explicit setter functions, but again values may only be set once so that the Fault has immutable properties.
Parameters
conditionThe condition indicated by the Fault.
specific_problemThe specific problem triggering the fault.
priorityThe priority of the event.
severityThe severity of the Fault.
Returns
pointer to the newly manufactured EVENT_FAULT. If the event is not used (i.e. posted) it must be released using evel_free_fault.
Return values
NULLFailed to create the event.

Definition at line 60 of file evel_fault.c.

§ evel_new_heartbeat()

EVENT_HEADER* evel_new_heartbeat ( void  )

Create a new heartbeat event.

Note
that the heartbeat is just a "naked" commonEventHeader!
Returns
pointer to the newly manufactured EVENT_HEADER. If the event is not used it must be released using evel_free_event
Return values
NULLFailed to create the event.

Definition at line 78 of file evel_event.c.

§ evel_new_meas_latency_bucket()

MEASUREMENT_LATENCY_BUCKET* evel_new_meas_latency_bucket ( const int  count)

Create a new Latency Bucket to be added to a Measurement event.

Note
The mandatory fields on the MEASUREMENT_LATENCY_BUCKET must be supplied to this factory function and are immutable once set. Optional fields have explicit setter functions, but again values may only be set once so that the MEASUREMENT_LATENCY_BUCKET has immutable properties.
Parameters
countCount of events in this bucket.
Returns
pointer to the newly manufactured MEASUREMENT_LATENCY_BUCKET.
Return values
NULLFailed to create the Latency Bucket.
Note
The mandatory fields on the MEASUREMENT_LATENCY_BUCKET must be supplied to this factory function and are immutable once set. Optional fields have explicit setter functions, but again values may only be set once so that the MEASUREMENT_LATENCY_BUCKET has immutable properties.
Parameters
countCount of events in this bucket.
Returns
pointer to the newly manufactured MEASUREMENT_LATENCY_BUCKET. If the structure is not used it must be released using free.
Return values
NULLFailed to create the Latency Bucket.

Definition at line 745 of file evel_scaling_measurement.c.

§ evel_new_measurement()

EVENT_MEASUREMENT* evel_new_measurement ( double  measurement_interval)

Create a new Measurement event.

Note
The mandatory fields on the Measurement must be supplied to this factory function and are immutable once set. Optional fields have explicit setter functions, but again values may only be set once so that the Measurement has immutable properties.
Parameters
measurement_interval
Returns
pointer to the newly manufactured EVENT_MEASUREMENT. If the event is not used (i.e. posted) it must be released using evel_free_event.
Return values
NULLFailed to create the event.

Definition at line 60 of file evel_scaling_measurement.c.

§ evel_new_measurement_vnic_use()

MEASUREMENT_VNIC_USE* evel_new_measurement_vnic_use ( char *const  vnic_id,
const int  packets_in,
const int  packets_out,
const int  bytes_in,
const int  bytes_out 
)

Create a new vNIC Use to be added to a Measurement event.

Note
The mandatory fields on the MEASUREMENT_VNIC_USE must be supplied to this factory function and are immutable once set. Optional fields have explicit setter functions, but again values may only be set once so that the MEASUREMENT_VNIC_USE has immutable properties.
Parameters
vnic_idASCIIZ string with the vNIC's ID.
packets_inTotal packets received.
packets_outTotal packets transmitted.
bytes_inTotal bytes received.
bytes_outTotal bytes transmitted.
Returns
pointer to the newly manufactured MEASUREMENT_VNIC_USE. If the structure is not used it must be released using evel_free_measurement_vnic_use.
Return values
NULLFailed to create the vNIC Use.

Definition at line 900 of file evel_scaling_measurement.c.

§ evel_new_mobile_flow()

EVENT_MOBILE_FLOW* evel_new_mobile_flow ( const char *const  flow_direction,
MOBILE_GTP_PER_FLOW_METRICS gtp_per_flow_metrics,
const char *const  ip_protocol_type,
const char *const  ip_version,
const char *const  other_endpoint_ip_address,
int  other_endpoint_port,
const char *const  reporting_endpoint_ip_addr,
int  reporting_endpoint_port 
)

Create a new Mobile Flow event.

Note
The mandatory fields on the Mobile Flow must be supplied to this factory function and are immutable once set. Optional fields have explicit setter functions, but again values may only be set once so that the Mobile Flow has immutable properties.
Parameters
flow_direction
gtp_per_flow_metrics
ip_protocol_type
ip_version
other_endpoint_ip_address
other_endpoint_port
reporting_endpoint_ip_addr
reporting_endpoint_port
Returns
pointer to the newly manufactured EVENT_MOBILE_FLOW. If the event is not used (i.e. posted) it must be released using evel_free_mobile_flow.
Return values
NULLFailed to create the event.
Note
The mandatory fields on the Mobile Flow must be supplied to this factory function and are immutable once set. Optional fields have explicit setter functions, but again values may only be set once so that the Mobile Flow has immutable properties.
Parameters
flow_directionFlow direction.
gtp_per_flow_metricsGTP per-flow metrics.
ip_protocol_typeIP protocol type.
ip_versionIP protocol version.
other_endpoint_ip_addressIP address of the other endpoint.
other_endpoint_portIP port of the other endpoint.
reporting_endpoint_ip_addrIP address of the reporting endpoint.
reporting_endpoint_portIP port of the reporting endpoint.
Returns
pointer to the newly manufactured EVENT_MOBILE_FLOW. If the event is not used (i.e. posted) it must be released using evel_free_mobile_flow.
Return values
NULLFailed to create the event.

Definition at line 108 of file evel_mobile_flow.c.

§ evel_new_mobile_gtp_flow_metrics()

MOBILE_GTP_PER_FLOW_METRICS* evel_new_mobile_gtp_flow_metrics ( double  avg_bit_error_rate,
double  avg_packet_delay_variation,
int  avg_packet_latency,
int  avg_receive_throughput,
int  avg_transmit_throughput,
int  flow_activation_epoch,
int  flow_activation_microsec,
int  flow_deactivation_epoch,
int  flow_deactivation_microsec,
time_t  flow_deactivation_time,
const char *const  flow_status,
int  max_packet_delay_variation,
int  num_activation_failures,
int  num_bit_errors,
int  num_bytes_received,
int  num_bytes_transmitted,
int  num_dropped_packets,
int  num_l7_bytes_received,
int  num_l7_bytes_transmitted,
int  num_lost_packets,
int  num_out_of_order_packets,
int  num_packet_errors,
int  num_packets_received_excl_retrans,
int  num_packets_received_incl_retrans,
int  num_packets_transmitted_incl_retrans,
int  num_retries,
int  num_timeouts,
int  num_tunneled_l7_bytes_received,
int  round_trip_time,
int  time_to_first_byte 
)

Create a new Mobile GTP Per Flow Metrics.

Note
The mandatory fields on the Mobile GTP Per Flow Metrics must be supplied to this factory function and are immutable once set. Optional fields have explicit setter functions, but again values may only be set once so that the Mobile GTP Per Flow Metrics has immutable properties.
Parameters
avg_bit_error_rate
avg_packet_delay_variation
avg_packet_latency
avg_receive_throughput
avg_transmit_throughput
flow_activation_epoch
flow_activation_microsec
flow_deactivation_epoch
flow_deactivation_microsec
flow_deactivation_time
flow_status
max_packet_delay_variation
num_activation_failures
num_bit_errors
num_bytes_received
num_bytes_transmitted
num_dropped_packets
num_l7_bytes_received
num_l7_bytes_transmitted
num_lost_packets
num_out_of_order_packets
num_packet_errors
num_packets_received_excl_retrans
num_packets_received_incl_retrans
num_packets_transmitted_incl_retrans
num_retries
num_timeouts
num_tunneled_l7_bytes_received
round_trip_time
time_to_first_byte
Returns
pointer to the newly manufactured MOBILE_GTP_PER_FLOW_METRICS. If the structure is not used it must be released using evel_free_mobile_gtp_flow_metrics.
Return values
NULLFailed to create the event.
Note
The mandatory fields on the Mobile GTP Per Flow Metrics must be supplied to this factory function and are immutable once set. Optional fields have explicit setter functions, but again values may only be set once so that the Mobile GTP Per Flow Metrics has immutable properties.
Parameters
avg_bit_error_rateAverage bit error rate.
avg_packet_delay_variationAverage delay or jitter in ms.
avg_packet_latencyAverage delivery latency.
avg_receive_throughputAverage receive throughput.
avg_transmit_throughputAverage transmit throughput.
flow_activation_epochTime the connection is activated.
flow_activation_microsecMicroseconds for the start of the flow connection.
flow_deactivation_epochTime for the end of the connection.
flow_deactivation_microsecMicroseconds for the end of the flow connection.
flow_deactivation_timeTransmission time of the first packet.
flow_statusConnection status.
max_packet_delay_variationMaximum packet delay or jitter in ms.
num_activation_failuresNumber of failed activation requests.
num_bit_errorsNumber of errored bits.
num_bytes_receivedNumber of bytes received.
num_bytes_transmittedNumber of bytes transmitted.
num_dropped_packetsNumber of received packets dropped.
num_l7_bytes_receivedNumber of tunneled Layer 7 bytes received.
num_l7_bytes_transmittedNumber of tunneled Layer 7 bytes transmitted.
num_lost_packetsNumber of lost packets.
num_out_of_order_packetsNumber of out-of-order packets.
num_packet_errorsNumber of errored packets.
num_packets_received_excl_retransNumber of packets received, excluding retransmits.
num_packets_received_incl_retransNumber of packets received.
num_packets_transmitted_incl_retransNumber of packets transmitted.
num_retriesNumber of packet retries.
num_timeoutsNumber of packet timeouts.
num_tunneled_l7_bytes_receivedNumber of tunneled Layer 7 bytes received, excluding retransmits.
round_trip_timeRound trip time.
time_to_first_byteTime in ms between connection activation and first byte received.
Returns
pointer to the newly manufactured MOBILE_GTP_PER_FLOW_METRICS. If the structure is not used it must be released using evel_free_mobile_gtp_flow_metrics.
Return values
NULLFailed to create the event.

Definition at line 1083 of file evel_mobile_flow.c.

§ evel_new_other()

EVENT_OTHER* evel_new_other ( void  )

Create a new other event.

Returns
pointer to the newly manufactured EVENT_OTHER. If the event is not used it must be released using evel_free_other.
Return values
NULLFailed to create the event.

Create a new other event.

Note
The mandatory fields on the Other must be supplied to this factory function and are immutable once set. Optional fields have explicit setter functions, but again values may only be set once so that the Other has immutable properties.
Returns
pointer to the newly manufactured EVENT_OTHER. If the event is not used (i.e. posted) it must be released using evel_free_other.
Return values
NULLFailed to create the event.

Definition at line 53 of file evel_other.c.

§ evel_new_report()

EVENT_REPORT* evel_new_report ( double  measurement_interval)

Create a new Report event.

Note
The mandatory fields on the Report must be supplied to this factory function and are immutable once set. Optional fields have explicit setter functions, but again values may only be set once so that the Report has immutable properties.
Parameters
measurement_interval
Returns
pointer to the newly manufactured EVENT_REPORT. If the event is not used (i.e. posted) it must be released using evel_free_report.
Return values
NULLFailed to create the event.
Note
The mandatory fields on the Report must be supplied to this factory function and are immutable once set. Optional fields have explicit setter functions, but again values may only be set once so that the Report has immutable properties.
Parameters
measurement_interval
Returns
pointer to the newly manufactured EVENT_REPORT. If the event is not used (i.e. posted) it must be released using evel_free_event.
Return values
NULLFailed to create the event.

Definition at line 66 of file evel_reporting_measurement.c.

§ evel_new_service()

EVENT_SERVICE* evel_new_service ( const char *const  vendor_id,
const char *const  event_id 
)

Create a new Service event.

Note
The mandatory fields on the Service must be supplied to this factory function and are immutable once set. Optional fields have explicit setter functions, but again values may only be set once so that the event has immutable properties.
Parameters
vendor_idThe vendor id to encode in the event instance id.
event_idThe vendor event id to encode in the event instance id.
Returns
pointer to the newly manufactured EVENT_SERVICE. If the event is not used (i.e. posted) it must be released using evel_free_service.
Return values
NULLFailed to create the event.

Definition at line 55 of file evel_service.c.

§ evel_new_signaling()

EVENT_SIGNALING* evel_new_signaling ( const char *const  vendor_id,
const char *const  event_id 
)

Create a new Signaling event.

Note
The mandatory fields on the Signaling must be supplied to this factory function and are immutable once set. Optional fields have explicit setter functions, but again values may only be set once so that the event has immutable properties.
Parameters
vendor_idThe vendor id to encode in the event instance id.
event_idThe vendor event id to encode in the event instance id.
Returns
pointer to the newly manufactured EVENT_SIGNALING. If the event is not used (i.e. posted) it must be released using evel_free_signaling.
Return values
NULLFailed to create the event.

Definition at line 55 of file evel_signaling.c.

§ evel_new_state_change()

EVENT_STATE_CHANGE* evel_new_state_change ( const EVEL_ENTITY_STATE  new_state,
const EVEL_ENTITY_STATE  old_state,
const char *const  interface 
)

Create a new State Change event.

Note
The mandatory fields on the Syslog must be supplied to this factory function and are immutable once set. Optional fields have explicit setter functions, but again values may only be set once so that the Syslog has immutable properties.
Parameters
new_stateThe new state of the reporting entity.
old_stateThe old state of the reporting entity.
interfaceThe card or port name of the reporting entity.
Returns
pointer to the newly manufactured EVENT_STATE_CHANGE. If the event is not used it must be released using evel_free_state_change
Return values
NULLFailed to create the event.
Note
The mandatory fields on the State Change must be supplied to this factory function and are immutable once set. Optional fields have explicit setter functions, but again values may only be set once so that the State Change has immutable properties.
Parameters
new_stateThe new state of the reporting entity.
old_stateThe old state of the reporting entity.
interfaceThe card or port name of the reporting entity.
Returns
pointer to the newly manufactured EVENT_STATE_CHANGE. If the event is not used it must be released using evel_free_state_change
Return values
NULLFailed to create the event.

Definition at line 58 of file evel_state_change.c.

§ evel_new_syslog()

EVENT_SYSLOG* evel_new_syslog ( EVEL_SOURCE_TYPES  event_source_type,
const char *const  syslog_msg,
const char *const  syslog_tag 
)

Create a new syslog event.

Note
The mandatory fields on the Syslog must be supplied to this factory function and are immutable once set. Optional fields have explicit setter functions, but again values may only be set once so that the Syslog has immutable properties.
Parameters
event_source_type
syslog_msg
syslog_tag
Returns
pointer to the newly manufactured EVENT_SYSLOG. If the event is not used it must be released using evel_free_syslog
Return values
NULLFailed to create the event.

Create a new syslog event.

Note
The mandatory fields on the Syslog must be supplied to this factory function and are immutable once set. Optional fields have explicit setter functions, but again values may only be set once so that the Syslog has immutable properties.
Parameters
event_source_typeThe type of Syslog event source.
syslog_msgThe Syslog event message.
syslog_tagThe messgaeId identifying the type of message.
Returns
pointer to the newly manufactured EVENT_SYSLOG. If the event is not used (i.e. posted) it must be released using evel_free_syslog.
Return values
NULLFailed to create the event.

Definition at line 56 of file evel_syslog.c.

§ evel_other_field_add()

void evel_other_field_add ( EVENT_OTHER other,
char *  name,
char *  value 
)

Add a value name/value pair to the Other.

The name and value are null delimited ASCII strings. The library takes a copy so the caller does not have to preserve values after the function returns.

Parameters
otherPointer to the Other.
nameASCIIZ string with the attribute's name.
valueASCIIZ string with the attribute's value.

Add a value name/value pair to the Other.

The name and value are null delimited ASCII strings. The library takes a copy so the caller does not have to preserve values after the function returns.

Parameters
otherPointer to the Other.
nameASCIIZ string with the field's name. The caller does not need to preserve the value once the function returns.
valueASCIIZ string with the field's value. The caller does not need to preserve the value once the function returns.

Definition at line 127 of file evel_other.c.

§ evel_other_type_set()

void evel_other_type_set ( EVENT_OTHER other,
const char *const  type 
)

Set the Event Type property of the Other.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
otherPointer to the Other.
typeThe Event Type to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 99 of file evel_other.c.

§ evel_post_event()

EVEL_ERR_CODES evel_post_event ( EVENT_HEADER event)

Post an event.

Note
So far as the caller is concerned, successfully posting the event relinquishes all responsibility for the event - the library will take care of freeing the event in due course.
Parameters
eventThe event to be posted.
Returns
Status code
Return values
EVEL_SUCCESSOn success
One of ::EVEL_ERR_CODESOn failure.

Definition at line 497 of file evel_event_mgr.c.

§ evel_report_custom_measurement_add()

void evel_report_custom_measurement_add ( EVENT_REPORT report,
const char *const  group,
const char *const  name,
const char *const  value 
)

Add a Additional Measurement value name/value pair to the Report.

The name is null delimited ASCII string. The library takes a copy so the caller does not have to preserve values after the function returns.

Parameters
reportPointer to the report.
groupASCIIZ string with the measurement group's name.
nameASCIIZ string containing the measurement's name.
valueASCIIZ string containing the measurement's value.

Definition at line 187 of file evel_reporting_measurement.c.

§ evel_report_feature_use_add()

void evel_report_feature_use_add ( EVENT_REPORT report,
char *  feature,
int  utilization 
)

Add a Feature usage value name/value pair to the Report.

The name is null delimited ASCII string. The library takes a copy so the caller does not have to preserve values after the function returns.

Parameters
reportPointer to the report.
featureASCIIZ string with the feature's name.
utilizationUtilization of the feature.

Definition at line 144 of file evel_reporting_measurement.c.

§ evel_report_type_set()

void evel_report_type_set ( EVENT_REPORT report,
const char *const  type 
)

Set the Event Type property of the Report.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
reportPointer to the Report.
typeThe Event Type to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 118 of file evel_reporting_measurement.c.

§ evel_reporting_entity_id_set()

void evel_reporting_entity_id_set ( EVENT_HEADER *const  header,
const char *const  entity_id 
)

Set the Reporting Entity Id property of the event header.

Note
The Reporting Entity Id defaults to the OpenStack VM UUID.
Parameters
headerPointer to the EVENT_HEADER.
entity_idThe entity id to set.

Definition at line 264 of file evel_event.c.

§ evel_reporting_entity_name_set()

void evel_reporting_entity_name_set ( EVENT_HEADER *const  header,
const char *const  entity_name 
)

Set the Reporting Entity Name property of the event header.

Note
The Reporting Entity Name defaults to the OpenStack VM Name.
Parameters
headerPointer to the EVENT_HEADER.
entity_nameThe entity name to set.

Definition at line 234 of file evel_event.c.

§ evel_service_addl_field_add()

void evel_service_addl_field_add ( EVENT_SERVICE *const  event,
const char *const  name,
const char *const  value 
)

Add a name/value pair to the Service, under the additionalFields array.

The name and value are null delimited ASCII strings. The library takes a copy so the caller does not have to preserve values after the function returns.

Parameters
eventPointer to the Service event.
nameASCIIZ string with the field's name. The caller does not need to preserve the value once the function returns.
valueASCIIZ string with the field's value. The caller does not need to preserve the value once the function returns.

Definition at line 163 of file evel_service.c.

§ evel_service_adjacency_name_set()

void evel_service_adjacency_name_set ( EVENT_SERVICE *const  event,
const char *const  adjacency_name 
)

Set the Adjacency Name property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
adjacency_nameThe adjacency name to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 434 of file evel_service.c.

§ evel_service_callee_codec_set()

void evel_service_callee_codec_set ( EVENT_SERVICE *const  event,
const char *const  codec 
)

Set the Callee Side Codec property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
codecThe codec to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 347 of file evel_service.c.

§ evel_service_caller_codec_set()

void evel_service_caller_codec_set ( EVENT_SERVICE *const  event,
const char *const  codec 
)

Set the Caller Side Codec property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
codecThe codec to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 375 of file evel_service.c.

§ evel_service_codec_set()

void evel_service_codec_set ( EVENT_SERVICE *const  event,
const char *const  codec 
)

Set the Codec property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
codecThe codec to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 319 of file evel_service.c.

§ evel_service_correlator_set()

void evel_service_correlator_set ( EVENT_SERVICE *const  event,
const char *const  correlator 
)

Set the correlator property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
correlatorThe correlator to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Set the correlator property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
correlatorThe correlator to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 291 of file evel_service.c.

§ evel_service_endpoint_desc_set()

void evel_service_endpoint_desc_set ( EVENT_SERVICE *const  event,
const EVEL_SERVICE_ENDPOINT_DESC  endpoint_desc 
)

Set the Endpoint Descriptor property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
endpoint_descThe endpoint descriptor to be set.

Definition at line 461 of file evel_service.c.

§ evel_service_endpoint_jitter_set()

void evel_service_endpoint_jitter_set ( EVENT_SERVICE *const  event,
const int  jitter 
)

Set the Endpoint Jitter property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
jitterThe jitter to be set.

Definition at line 489 of file evel_service.c.

§ evel_service_endpoint_rtp_oct_disc_set()

void evel_service_endpoint_rtp_oct_disc_set ( EVENT_SERVICE *const  event,
const int  rtp_oct_disc 
)

Set the Endpoint Rtp Octets Discarded property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
rtp_oct_discThe discard count.

Definition at line 516 of file evel_service.c.

§ evel_service_endpoint_rtp_oct_recv_set()

void evel_service_endpoint_rtp_oct_recv_set ( EVENT_SERVICE *const  event,
const int  rtp_oct_recv 
)

Set the Endpoint Rtp Octets Received property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
rtp_oct_recvThe receive count.

Definition at line 543 of file evel_service.c.

§ evel_service_endpoint_rtp_oct_sent_set()

void evel_service_endpoint_rtp_oct_sent_set ( EVENT_SERVICE *const  event,
const int  rtp_oct_sent 
)

Set the Endpoint Rtp Octets Sent property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
rtp_oct_sentThe send count.

Definition at line 570 of file evel_service.c.

§ evel_service_endpoint_rtp_pkt_disc_set()

void evel_service_endpoint_rtp_pkt_disc_set ( EVENT_SERVICE *const  event,
const int  rtp_pkt_disc 
)

Set the Endpoint Rtp Packets Discarded property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
rtp_pkt_discThe discard count.

Definition at line 597 of file evel_service.c.

§ evel_service_endpoint_rtp_pkt_recv_set()

void evel_service_endpoint_rtp_pkt_recv_set ( EVENT_SERVICE *const  event,
const int  rtp_pkt_recv 
)

Set the Endpoint Rtp Packets Received property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
rtp_pkt_recvThe receive count.

Definition at line 624 of file evel_service.c.

§ evel_service_endpoint_rtp_pkt_sent_set()

void evel_service_endpoint_rtp_pkt_sent_set ( EVENT_SERVICE *const  event,
const int  rtp_pkt_sent 
)

Set the Endpoint Rtp Packets Sent property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
rtp_pkt_sentThe send count.

Definition at line 651 of file evel_service.c.

§ evel_service_friendly_name_set()

void evel_service_friendly_name_set ( EVENT_SERVICE *const  event,
const char *const  friendly_name 
)

Set the Friendly Name property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
friendly_nameThe vendor friendly name to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 262 of file evel_service.c.

§ evel_service_local_jitter_set()

void evel_service_local_jitter_set ( EVENT_SERVICE *const  event,
const int  jitter 
)

Set the Local Jitter property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
jitterThe jitter to be set.

Definition at line 678 of file evel_service.c.

§ evel_service_local_rtp_oct_disc_set()

void evel_service_local_rtp_oct_disc_set ( EVENT_SERVICE *const  event,
const int  rtp_oct_disc 
)

Set the Local Rtp Octets Discarded property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
rtp_oct_discThe discard count.

Definition at line 705 of file evel_service.c.

§ evel_service_local_rtp_oct_recv_set()

void evel_service_local_rtp_oct_recv_set ( EVENT_SERVICE *const  event,
const int  rtp_oct_recv 
)

Set the Local Rtp Octets Received property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
rtp_oct_recvThe receive count.

Definition at line 732 of file evel_service.c.

§ evel_service_local_rtp_oct_sent_set()

void evel_service_local_rtp_oct_sent_set ( EVENT_SERVICE *const  event,
const int  rtp_oct_sent 
)

Set the Local Rtp Octets Sent property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
rtp_oct_sentThe send count.

Definition at line 759 of file evel_service.c.

§ evel_service_local_rtp_pkt_disc_set()

void evel_service_local_rtp_pkt_disc_set ( EVENT_SERVICE *const  event,
const int  rtp_pkt_disc 
)

Set the Local Rtp Packets Discarded property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
rtp_pkt_discThe discard count.

Definition at line 786 of file evel_service.c.

§ evel_service_local_rtp_pkt_recv_set()

void evel_service_local_rtp_pkt_recv_set ( EVENT_SERVICE *const  event,
const int  rtp_pkt_recv 
)

Set the Local Rtp Packets Received property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
rtp_pkt_recvThe receive count.

Definition at line 813 of file evel_service.c.

§ evel_service_local_rtp_pkt_sent_set()

void evel_service_local_rtp_pkt_sent_set ( EVENT_SERVICE *const  event,
const int  rtp_pkt_sent 
)

Set the Local Rtp Packets Sent property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
rtp_pkt_sentThe send count.

Definition at line 840 of file evel_service.c.

§ evel_service_mos_cqe_set()

void evel_service_mos_cqe_set ( EVENT_SERVICE *const  event,
const double  mos_cqe 
)

Set the Mos Cqe property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
mos_cqeThe mosCqe to be set.

Definition at line 867 of file evel_service.c.

§ evel_service_packet_loss_percent_set()

void evel_service_packet_loss_percent_set ( EVENT_SERVICE *const  event,
const double  packet_loss_percent 
)

Set the packet Loss Percent property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
packet_loss_percentThe packet loss in percent.

Definition at line 922 of file evel_service.c.

§ evel_service_packets_lost_set()

void evel_service_packets_lost_set ( EVENT_SERVICE *const  event,
const int  packets_lost 
)

Set the Packets Lost property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
packets_lostThe number of packets lost to be set.

Definition at line 894 of file evel_service.c.

§ evel_service_phone_number_set()

void evel_service_phone_number_set ( EVENT_SERVICE *const  event,
const char *const  phone_number 
)

Set the Phone Number property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
phone_numberThe Phone Number to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 1006 of file evel_service.c.

§ evel_service_product_id_set()

void evel_service_product_id_set ( EVENT_SERVICE *const  event,
const char *const  product_id 
)

Set the Product Id property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
product_idThe vendor product id to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 204 of file evel_service.c.

§ evel_service_r_factor_set()

void evel_service_r_factor_set ( EVENT_SERVICE *const  event,
const int  r_factor 
)

Set the R Factor property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
r_factorThe R Factor to be set.

Definition at line 949 of file evel_service.c.

§ evel_service_round_trip_delay_set()

void evel_service_round_trip_delay_set ( EVENT_SERVICE *const  event,
const int  round_trip_delay 
)

Set the Round Trip Delay property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
round_trip_delayThe Round trip delay to be set.

Definition at line 977 of file evel_service.c.

§ evel_service_rtcp_data_set()

void evel_service_rtcp_data_set ( EVENT_SERVICE *const  event,
const char *const  rtcp_data 
)

Set the RTCP Data property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
rtcp_dataThe RTCP Data to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 404 of file evel_service.c.

§ evel_service_subsystem_id_set()

void evel_service_subsystem_id_set ( EVENT_SERVICE *const  event,
const char *const  subsystem_id 
)

Set the Subsystem Id property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
subsystem_idThe vendor subsystem id to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 233 of file evel_service.c.

§ evel_service_type_set()

void evel_service_type_set ( EVENT_SERVICE *const  event,
const char *const  type 
)

Set the Event Type property of the Service event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Service event.
typeThe Event Type to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 135 of file evel_service.c.

§ evel_signaling_compressed_sip_set()

void evel_signaling_compressed_sip_set ( EVENT_SIGNALING *const  event,
const char *const  compressed_sip 
)

Set the Compressed SIP property of the Signaling event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Signaling event.
compressed_sipThe Compressed SIP to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 268 of file evel_signaling.c.

§ evel_signaling_correlator_set()

void evel_signaling_correlator_set ( EVENT_SIGNALING *const  event,
const char *const  correlator 
)

Set the Correlator property of the Signaling event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Signaling event.
correlatorThe correlator to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 417 of file evel_signaling.c.

§ evel_signaling_friendly_name_set()

void evel_signaling_friendly_name_set ( EVENT_SIGNALING *const  event,
const char *const  friendly_name 
)

Set the Friendly Name property of the Signaling event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Signaling event.
friendly_nameThe vendor friendly name to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 388 of file evel_signaling.c.

§ evel_signaling_local_ip_address_set()

void evel_signaling_local_ip_address_set ( EVENT_SIGNALING *const  event,
const char *const  local_ip_address 
)

Set the Local Ip Address property of the Signaling event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Signaling event.
local_ip_addressThe Local Ip Address to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 142 of file evel_signaling.c.

§ evel_signaling_local_port_set()

void evel_signaling_local_port_set ( EVENT_SIGNALING *const  event,
const char *const  local_port 
)

Set the Local Port property of the Signaling event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Signaling event.
local_portThe Local Port to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 173 of file evel_signaling.c.

§ evel_signaling_product_id_set()

void evel_signaling_product_id_set ( EVENT_SIGNALING *const  event,
const char *const  product_id 
)

Set the Product Id property of the Signaling event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Signaling event.
product_idThe vendor product id to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 330 of file evel_signaling.c.

§ evel_signaling_remote_ip_address_set()

void evel_signaling_remote_ip_address_set ( EVENT_SIGNALING *const  event,
const char *const  remote_ip_address 
)

Set the Remote Ip Address property of the Signaling event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Signaling event.
remote_ip_addressThe Remote Ip Address to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 205 of file evel_signaling.c.

§ evel_signaling_remote_port_set()

void evel_signaling_remote_port_set ( EVENT_SIGNALING *const  event,
const char *const  remote_port 
)

Set the Remote Port property of the Signaling event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Signaling event.
remote_portThe Remote Port to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 236 of file evel_signaling.c.

§ evel_signaling_subsystem_id_set()

void evel_signaling_subsystem_id_set ( EVENT_SIGNALING *const  event,
const char *const  subsystem_id 
)

Set the Subsystem Id property of the Signaling event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Signaling event.
subsystem_idThe vendor subsystem id to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 359 of file evel_signaling.c.

§ evel_signaling_summary_sip_set()

void evel_signaling_summary_sip_set ( EVENT_SIGNALING *const  event,
const char *const  summary_sip 
)

Set the Summary SIP property of the Signaling event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Signaling event.
summary_sipThe Summary SIP to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 299 of file evel_signaling.c.

§ evel_signaling_type_set()

void evel_signaling_type_set ( EVENT_SIGNALING *const  event,
const char *const  type 
)

Set the Event Type property of the Signaling event.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
eventPointer to the Signaling event.
typeThe Event Type to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 114 of file evel_signaling.c.

§ evel_start_epoch_set()

void evel_start_epoch_set ( EVENT_HEADER *const  header,
const unsigned long long  start_epoch_microsec 
)

Set the Start Epoch property of the event header.

Note
The Start Epoch defaults to the time of event creation.
Parameters
headerPointer to the EVENT_HEADER.
start_epoch_microsecThe start epoch to set, in microseconds.

Definition at line 189 of file evel_event.c.

§ evel_state_change_addl_field_add()

void evel_state_change_addl_field_add ( EVENT_STATE_CHANGE *const  state_change,
const char *const  name,
const char *const  value 
)

Add an additional field name/value pair to the State Change.

The name and value are null delimited ASCII strings. The library takes a copy so the caller does not have to preserve values after the function returns.

Parameters
state_changePointer to the EVENT_STATE_CHANGE.
nameASCIIZ string with the attribute's name. The caller does not need to preserve the value once the function returns.
valueASCIIZ string with the attribute's value. The caller does not need to preserve the value once the function returns.

Definition at line 186 of file evel_state_change.c.

§ evel_state_change_type_set()

void evel_state_change_type_set ( EVENT_STATE_CHANGE *const  state_change,
const char *const  type 
)

Set the Event Type property of the State Change.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
state_changePointer to the EVENT_STATE_CHANGE.
typeThe Event Type to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 156 of file evel_state_change.c.

§ evel_syslog_addl_field_add()

void evel_syslog_addl_field_add ( EVENT_SYSLOG syslog,
char *  name,
char *  value 
)

Add an additional field name/value pair to the Syslog.

The name and value are null delimited ASCII strings. The library takes a copy so the caller does not have to preserve values after the function returns.

Parameters
syslogPointer to the syslog.
nameASCIIZ string with the attribute's name. The caller does not need to preserve the value once the function returns.
valueASCIIZ string with the attribute's value. The caller does not need to preserve the value once the function returns.

Add an additional field name/value pair to the Syslog.

The name and value are null delimited ASCII strings. The library takes a copy so the caller does not have to preserve values after the function returns.

Parameters
syslogPointer to the syslog.
nameASCIIZ string with the attribute's name. The caller does not need to preserve the value once the function returns.
valueASCIIZ string with the attribute's value. The caller does not need to preserve the value once the function returns.

Definition at line 148 of file evel_syslog.c.

§ evel_syslog_event_source_host_set()

void evel_syslog_event_source_host_set ( EVENT_SYSLOG syslog,
const char *const  host 
)

Set the Event Source Host property of the Syslog.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
syslogPointer to the Syslog.
hostThe Event Source Host to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 189 of file evel_syslog.c.

§ evel_syslog_facility_set()

void evel_syslog_facility_set ( EVENT_SYSLOG syslog,
EVEL_SYSLOG_FACILITIES  facility 
)

Set the Syslog Facility property of the Syslog.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
syslogPointer to the Syslog.
facilityThe Syslog Facility to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Set the Syslog Facility property of the Syslog.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
syslogPointer to the Syslog.
facilityThe Syslog Facility to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 219 of file evel_syslog.c.

§ evel_syslog_proc_id_set()

void evel_syslog_proc_id_set ( EVENT_SYSLOG syslog,
int  proc_id 
)

Set the Process ID property of the Syslog.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
syslogPointer to the Syslog.
proc_idThe Process ID to be set.
Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
syslogPointer to the Syslog.
proc_idThe Process ID to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 274 of file evel_syslog.c.

§ evel_syslog_proc_set()

void evel_syslog_proc_set ( EVENT_SYSLOG syslog,
const char *const  proc 
)

Set the Process property of the Syslog.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
syslogPointer to the Syslog.
procThe Process to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 248 of file evel_syslog.c.

§ evel_syslog_s_data_set()

void evel_syslog_s_data_set ( EVENT_SYSLOG syslog,
const char *const  s_data 
)

Set the Structured Data property of the Syslog.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
syslogPointer to the Syslog.
s_dataThe Structured Data to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 331 of file evel_syslog.c.

§ evel_syslog_type_set()

void evel_syslog_type_set ( EVENT_SYSLOG syslog,
const char *const  type 
)

Set the Event Type property of the Syslog.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
syslogPointer to the syslog.
typeThe Event Type to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 118 of file evel_syslog.c.

§ evel_syslog_version_set()

void evel_syslog_version_set ( EVENT_SYSLOG syslog,
int  version 
)

Set the Version property of the Syslog.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
syslogPointer to the Syslog.
versionThe Version to be set.
Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
syslogPointer to the Syslog.
versionThe Version to be set. ASCIIZ string. The caller does not need to preserve the value once the function returns.

Definition at line 302 of file evel_syslog.c.

§ evel_terminate()

EVEL_ERR_CODES evel_terminate ( void  )

Clean up the EVEL library.

Note
that at present don't expect Init/Term cycling not to leak memory!
Returns
Status code
Return values
EVEL_SUCCESSOn success
One of ::EVEL_ERR_CODESOn failure.

Definition at line 260 of file evel.c.

§ evel_vnic_use_bcast_pkt_in_set()

void evel_vnic_use_bcast_pkt_in_set ( MEASUREMENT_VNIC_USE *const  vnic_use,
const int  broadcast_packets_in 
)

Set the Broadcast Packets Received property of the vNIC Use.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
vnic_usePointer to the vNIC Use.
broadcast_packets_inBroadcast packets received.

Definition at line 985 of file evel_scaling_measurement.c.

§ evel_vnic_use_bcast_pkt_out_set()

void evel_vnic_use_bcast_pkt_out_set ( MEASUREMENT_VNIC_USE *const  vnic_use,
const int  broadcast_packets_out 
)

Set the Broadcast Packets Transmitted property of the vNIC Use.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
vnic_usePointer to the vNIC Use.
broadcast_packets_outBroadcast packets transmitted.

Definition at line 1013 of file evel_scaling_measurement.c.

§ evel_vnic_use_mcast_pkt_in_set()

void evel_vnic_use_mcast_pkt_in_set ( MEASUREMENT_VNIC_USE *const  vnic_use,
const int  multicast_packets_in 
)

Set the Multicast Packets Received property of the vNIC Use.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
vnic_usePointer to the vNIC Use.
multicast_packets_inMulticast packets received.

Definition at line 1041 of file evel_scaling_measurement.c.

§ evel_vnic_use_mcast_pkt_out_set()

void evel_vnic_use_mcast_pkt_out_set ( MEASUREMENT_VNIC_USE *const  vnic_use,
const int  multicast_packets_out 
)

Set the Multicast Packets Transmitted property of the vNIC Use.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
vnic_usePointer to the vNIC Use.
multicast_packets_outMulticast packets transmitted.

Definition at line 1069 of file evel_scaling_measurement.c.

§ evel_vnic_use_ucast_pkt_in_set()

void evel_vnic_use_ucast_pkt_in_set ( MEASUREMENT_VNIC_USE *const  vnic_use,
const int  unicast_packets_in 
)

Set the Unicast Packets Received property of the vNIC Use.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
vnic_usePointer to the vNIC Use.
unicast_packets_inUnicast packets received.

Definition at line 1097 of file evel_scaling_measurement.c.

§ evel_vnic_use_ucast_pkt_out_set()

void evel_vnic_use_ucast_pkt_out_set ( MEASUREMENT_VNIC_USE *const  vnic_use,
const int  unicast_packets_out 
)

Set the Unicast Packets Transmitted property of the vNIC Use.

Note
The property is treated as immutable: it is only valid to call the setter once. However, we don't assert if the caller tries to overwrite, just ignoring the update instead.
Parameters
vnic_usePointer to the vNIC Use.
unicast_packets_outUnicast packets transmitted.

Definition at line 1125 of file evel_scaling_measurement.c.

§ evel_write_callback()

size_t evel_write_callback ( void *  contents,
size_t  size,
size_t  nmemb,
void *  userp 
)

Callback function to provide returned data.

Copy data into the supplied buffer, write_callback::ptr, checking size limits.

Returns
Number of bytes placed into write_callback::ptr. 0 for EOF.

Definition at line 712 of file evel_event_mgr.c.

§ log_debug()

void log_debug ( EVEL_LOG_LEVELS  level,
char *  format,
  ... 
)

Log debug information.

Logs debugging information in a platform independent manner.

Parameters
[in]levelThe debugging level - one of EVEL_LOG_LEVELS.
[in]formatLog formatting string in printf format.
[in]...Variable argument list.

Log debug information.

Provides an interface to syslog with formatting of the nesting level so that it's easier to see function entry/exit.

Parameters
[in]levelThe debug level - see EVEL_LOG_LEVELS.
[in]formatThe output formatting in printf style.
[in]...Variable arguments as specified in the format string.

Definition at line 120 of file evel_logging.c.

§ log_error_state()

void log_error_state ( char *  format,
  ... 
)

Definition at line 98 of file evel_logging.c.

§ log_initialize()

void log_initialize ( EVEL_LOG_LEVELS  level,
const char *  ident 
)

Initialize logging.

Parameters
[in]levelThe debugging level - one of EVEL_LOG_LEVELS.
[in]identThe identifier for our logs.

Definition at line 68 of file evel_logging.c.

Variable Documentation

§ debug_indent

int debug_indent

Definition at line 54 of file evel_logging.c.

§ debug_level

EVEL_LOG_LEVELS debug_level

Definition at line 52 of file evel_logging.c.

§ fout

FILE* fout