# fluent-plugin-map
[![Build Status](https://travis-ci.org/fluent-plugins-nursery/fluent-plugin-map.svg?branch=master)](https://travis-ci.org/fluent-plugins-nursery/fluent-plugin-map)
fluent-plugin-map(out\_map) is the non-buffered plugin that can convert an event log to different event log(s)
## Requirements
| fluent-plugin-map | fluentd | ruby |
|-------------------|---------|------|
| >= 0.2.0 | >= v0.14.0 | >= 2.1 |
| < 0.2.0 | >= v0.12.0 | >= 1.9 |
## MapFilter
### Example
This sample config filter code file and time file.
The parameter "map" can use 2 variables in event log; time, record. The format of time is an integer number of seconds since the Epoch. The format of record is hash.
The config file parses # as the begin of comment. So the "map" value cannot use #{tag} operation.
This plugin can output multi logs by seting multi to true.
If you don't use multi option, you can use time, record parameter. The 2 following filter directive is same:
@type map
map ([time, {"code" => record["code"].to_i}])
@type map
time time
record ({"code" => record["code"].to_i})
## MapOutput
### Example
This sample config output code file and time file.
@type map
map ([["code." + tag, time, {"code" => record["code"].to_i}], ["time." + tag, time, {"time" => record["time"].to_i}]])
multi true
@type file
path code.log
@type file
path time.log
The parameter "map" can use 3 variables in event log; tag, time, record. The format of time is an integer number of seconds since the Epoch. The format of record is hash.
The config file parses # as the begin of comment. So the "map" value cannot use #{tag} operation.
This plugin can output multi logs by seting multi to true.
If you don't use multi option, you can use key, time, record parameter. The 2 following match directive is same:
@type map
map (["code." + tag, time, {"code" => record["code"].to_i}])
@type map
tag ("code." + tag)
time time
record ({"code" => record["code"].to_i})
## Note
you have to wrap some configuration values with parenthesis like `("code." + tag)`, to avoid parsing by Fluentd itself.
See also: [Config File Syntax - Fluentd](https://docs.fluentd.org/configuration/config-file#format-tips)
## Copyright
* Copyright (c) 2015- Tomita Kohei
* Apache License, Version 2.0