fluent-plugin-druid-log 0.1.2 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: efa3398798dfb2d5a258360dc86f8f76cd40fff9c3e454f6d60aa6ec2a60ffc4
4
- data.tar.gz: 9b65a364cd585eef36c33e7090db7f34d3cf4df57fb6333d8cb09d9930dfbcd0
3
+ metadata.gz: 9a568fff53580e5f69782de930f2f6dcb8fb6992d2168fbd263c4b7369fa5993
4
+ data.tar.gz: e35649e627b4a5d5da34a8b8e4fca0ee8cf4d755cc032670583ae19232b84717
5
5
  SHA512:
6
- metadata.gz: 8a684926b58b86cb8f26c0d14825bb3bddd6392502796214dab3901e540f5677caeff85592bbd1a5c01e35d8f67de050e451bc23200615ae0a7e681d66c157a0
7
- data.tar.gz: b02b37823c3699a85c3dd6bf7867f40ddd09a4b477d11194b2590e3cf44fd2295be1082b8bb8e0a25324a109f70f6df35adc5c6ace6d8f7f421aa57cb7d0e744
6
+ metadata.gz: ace12af8abe07e35c4a66e13b84fa7da842ed62c592bf217977bfb2f0b7785ec45c270f728f90fb765d688a32aa4b3ee65e7015ab6efafbdd71a70114712f8a8
7
+ data.tar.gz: aaff1af9901e2baefe6a975832adb9da2032021c01dbba7ae9297c704014d8a0de5a6e64d3320f4abcef223dd3517a4200d2d536445a940c4c341d25b5931d0c
data/README.md CHANGED
@@ -20,7 +20,7 @@ Example:
20
20
 
21
21
  <parse>
22
22
  @type regexp
23
- expression /^(?<timestamp>[^\t]+)\t(?<remote_addr>[^\t]*)\t{1,2}(?<query_result>[^\t]+)\t(?<raw_query>.*)$/
23
+ expression /^(?<timestamp>[^\t]+)\t(?<remote_addr>[^\t]*)\t{1,2}(?<query_result>[^\t]+)\t(?<query>.*)$/
24
24
  time_key timestamp
25
25
  keep_time_key true
26
26
  </parse>
@@ -11,9 +11,12 @@ module Fluent
11
11
  helpers :event_emitter, :timer
12
12
 
13
13
  DEFAULT_QUERY_KEY = 'query'
14
+ DEFAULT_QUERY_RESULT_KEY = 'query_result'
14
15
 
15
16
  desc 'Query key'
16
17
  config_param :query_key, :string, default: DEFAULT_QUERY_KEY
18
+ desc 'Query result key'
19
+ config_param :query_result_key, :string, default: DEFAULT_QUERY_RESULT_KEY
17
20
 
18
21
  def configure(conf)
19
22
  super
@@ -28,18 +31,22 @@ module Fluent
28
31
  end
29
32
 
30
33
  def filter(_tag, _time, record)
31
- new_record = format_record(record)
34
+ new_record = format_record(record.dup)
32
35
  fix_record(new_record)
33
36
  new_record
34
37
  end
35
38
 
36
39
  def format_record(record)
40
+ [query_key, query_result_key].each do |key|
41
+ record[key] = JSON.parse(record[key]) if record[key].is_a? String
42
+ end
43
+
37
44
  query_type = guess_query_type(record)
45
+ record['query_type'] = query_type
38
46
 
39
- new_record = record.except(query_key)
40
- new_record['query_type'] = query_type
41
- new_record["#{query_type}_query".downcase] = record[query_key].dup
42
- new_record
47
+ query_data = record.delete(query_key)
48
+ record["#{query_type}_query".downcase] = query_data
49
+ record
43
50
  end
44
51
 
45
52
  def guess_query_type(record)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fluent-plugin-druid-log
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thomas Tych