Parser
Introduction
Generic parser that is used to register keywords and a corresponding function that will be executed when that keyword is encountered in the command stream (either from plugins or via streaming)
To use a parser do the following:
- Define a structure that will be used to share user state across calls (user defined
void *user
) - Initialize the parser using
parser_init
- Register keywords with their associated callback function using
parser_add_keyword
- Start a loop for as long there is input (or parser_action returns error)
- Fetch the next line using
parser_next
(if needed) - Process the line using
parser_action
- Fetch the next line using
- Release the parser using
parser_destroy
- Release the user structure
See examples in receiver.c / pluginsd_parser.c
Was this page helpful?
Need more help?
- Join our community
- Submit a bug or feature request for the FOSS agent
- Submit a bug or feature request for the Netdata cloud