LogMan.io Library

A library of declaration is a folder on the filesystem that holds declarations for parsers, enrichers, correlators and other YAML elements such as !INCLUDE files.

A library has a prescribed structure:

library/
	<parser group 1>/
		p01_<parser>.yaml
		p02_<parser>.yaml
		e01_<enricher>.yaml
		e02_<enricher>.yaml
		include/
			head_parser.yaml
			spec_parser.yaml
			...
		test/
			test01.yaml
			...
 	<parser group 2>/
 	<parser group 2>/

 	<correlator group 1>/
 	<correlator group 2>/

 	...
 	include/

The parser group is a set of parser and enricher declarations that is operated within the same parser type.

The naming pattern eg. p01_<...>.yaml is recommended because it provides the control over the order of execution and a visual differentiator between parsers and enrichers. The order of files being loaded to the pipeline is alphabetical, thus parser with a name p01_<...>.yaml will be loaded into the pipeline before the p02_<...>.yaml parser.

library/<parser group/include is the implicit location of the !INCLUDE YAML files used within a parser group.

library/include is the recommended explicit location of the !INCLUDE YAML files used globally. It has to be specified explicitly (eg. by -I switch).

library/<* group/test is location of the unit test for the given group, see lmio-parser and lmio-correlator for more details about how to approach unit tests of the library.

The library is designed to be easily manageable by a version control systems such as Git or Subversion.