You are here: CSP API Reference > 1 EXS & SwitchKit API Messages > Generic Event Logger Configure/Query 0x003D
Generic Event Logger Configure/Query 0x003D
SwitchKit Name
GELConfigQuery
Type
EXS API and SwitchKit API message
Description
The Generic Event Logger (GEL) records system application and software debug events in the Excel platform. The GEL provides more debug data than the current fault log and online diagnostics.
This message lets you control the Generic Event Logger (GEL). Every card that supports GEL has two buffers. One buffer stores LOGF/LOGB entries, and the other stores LOGT entries.
LOGF enters seven data fields of ULONG type and an 80 character descriptor field to the LOGF/LOGB buffer. All data fields are user defined.
LOGB puts a memory dump from a user defined address into the LOGF/LOGB buffer. The user also defines the size of the memory dump and a descriptive string of up to 20 characters.
LOGT places a user-defined 20 character descriptive string into the LOGT buffer.
NOTE: This message is for debugging purposes only and should not be used until you contact technical support. Also, this message reduces system performance. Excel recommends using this message in test systems only.
Sent by
SwitchKit Code
Configuration
GELConfigQuery (
Node = integer,
Slot = integer,
Action = integer,
DataLength = integer,
Data = byte array);
C Structure
typedef struct {
UBYTE Slot;
UBYTE Action;
UBYTE DataLength;
UBYTE Data[221];
} XL_GELConfigQuery;
C Structure Response
typedef struct {
unsigned short Status;
UBYTE Slot;
UBYTE Data[221];
} XL_GELConfigQueryAck;
C++ Class
class XLC_GELConfigQuery : public XLC_OutboundMessage {
public:
UBYTE getSlot() const;
void setSlot(UBYTE x);
UBYTE getAction() const;
void setAction(UBYTE x);
UBYTE getDataLength() const;
void setDataLength(UBYTE x);
const UBYTE *getData() const;
UBYTE *getData();
void setData(UBYTE *x);
};
C++ Class Response
class XLC_GELConfigQueryAck : public XLC_AcknowledgeMessage {
public:
unsigned short getStatus() const;
void setStatus(unsigned short x);
UBYTE getSlot() const;
void setSlot(UBYTE x);
const UBYTE *getData() const;
UBYTE *getData();
void setData(UBYTE *x);
};
EXS API Hex Format
MESSAGE (White) |
RESPONSE (Gray) |
||
---|---|---|---|
Byte |
Field Description |
Byte |
Field Description |
0 |
Frame (0xFE) |
0 |
Frame (0xFE) |
1, 2 |
Length (0x00NN) |
1, 2 |
Length (0x00NN) |
3, 4 |
Message Type (0x003D) |
3, 4 |
Message Type (0x003D) |
5 |
Reserved (0x00) |
5 |
Reserved (0x00) |
6 |
Sequence Number |
6 |
Same Sequence Number |
7 |
Logical Node ID |
7 |
Logical Node ID |
: |
Address Method 0x00 - Individual AEs |
8, 9 |
|
Number of AEs to follow |
|||
AE |
|||
: |
Action 0x01 Set control mask 0x02 Set Buffer Full option 0x03 Start logging* 0x04 Pause logging* 0x05 Clear log 0x06 Get logger status 0x07 Get control mask 0x08 Get Event buffer data 0x09 Get Trace buffer data 0x0A Get Module names 0x0B Stop Write 0x0C Telnet IP Print enable 0x0D Telnet IP Print disable
|
: |
Same as message |
: |
Data[0] Data Length Field |
: |
Response Data[0] |
: |
Data[1] Data fields |
: |
Checksum |
: |
Checksum |
Response Status Continued Below |
|
---|---|
If the message contains invalid fields, the Excel platform returns a NACK, but the following are some specific reasons for NACKs to this message. If you try to configure the logger or retrieve the buffer before pausing the logger, then the Excel platform responds with a NACK. This NACK specifies that the logger is not in a valid state.
The following NACKs are used: 0x14 Message Invalid for Current Matrix Controller State The Matrix Controller is not in a state to accept this message. 0x74 Invalid Card Type Incorrect card type for attempted operation. 0x20 Invalid Action Value Invalid decision parameter action value was received. 0x61 Invalid Slot The slot specified is not valid for the message sent. 0x99 Invalid Configuration Request Configuration request is invalid. 0x17 Invalid Data Type Returned in response to a message with invalid data parameters. |
|
Data |
Response Data |
---|---|
Below is the data associated with each of the above actions.
0x01 Set control mask Use this Action to define the control masks for each module.
Data[0] Module ID 1 Bit Mask 4 bytes: 0 1 2 3 : Data[n] Module ID n Bit Mask 4 bytes: 0 1 2 3 |
0x01 For Set control mask Data[0] Paused Mask [4 bytes] for module ID 1 Data[1] Paused Mask [4 bytes] for module ID 2 : Data[31] Paused Mask [4 bytes] for module ID 32
|
Use this Action to set up the Buffer Full option. When you use the Stop option, the buffer stops recording information once it is full. The Wrap option, once the buffer is full, the buffer begins to overwrite the earliest data.
Data: 0x00 Stop (stops the buffer when it is full) 0x01 Wrap (wraps to beginning, overwriting |
|
Use this Action to set up the buffer to turn on after a reset or not. If you want the buffer to start logging after a reset, send this Action with a data of 0x01. If you do not want the buffer to turn on after a reset, send the data 0x00.
Data: 0x00 Stop (Do not continue logging to buffer 0x01 Start (Continue logging to buffer after
*If the slot number in the AIB is FF, then this message starts the loggers on all system cards that support GEL. |
|
Use this message to stop logging to a buffer. Send this message again to unpause logging to a buffer.
Data: NA
|
|
Use this Action when you want to remove all entries from a log.
Data: NA |
|
Use this Action to receive a report on the status of a buffer.
Data: NA
|
Data[1] Number of Blocks in buffer Data[2] Number of Trace records in buffer Data[3] Number of Records skipped Data[4] Buffer Full action 0 stop logging when full 1 wrap buffer Data[5] Logger state 0 Paused 1 Logging Data[6] Buffer state 0 Available 1 Full Data[7] Percent of LOGF/LOGB buffer remaining Data[8] Max. LOGF/LOGB buffer size (MSB) Data[9] Max. LOGF/LOGB buffer size (LSB) Data[10] Maximum LOGT records (MSB) Data[11] Maximum LOGT records (LSB) |
Use this Action to find out the control masks of a buffer.
Data: NA
|
Data[1] Module ID 1 (LSB) Bit Mask [paused] 4 bytes 0 1 2 3 0 1 2 3 : Data[n] Module ID n (MSB) Data[n+1] Module ID n (LSB) Bit Mask [paused] 4 bytes 0 1 2 3 0 1 2 3 |
0x08 Get Event buffer data Send this message to retrieve the information in the Event buffer and have it dumped to the file specified. Use Data[0] to tell the computer to either append the file you give and put the new information at the end, or to overwrite the existing file. To stop the dump, you need to send the Stop Write (0x0B) Action.
Data[0] Write permission 0 append 1 overwrite Data[1] First character [Path/Filename] : Data[n] NULL termination |
|
Send this message to retrieve the information in the Trace buffer and have it dumped to the file specified. Use Data[0] to tell the computer to either append the file you give and put the new information at the end, or to overwrite the existing file. To stop the dump, you need to send the Stop Write (0x0B) Action.
Data: Data[0] Write permission 0 append 1 overwrite Data[1] First character[Path/Filename] : Data[n] NULL termination
|
|
Use this Action to find out the names of a module.
Data: NA
|
Data[1] Module name 2 [12 characters] : Data[31] Module name 32 [12 characters] |
Use this Action to stop writing from a buffer to a file.
Data[0] First character [Path/Filename] : Data[n] NULL termination |
|