#include "DitsTypes.h"
#include "Ers.h"
#include <stdio.h>
#include <string>
#include <DitsFix.h>
Go to the source code of this file.
Classes | |
class | GitLogger___Time |
class | GitLogger |
Implementation of a Class supporting Logging with a DRAMA GIT Task. More... | |
Macros | |
#define | GIT_LOG_ALL 0xFFFFFFFF |
Log everything. More... | |
#define | GIT_LOG_STARTUP 0x01 |
Log Task startup messages. More... | |
#define | GIT_LOG_ERRORS 0x02 |
Log Ers and action completion errors. More... | |
#define | GIT_LOG_ACTENT 0x04 |
Log Action entry. More... | |
#define | GIT_LOG_ACTEXIT 0x08 |
Log Action exit messages. More... | |
#define | GIT_LOG_INST 0x10 |
Log instument specific log messages. More... | |
#define | GIT_LOG_MSG 0x20 |
Log MsgOut messages. More... | |
#define | GIT_LOG_DEBUG 0x40 |
Log Debug messages. More... | |
#define | GIT_LOG_COMMS 0x80 |
Log DRAMA communications messages. More... | |
#define | GIT_LOG_USER1 0x100 |
User defined logging level 1. More... | |
#define | GIT_LOG_USER2 0x200 |
User defined logging level 2. More... | |
#define | GIT_LOG_USER3 0x400 |
User defined logging level 3. More... | |
#define | GIT_LOG_USER4 0x800 |
User defined logging level 4. More... | |
#define | GIT_LOG_ARGS 0x1000 |
Log entry and exit arguments if logging entry and exit. More... | |
#define | GIT_LOG_ALWAYS 0x40000 |
Always log the message. More... | |
#define | GIT_LOG_ALWAYS_S 0x80000 |
Always log the messages, including to the screen. More... | |
#define | LOG_ALL GIT_LOG_ALL |
Log everything. More... | |
#define | LOG_STARTUP GIT_LOG_STARTUP |
Log Task startup messages. More... | |
#define | LOG_ERRORS GIT_LOG_ERRORS |
Log Ers and action completion errors. More... | |
#define | LOG_ACTENT GIT_LOG_ACTENT |
Log Action entry. More... | |
#define | LOG_ACTEXIT GIT_LOG_ACTEXIT |
Log Action exit messages. More... | |
#define | LOG_INST GIT_LOG_INST |
Log instument specific log messages. More... | |
#define | LOG_MSG GIT_LOG_MSG |
Log MsgOut messages. More... | |
#define | LOG_DEBUG GIT_LOG_DEBUG |
Log Debug messages. More... | |
#define | LOG_COMMS GIT_LOG_COMMS |
Log DRAMA communications messages. More... | |
#define | LOG_USER1 GIT_LOG_USER1 |
User defined logging level 1. More... | |
#define | LOG_USER2 GIT_LOG_USER2 |
User defined logging level 2. More... | |
#define | LOG_USER3 GIT_LOG_USER3 |
User defined logging level 3. More... | |
#define | LOG_USER4 GIT_LOG_USER4 |
User defined logging level 4. More... | |
#define | LOG_ARGS GIT_LOG_ARGS |
Log entry and exit arguments if logging entry and exit. More... | |
#define | LOG_ALWAYS GIT_LOG_ALWAYS |
Always log the message. More... | |
#define | LOG_ALWAYS_S GIT_LOG_ALWAYS_S |
Always log the messages, including to the screen. More... | |
#define | GIT_LOGGER_M_NO_FSYNC 1 /* If set, don't fsync on flush */ |
C interface to tuning GitLogger. More... | |
#define | GIT_LOGGER_M_FLUSH_ALWAYS 2 /* If set, flush on each event */ |
#define | GIT_LOGGER_M_LOG_FLUSH_OFF |
#define | GIT_LOGGER_M_SYNC_THRD_RUN 8 /* If set - run the sync thread */ |
#define | GIT_LOGGER_M_SYNC_THRD_IS_RNNNG |
Functions | |
FILE * | GitLoggerFile (StatusType *status) |
C interface to fetching the log file pointer. More... | |
void | GitLoggerFlushAlways (int flag, StatusType *status) |
C interface to setting the GitLogger flush flag. More... | |
void | GitLoggerTune (unsigned NewSettings, unsigned *OldSettings, StatusType *status) |
void | GitLoggerInit (const char *system, StatusType *status) |
C interface to enabling a Git logger. More... | |
#define GIT_LOG_ACTENT 0x04 |
Log Action entry.
#define GIT_LOG_ACTEXIT 0x08 |
Log Action exit messages.
#define GIT_LOG_ALL 0xFFFFFFFF |
Log everything.
#define GIT_LOG_ALWAYS 0x40000 |
Always log the message.
#define GIT_LOG_ALWAYS_S 0x80000 |
Always log the messages, including to the screen.
#define GIT_LOG_ARGS 0x1000 |
Log entry and exit arguments if logging entry and exit.
#define GIT_LOG_COMMS 0x80 |
Log DRAMA communications messages.
#define GIT_LOG_DEBUG 0x40 |
Log Debug messages.
#define GIT_LOG_ERRORS 0x02 |
Log Ers and action completion errors.
#define GIT_LOG_INST 0x10 |
Log instument specific log messages.
#define GIT_LOG_MSG 0x20 |
Log MsgOut messages.
#define GIT_LOG_STARTUP 0x01 |
Log Task startup messages.
#define GIT_LOG_USER1 0x100 |
User defined logging level 1.
#define GIT_LOG_USER2 0x200 |
User defined logging level 2.
#define GIT_LOG_USER3 0x400 |
User defined logging level 3.
#define GIT_LOG_USER4 0x800 |
User defined logging level 4.
#define GIT_LOGGER_M_LOG_FLUSH_OFF |
#define GIT_LOGGER_M_NO_FSYNC 1 /* If set, don't fsync on flush */ |
C interface to tuning GitLogger.
NewSetting is the new settings to apply. If OldSettings is non-zero, the previous settings are written here.
This function allows us to tune GitLogger effiency vs other events. By default - GitLoggger will flush and fsync() the log file each time DitsMsgReceive() returns (LogFlush() events). We can turn this off by setting the GIT_LOGGER_M_LOG_FLUSH_OFF flag. Alternatively, we could do the STDIO flushing but turn the (rather expensive) fsync() call off using GIT_LOGGER_M_LOG_NO_FSYNC (This defaults to being set under Linux, where fsync() is expensive). We could also ensure that every message is flushed immediately by setting GIT_LOGGER_M_FLUSH_ALWAYS.
#define GIT_LOGGER_M_SYNC_THRD_IS_RNNNG |
#define LOG_ACTENT GIT_LOG_ACTENT |
Log Action entry.
#define LOG_ACTEXIT GIT_LOG_ACTEXIT |
Log Action exit messages.
#define LOG_ALL GIT_LOG_ALL |
Log everything.
#define LOG_ALWAYS GIT_LOG_ALWAYS |
Always log the message.
#define LOG_ALWAYS_S GIT_LOG_ALWAYS_S |
Always log the messages, including to the screen.
#define LOG_ARGS GIT_LOG_ARGS |
Log entry and exit arguments if logging entry and exit.
#define LOG_COMMS GIT_LOG_COMMS |
Log DRAMA communications messages.
#define LOG_DEBUG GIT_LOG_DEBUG |
Log Debug messages.
#define LOG_ERRORS GIT_LOG_ERRORS |
Log Ers and action completion errors.
#define LOG_INST GIT_LOG_INST |
Log instument specific log messages.
#define LOG_MSG GIT_LOG_MSG |
Log MsgOut messages.
#define LOG_STARTUP GIT_LOG_STARTUP |
Log Task startup messages.
#define LOG_USER1 GIT_LOG_USER1 |
User defined logging level 1.
#define LOG_USER2 GIT_LOG_USER2 |
User defined logging level 2.
#define LOG_USER3 GIT_LOG_USER3 |
User defined logging level 3.
#define LOG_USER4 GIT_LOG_USER4 |
User defined logging level 4.
FILE * GitLoggerFile | ( | StatusType * | status | ) |
C interface to fetching the log file pointer.
This C interface returns the log file FILE pointer, allowing direct writes to the log file etc. Please use with care. Returns NULL if the file is not available (normally with status set bad).
void GitLoggerFlushAlways | ( | int | flag, |
StatusType * | status | ||
) |
C interface to setting the GitLogger flush flag.
This C interface allows the flag which determines if the log file should be flushed after every write to be set. Set flag to true (non-zero) to enable this, false (0) to disable it
Depreciated: Use GitLoggerTune() instead.
Click here for the DRAMA home page and here for the AAO home page.
For more information, contact tjf@aao.gov.au Generated on Mon Feb 22 2016 13:58:31 for AAO DRAMA C++ Interfaces by