OpenMAMA
statslogger.h
Go to the documentation of this file.
1 /* $Id$
2  *
3  * OpenMAMA: The open middleware agnostic messaging API
4  * Copyright (C) 2011 NYSE Technologies, Inc.
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this library; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
19  * 02110-1301 USA
20  */
21 
22 #ifndef MamaStatsLoggerH__
23 #define MamaStatsLoggerH__
24 
25 #include <mama/status.h>
26 #include <mama/types.h>
27 
28 #if defined(__cplusplus)
29 extern "C" {
30 #endif
31 
32 /************************************************************************
33 * Constants
34 *************************************************************************/
35 #define SL_TOPIC_USAGE_LOG "SL_TOPIC_USAGE_LOG"
36 #define STATS_TOPIC "STATS_TOPIC"
37 
38 /************************************************************************
39 * Typedefs
40 *************************************************************************/
42 typedef enum mamaSlEvent_
43 {
50 } mamaSlEvent;
51 
54 {
60 
61 /************************************************************************
62 * Functions
63 *************************************************************************/
64 
71 MAMAExpDLL
72 extern const char*
80 MAMAExpDLL
81 extern const char*
83 
92 MAMAExpDLL
93 extern mama_status
95 
103 MAMAExpDLL
104 extern mama_status
106  mamaQueue queue,
107  mamaTransport tport);
108 
109 MAMAExpDLL
110 extern mama_status
112  mamaQueue queue,
113  mamaTransport tport,
114  const char* topic);
115 
116 
122 MAMAExpDLL
123 extern mama_status
125 
132 MAMAExpDLL
133 extern mama_status
135  mama_f64_t interval);
136 
143 MAMAExpDLL
144 extern mama_status
146  mama_size_t numEvents);
147 
154 MAMAExpDLL
155 extern mama_status
157  const char* userName);
158 
165 MAMAExpDLL
166 extern mama_status
168  const char** userName);
169 
170 
177 MAMAExpDLL
178 extern mama_status
180  const char* hostName);
181 
188 MAMAExpDLL
189 extern mama_status
191  const char** hostName);
192 
199 MAMAExpDLL
200 extern mama_status
202  const char* appName);
203 
210 MAMAExpDLL
211 extern mama_status
213  const char** appName);
214 
221 MAMAExpDLL
222 extern mama_status
224  const char* applClass);
225 
232 MAMAExpDLL
233 extern mama_status
235  const char** appClass);
236 
243 MAMAExpDLL
244 extern mama_status
246  const char* ipAddress);
247 
254 MAMAExpDLL
255 extern mama_status
257  const char** ipAddress);
258 
264 MAMAExpDLL
265 extern mama_status
267 
273 MAMAExpDLL
274 extern mama_status
276 
284 MAMAExpDLL
285 extern mama_status
287  mamaSubscription subscription,
288  int32_t entitleCode);
289 
297 MAMAExpDLL
298 extern mama_status
300  mamaSubscription subscription,
301  mamaSlSubFailReason reason);
308 MAMAExpDLL
309 extern mama_status
311  mamaSubscription subscription);
312 
313 MAMAExpDLL
314 extern mama_status
316  mamaMsg msg);
317 
318 MAMAExpDLL
319 extern mama_status
321 
322 MAMAExpDLL
323 extern mama_status
325  mama_bool_t* logMsgStats);
326 MAMAExpDLL
327 extern mama_status
329  mama_bool_t logMsgStats);
330 
331 MAMAExpDLL
332 extern mama_status
334 
335 #if defined(__cplusplus)
336 }
337 #endif
338 
339 #endif
int8_t mama_bool_t
Definition: types.h:42
MAMAExpDLL mama_status mamaStatsLogger_incMsgCount(mamaStatsLogger statsLogger)
struct mamaSubscriptionImpl_ * mamaSubscription
Definition: types.h:99
Definition: statslogger.h:47
enum mamaSlEvent_ mamaSlEvent
The event types handled by the stats logger.
MAMAExpDLL mama_status mamaStatsLogger_create(mamaStatsLogger logger, mamaQueue queue, mamaTransport tport)
Create and activate mamaStatsLogger object.
MAMAExpDLL mama_status mamaStatsLogger_getLogMsgStats(mamaStatsLogger logger, mama_bool_t *logMsgStats)
MAMAExpDLL mama_status mamaStatsLogger_getIpAddress(const mamaStatsLogger logger, const char **ipAddress)
Get the ipAddress.
MAMAExpDLL mama_status mamaStatsLogger_logLogout(mamaStatsLogger logger)
Log a logout event.
MAMAExpDLL const char * mamaStatsLogger_subFailReasonToString(mamaSlSubFailReason subFailReason)
Convert a mamaSlSubFailReason value to a string.
MAMAExpDLL mama_status mamaStatsLogger_destroy(mamaStatsLogger logger)
Destroy a mamaStatsLogger object, freeing any memory.
MAMAExpDLL mama_status mamaStatsLogger_logSubscriptionDestroy(mamaStatsLogger logger, mamaSubscription subscription)
Log a subscription destroy event.
MAMAExpDLL mama_status mamaStatsLogger_setApplicationName(mamaStatsLogger logger, const char *appName)
Set the applicationName.
MAMAExpDLL mama_status mamaStatsLogger_getHostName(const mamaStatsLogger logger, const char **hostName)
Get the hostName.
enum mamaSlSubFailReason_ mamaSlSubFailReason
The reasons for a subscription to fail.
Definition: statslogger.h:56
Definition: statslogger.h:46
Definition: statslogger.h:48
MAMAExpDLL mama_status mamaStatsLogger_logSubscriptionFail(mamaStatsLogger logger, mamaSubscription subscription, mamaSlSubFailReason reason)
Log a subscription fail event.
mamaSlEvent_
The event types handled by the stats logger.
Definition: statslogger.h:42
MAMAExpDLL mama_status mamaStatsLogger_logSubscriptionEntitlePass(mamaStatsLogger logger, mamaSubscription subscription, int32_t entitleCode)
Log a subscription entitlement check pass event.
Definition: statslogger.h:57
MAMAExpDLL mama_status mamaStatsLogger_setUserName(mamaStatsLogger logger, const char *userName)
Set the userName.
MAMAExpDLL mama_status mamaStatsLogger_setHostName(mamaStatsLogger logger, const char *hostName)
Set the hostName.
MAMAExpDLL mama_status mamaStatsLogger_getUserName(const mamaStatsLogger logger, const char **userName)
Get the userName.
struct mamaQueueImpl_ * mamaQueue
Definition: types.h:107
Definition: statslogger.h:55
Definition: statslogger.h:58
MAMAExpDLL const char * mamaStatsLogger_eventToString(mamaSlEvent event)
Convert a mamaSlEvent value to a string.
mamaSlSubFailReason_
The reasons for a subscription to fail.
Definition: statslogger.h:53
mamaMsg msg
Definition: publisher.h:54
double mama_f64_t
Definition: types.h:44
MAMAExpDLL mama_status mamaStatsLogger_getApplicationClass(const mamaStatsLogger logger, const char **appClass)
Get the applicationClass.
struct mamaMsgImpl_ * mamaMsg
Opaque definitions for all major MAMA data types.
Definition: types.h:95
MAMAExpDLL mama_status mamaStatsLogger_sendReport(mamaStatsLogger *logger)
MAMAExpDLL mama_status mamaStatsLogger_setReportSize(mamaStatsLogger logger, mama_size_t numEvents)
Set the maximum number of events to cache before reporting.
mama_status
Definition: status.h:37
MAMAExpDLL mama_status mamaStatsLogger_setApplicationClass(mamaStatsLogger logger, const char *applClass)
Set the applicationClass.
size_t mama_size_t
Definition: types.h:47
MAMAExpDLL mama_status mamaStatsLogger_setLogMsgStats(mamaStatsLogger logger, mama_bool_t logMsgStats)
MAMAExpDLL mama_status mamaStatsLogger_logLogin(mamaStatsLogger logger)
Log a login event.
MAMAExpDLL mama_status mamaStatsLogger_addStatMsg(mamaStatsLogger *logger, mamaMsg msg)
MAMAExpDLL mama_status mamaStatsLogger_allocate(mamaStatsLogger *logger)
Allocate memory for a new stats logger.
Definition: statslogger.h:45
struct mamaTransportImpl_ * mamaTransport
Definition: types.h:98
MAMAExpDLL mama_status mamaStatsLogger_setIpAddress(mamaStatsLogger logger, const char *ipAddress)
Set the ipAddress.
MAMAExpDLL mama_status mamaStatsLogger_getApplicationName(const mamaStatsLogger logger, const char **appName)
Get the applicationName.
MAMAExpDLL mama_status mamaStatsLogger_setReportInterval(mamaStatsLogger logger, mama_f64_t interval)
Set the reporting interval.
Definition: statslogger.h:44
MAMAExpDLL mama_status mamaStatsLogger_createForStats(mamaStatsLogger logger, mamaQueue queue, mamaTransport tport, const char *topic)
Definition: statslogger.h:49
struct mamaStatsLoggerImpl_ * mamaStatsLogger
Definition: types.h:123


© 2012 Linux Foundation