Skip to content

Commit

Permalink
Adjust enum readme and sample config style
Browse files Browse the repository at this point in the history
  • Loading branch information
danielnelson committed Jul 3, 2018
1 parent 500e136 commit bf076da
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 46 deletions.
43 changes: 21 additions & 22 deletions plugins/processors/enum/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,26 +9,25 @@ used for all values, which are not contained in the value_mappings. The
processor supports explicit configuration of a destination field. By default the
source field is overwritten.

### Configuration
Configuration using table syntax:
`toml
# Configure a status mapping for field 'status'
[[processors.enum.fields]]
source = "status"
destination = "code"
default = -1
[processors.enum.fields.value_mappings]
green = 0
yellow = 1
red = 2
`
### Configuration:

Configuration using inline syntax:
`toml
# Configure a status mapping for field 'status'
[[processors.enum.fields]]
source = "status"
destination = "code"
default = -1
value_mappings = {green = 0, yellow = 1, red = 2 }
`
```toml
[[processors.enum]]
[[processors.enum.fields]]
## Name of the field to map
source = "name"

## Destination field to be used for the mapped value. By default the source
## field is used, overwriting the original value.
# destination = "mapped"

## Default value to be used for all values not contained in the mapping
## table. When unset, the unmodified value for the field will be used if no
## match is found.
# default = 0

## Table of mappings
[processors.enum.fields.value_mappings]
value1 = 1
value2 = 2
```
41 changes: 17 additions & 24 deletions plugins/processors/enum/enum.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,30 +8,23 @@ import (
)

var sampleConfig = `
## NOTE This processor will map metric values to different values. It is aimed
## to map enum values to numeric values.
## Fields to be considered
# [[processors.enum.fields]]
#
# Name of the field source field to map
# source = "name"
#
# Optional destination field to be used for the mapped value. Source field is
# used, when no explicit destination is configured.
# destination = "mapped"
#
# Optional default value to be used for all values not contained in the mapping
# table. Only applied when configured.
# default = 0
#
# Value Mapping Table
# [processors.enum.value_mappings]
# value1 = 1
# value2 = 2
#
## Alternatively the mapping table can be given in inline notation
# value_mappings = {value1 = 1, value2 = 2}
[[processors.enum.fields]]
## Name of the field to map
source = "name"
## Destination field to be used for the mapped value. By default the source
## field is used, overwriting the original value.
# destination = "mapped"
## Default value to be used for all values not contained in the mapping
## table. When unset, the unmodified value for the field will be used if no
## match is found.
# default = 0
## Table of mappings
[processors.enum.fields.value_mappings]
value1 = 1
value2 = 2
`

type EnumMapper struct {
Expand Down

0 comments on commit bf076da

Please sign in to comment.