forked from fluent/fluentd
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ChangeLog
998 lines (702 loc) · 34.3 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
# v0.14
## Release 0.14.0.pre.1 - 2015/10/29
### New features / Enhancement
* Sub-second event time support
https://github.com/fluent/fluentd/pull/653
* Windows support
https://github.com/fluent/fluentd/pull/674
* Remove in_status plugin
https://github.com/fluent/fluentd/pull/690
* Update supported Ruby version to 2.1 or later
https://github.com/fluent/fluentd/pull/692
# v0.12
## Release 0.12.16 - 2015/09/30
### New features / Enhancement
* parser: Add null_value_pattern and null_empty_string option for ltsv, csv and tsv.
https://github.com/fluent/fluentd/pull/657
* RPC: Implement /api/config.dump and /api/config.getDump APIs to dump in memory config
https://github.com/fluent/fluentd/pull/666
* Add --show-plugin-config option
https://github.com/fluent/fluentd/pull/663
### Bug fixes
* in_http: Fix add_remote_addr and add_http_headers options not working on bulk request
https://github.com/fluent/fluentd/pull/673
* parser: RegexpParser#initialize should wrap only Hash configuration
https://github.com/fluent/fluentd/pull/647
## Release 0.12.15 - 2015/07/29
### New features / Enhancement
* in_status: Warn deprecation message
https://github.com/fluent/fluentd/pull/635
* output: Modify TimeSlicedOutput#emit mechanizm to fit BufferedOutput#emit way
https://github.com/fluent/fluentd/pull/634
## Release 0.12.14 - 2015/07/17
### New features / Enhancement
* config: Log unused section configuration as warn level
https://github.com/fluent/fluentd/pull/629
* config: Add '@' to log_level. Keep log_level for backward compatibility
https://github.com/fluent/fluentd/pull/630
* parser: Add time_key option for RegexpParser
https://github.com/fluent/fluentd/pull/588
### Bug fixes
* out_forward: Add 'dns_round_robin' option
https://github.com/fluent/fluentd/pull/632
## Release 0.12.13 - 2015/07/09
### New features / Enhancement
* out_stdout: Support formatter plugins in out_stdout
https://github.com/fluent/fluentd/pull/617
* filter_record_transformer: Add "auto_typecast" parameter
https://github.com/fluent/fluentd/pull/620
* out_forward: Support DNS round robin
https://github.com/fluent/fluentd/pull/625
* out_forward: Support heartbeat_type none to disable heartbeat
https://github.com/fluent/fluentd/pull/626
### Bug fixes
* config: Fix secret option to support config_section
https://github.com/fluent/fluentd/pull/628
## Release 0.12.12 - 2015/06/12
### New features / Enhancement
* in_forward: Add chunk format check
https://github.com/fluent/fluentd/pull/611
### Bug fixes
* formatter: Fix SingleValueFormatter to prevent record from modified
https://github.com/fluent/fluentd/pull/615
* config: configure requires Config::Element, not Hash
https://github.com/fluent/fluentd/pull/616
## Release 0.12.11 - 2015/06/01
### New features / Enhancement
* fluent-cat: Add none format
https://github.com/fluent/fluentd/pull/606
* config: Add secret option
https://github.com/fluent/fluentd/pull/604
## Release 0.12.10 - 2015/05/28
### New features / Enhancement
* filter_record_transformer: add renew_time_key option to replace event time with processed field
https://github.com/fluent/fluentd/pull/602
* config: add config_param `enum` type
https://github.com/fluent/fluentd/pull/600
## Release 0.12.9 - 2015/05/19
### New features / Enhancement
* in_tail: Add read_lines_limit parameter to control chunk size
https://github.com/fluent/fluentd/pull/593
* filter: add filter_stdout plugin
https://github.com/fluent/fluentd/pull/586
* parser: add keep_time_key option
https://github.com/fluent/fluentd/pull/587
* parser: keys parameter accepts json array configuration
https://github.com/fluent/fluentd/pull/592
* Implement RPC server for better instance management
https://github.com/fluent/fluentd/pull/585
### Bug fixes
* out_file: Fix out_file can create directory recursively
https://github.com/fluent/fluentd/pull/595
## Release 0.12.8 - 2015/04/22
### New features / Enhancement
* output: Support millisecond for try_flush_interval and queued_chunk_flush_interval
https://github.com/fluent/fluentd/pull/568
* filter_record_transformer: Support fields which start with @
https://github.com/fluent/fluentd/pull/574
* config: Add final attribute to prevent config overwritten by subclass
https://github.com/fluent/fluentd/pull/583
### Bug fixes
* config: fix embedded code parsing
https://github.com/fluent/fluentd/pull/564
* out_forward: Resend chunks on dropped connection when wait ACK
https://github.com/fluent/fluentd/pull/580
## Release 0.12.7 - 2015/03/22
### New features / Enhancement
* in_tail: Add exclude_path option to support exclusion of files
https://github.com/fluent/fluentd/pull/561
* filter_record_transformer: Support placeholders in record keys
https://github.com/fluent/fluentd/pull/558
## Release 0.12.6 - 2015/03/03
### Bug fixes
* out_forward: Should handle ECONNREFUSED exeception on TCP heartbeat
* test: BufferedOutputTestDriver must use correct buffer chunk type
## Release 0.12.5 - 2015/02/09
### New features / Enhancement
* in_tail: Enable multiline mode if format contains 'multiline'
https://github.com/fluent/fluentd/pull/545
* event: Improve EventStream#to_msgpack_stream performance
https://github.com/fluent/fluentd/pull/549
* engine: Add tag information emit log
### Bug fixes
* Update msgpack dependency to avoid incompatible encoding problem
https://github.com/fluent/fluentd/pull/550
## Release 0.12.4 - 2015/01/23
### New features / Enhancement
* Support 64bit inode environment in in_tail
https://github.com/fluent/fluentd/pull/542
### Bug fixes
* Fix ThreadError occuring on Signal.trap SIGHUP
https://github.com/fluent/fluentd/pull/541
## Release 0.12.3 - 2015/01/16
### New features / Enhancement
* parser: nginx and apache2 format can now parse access log without http-version
https://github.com/fluent/fluentd/pull/535
* filter_record_transformer: Allow non-string values like array / hash
https://github.com/fluent/fluentd/pull/530
* plugin: Add writable check for path related parameter
https://github.com/fluent/fluentd/pull/401
* command: -g and -G now works in embedded Ruby environment like Treasure Agent
https://github.com/fluent/fluentd/pull/423
### Bug fixes
* buffer: Fix to flush a buffer by USR1 signal even on retrying
https://github.com/fluent/fluentd/pull/531
* buffer: Fix TimeSlicedOutput doesn't flush with SIGUSR1
https://github.com/fluent/fluentd/pull/533
* buffer: Fix broken calc_retry_wait if Integer is used for retry_wait parameter
https://github.com/fluent/fluentd/pull/529
* engine: Fix SIGHUP does not reload config
https://github.com/fluent/fluentd/pull/537
## Release 0.12.2 - 2014/12/20
### New Features / Enhancement
* filter: Change filter behaviour. If filter method returns nil, its record is removed from stream.
https://github.com/fluent/fluentd/pull/515
* in_monitor_agent: Render filter plugins
https://github.com/fluent/fluentd/pull/514
* test: FilterTestDriver has run, emit and getting result methods
https://github.com/fluent/fluentd/pull/519
### Bug fixes
* test: Support @label by TestDriver
https://github.com/fluent/fluentd/pull/517
## Release 0.12.1 - 2014/12/14
### Bug fixes
* plugin: Fix router is nil inside out_copy, out_roundrobin, and BufferedOutput secondary
https://github.com/fluent/fluentd/pull/508
## Release 0.12.0 - 2014/12/12
### New Features / Enhancement
* config: Introduce @type and @id parameter for system parameter. type and id are still valid.
* Filter: old tag trick of "using output plugins as filter" is no longer needed
v0.12.0 ships with grep and record_transformer filter plugins
* Label: grouping Filter and Output plugins to reduce the complexity of event routing
@ERROR built-in label is also added to handle errors in emit
Add emit_error_event API to send invalid record to @ERROR
* in_forward/out_forward: Add require_ack_response and ack_response_timeout for At-least-once semantics
Here is the announcement for above new features: http://www.fluentd.org/blog/fluentd-v0.12-is-released
* parser/formatter: Add base class and Plugin.new_xxx/Plugin.register_xxx APIs
https://github.com/fluent/fluentd/pull/495
https://github.com/fluent/fluentd/pull/497
* formatter: Add new CSV formatter
https://github.com/fluent/fluentd/pull/489
* formatter: Add msgpack format to built-in Formatter to dump records
https://github.com/fluent/fluentd/pull/479
* input: Add in_dummy plugin
https://github.com/fluent/fluentd/pull/484
* in_http: Add respond_with_empty_img parameter to return empty gif image
https://github.com/fluent/fluentd/pull/480
* in_http: Add cors_allow_origins parameter to support CORS request
https://github.com/fluent/fluentd/pull/473
* output: Add relable output plugin
https://github.com/fluent/fluentd/pull/417
* config: Add self.name to configure_proxy error message
https://github.com/fluent/fluentd/pull/490
* log: --suppress-repeated-stacktrace is true by default
https://github.com/fluent/fluentd/pull/446
* Update msgpack to v0.5 and cool.io to v1.2
### Bug fixes
* config: Fix system config using double memory
https://github.com/fluent/fluentd/pull/496
* config: Fix v1 config to support multiple tag match
https://github.com/fluent/fluentd/pull/478
* config: Fix Config.bool_value regression for nil value
https://github.com/fluent/fluentd/pull/477
* parser: Fix blank column handling of TSVParser
https://github.com/fluent/fluentd/pull/506
* buffer: Prevent an exception with large num_retries
https://github.com/fluent/fluentd/pull/502
* out_file: Don't create world writable directory in daemon mode
https://github.com/fluent/fluentd/pull/483
# v0.10
Release 0.10.57 - 2014/11/13
* buffer: Make `total_queued_chunk_size` thread-safe to avoid race condition with `in_monitor_agent`
https://github.com/fluent/fluentd/pull/469
* Add `--no-supervisor` option to disable the supervisor for supervision tools like runit
https://github.com/fluent/fluentd/pull/449
0.10.57 was a bug fix release.
Release 0.10.56 - 2014/10/31
* config: Add Fluent::Config::Section#object_id to avoid NoMethodError by object dump tools
https://github.com/fluent/fluentd/pull/460
* mixin: Fix SetTagKeyMixin and SetTimeKeyMixin which ignores config_set_default since 0.10.53
https://github.com/fluent/fluentd/pull/462
* input/output: Support 'timezone' configuration parameter (e.g. "+09:00" for JST)
https://github.com/fluent/fluentd/pull/430
* log: Use plugin_id instead of object_id in log message for consistency with in_monitor_agent
https://github.com/fluent/fluentd/pull/459
Release 0.10.55 - 2014/10/16
* config: Change v1's non-quoted string literal behaviour to v0's behaviour
https://github.com/fluent/fluentd/pull/436
* config: Relax '@' handling in the plugin configuration for backward compatibility
https://github.com/fluent/fluentd/pull/455
* config: Add --use-v0-config for keeping old configuration
https://github.com/fluent/fluentd/pull/434
* config: Add single quoted literal in v1 configuration
https://github.com/fluent/fluentd/pull/437
* config: Improve error message of Array / Hash parse error
https://github.com/fluent/fluentd/pull/457
* input: Reduce shutdown time in some network related plugins when use Cool.io 1.2
https://github.com/fluent/fluentd/pull/440
* parser: Use ParserError instead of general exception classes
https://github.com/fluent/fluentd/pull/453
* Remove unused zfile buffer plugin
https://github.com/fluent/fluentd/pull/445
Release 0.10.54 - skipped
Release 0.10.53 - 2014/08/21
* in_tail: Fix forget to detach Closer timer object
* in_debug_agent: Fix config_param type of unix_path
* in_syslog: Add include_source_host and source_host_Key options
* config: Dump V1 escaped parameter correctly at start phase
* config: Fix bug for config_param of bool value without defaults
* config: Add 'alias' option to config_section and config_param
* buffer: Add 'disable_retry_limit' option
* engine: Reduce memory usage when retry_limit is large
* parser: Add apache_error format
* supervisor: Dump Fluentd version at dry run mode
* test: InputTestDriver wait 'run' until input plugin emits all test data
Release 0.10.52 - 2014/07/15
* in_tail: Fix typo of warning argument. lb to line
* config: Fix 'uninitialized constant Fluent::Config::V1Parser::URI' error
* config: Reject '@' prefix of parameter name in V1 configuration. @ is reserved prefix.
* config; Accept '#' comment in array and hash types
* parser: Add time_format option to SyslogParser
* parser: SyslogParser now makes ':' optional after pid
* process: Fix 'mutex can't lock' issue of DetachMultiProcessMixin on Ruby 2.x
* Add --without-source option to ignore <source> sections
Release 0.10.51 - 2014/07/04
* in_tail: Fix rotation handling when new file not found
* in_syslog: Change debug log level to warn at pattern mismatch
* formatter: Use localtime by default
* parser: Add SyslogParser
* parser: Add "estimate_current_event" attribute to TextParsers not to set current time into parse result
* config: Add <system> section to set core parameters via configuration file
* test: Support v1 configuration in TestDriver
* Add udp and tcp input plugins
Release 0.10.50 - 2014/06/17
* in_tail: Fix race condition at shutdown
* in_tail: read_from_head now works without pos_file
* in_tail: Fix multiline format parsing without format_firstline
* formatter: Add add_newline option to SingleValueFormatter
* parser: Add block based API to support multi-events parsing
* config: Fix encoding mismatch when @include used in v1
* engine: Serialize shutdown order. Now shutdown input plugins first
* Update rspec to 3.x
Release 0.10.49 - 2014/06/05
* in_http: Add format option to support various input data format
* in_http: Accept json / msgpack array in default format
* in_tail: Print warning message when file not exist with 'read_from_head true'
* out_file: Add append option to disable path increment
* out_file: Add format option to support various output data format
* config: Fix broken 'include' processing in V1 configuration. Now add @include
* fluentd-debug: Fix undefined method 'usage' error when invalid option passed
* supervisor: Fix incorrect --group option handling
* Add TextFormatter module for output plugins
Release 0.10.48 - 2014/05/18
* config: Add inspect method to Section for dumping the status
* test: Fix the regression which forget to initialize $log in fluent/test.rb
* Engine: Remove undocumented legacy plugin load mechanizm
Release 0.10.47 - 2014/05/15
* in_tail: Fix typo in flush_buffer
* in_forward: Add chunk_size_warn_limit and chunk_size_limit for large chunks
* in_monitor_agent: Add /api/config APIs to expose Fluentd configurations
* supervisor: Add Supervisor.default_options to return default Fluentd options
* test: Add DummyLogDevise and improve log handling in tests
* config: Allow empty string value like `tag_mapped` in v1 configuration
Release 0.10.46 - 2014/04/21
* in_tail: Fix typo in rescue for dumping backtrace
* in_forward: Add blocking_timeout option to avoid Cool.io loop stuck in shutdown
* out_forward: Add phi_failure_detector option to disable "The Phi accrual failure detector"
* buf_memory: Add flush_at_shutdown option to discard buffered event at shutdown
* parser: Use Engine.now when time_key is missing in ValuesParser
* parser: TextParser loads fluent/plugin/parser_xxx.rb automatically when 'xxx' format not found
* Fix match cache expiration
* Add new v1 configuration format and --use-v1-config option to enable v1 configuration format
* Add config_section to Configurable to support nested parameters in plugins
* Relax http_parser.rb gem version to support 0.6 series
Release 0.10.45 - 2014/03/28
* in_tail: Merge in_tail_ex and in_tail_multiline features
* in_forward: Add linger_timeout option
* out_exec: Support json and msgpack format
* Engine: Fix signal handling when receives SIGTERM before loop starts
* Use correct out_forward option in fluent.conf with --setup option
* Ignore sigdump exception on signal unsupported environment
Release 0.10.44 - 2014/02/26
* in_forward: Print remote address and port in trace log
* Remove several methods from fluentd-debug to call remote object method directly
* Add --gemfile option to manage Fluentd and plugins using Gemfile and Bundler
* Add <include path /> directive to include the configuration file under the elements
* Add 'ruby' keyword to call Kernel method in configuration DSL
* Relax Cool.io gem version to allow 1.2.x
Release 0.10.43 - 2014/02/03
* Input/Output: Add 'log_level' option to plugins
* parser/in_tail: Fix RegexpParser forget to call configure method
* parser/in_tail: Improve type conversion performance
* in_http: Add add_http_headers option to add HTTP headers to record
* Buffer: Improve submit_buffer throughput using round-robin writer selection
* add sigdump gem to dump useful information via SIGCONT
Release 0.10.42 - 2013/12/25
* parser/in_tail: Add 'types' and related parameters to convert record value type
* in_syslog: Add 'protocol_type' option for TCP support.
* Buffer: Extract 'storable?' method for hook judge mechanizm by 3rd-party buffer plugins.
* Output: Add 'try_flush_interval' parameter for high frequency flush.
It is undocumented because almost users never need this feature.
* Change configuration unused checking to prevent memory leak when a plugin accesses configuratino keys.
Release 0.10.41 - 2013/12/05
* BufferedOutput: Add 'max_retry_wait' to limit retry interval
* in_exec/object_space/syslog: Improve emit error message
* Log: Add --suppress-repeated-stacktrace option to prevent log size explosion
Release 0.10.40 - 2013/11/08
* Dump gem version of fluent-plugin-xxx and fluent-mixin-xxx
* in_http: Doesn't set REMOTE_ADDR when IO#getpeername failed
* in_tail/parser: Fix RegexpParser which ignores time_format parameter
* in_exec: Catch error and dumps error message in run_periodic
* in_forward: Show error class in the error message
* in_exec/out_exec_filter: Catch more exceptions, not only Errno::ESRCH, at shutdown
* Log: Catch exception for log event handling at shutdown
Release 0.10.39 - 2013/09/18
* out_file: Improve symlink handling with buf_file
* out_copy: Add deep_copy parameter for actual record copy
* in_tail/parser: Add none format for supporting non-parse tailing like fluent-agent-lite
* in_tail/parser: Improve performance using parsed time caching
* Engine: Fix signal related exception in trap context at Ruby 2.0
* buffer: Fix race condition when remove flushed chunk
* add --suppress-config-dump option to disable dump configuration at start
Release 0.10.38 - 2013/08/29
* Fix require related problem in running test
Release 0.10.37 - 2013/08/29
* in_exec: Add format option to support tsv, json and msgpack. Default is tsv
* out_stdout: Add output_type to print non-jsonable object
* Engine: Skip nil record in emit
* Check buffere_path duplication across buffer configurations.
* Add experimental DSL to configuration format
Release 0.10.36 - 2013/07/31
* Log: add class name on each error logs
* out_foward: change log level of node detachment/recovering/standby-failover from info to warn
* out_file: add symlink_path parameter to point to latest written file
* in_forward, in_http, in_unix: add backlog parameter to change resource backlog size
* add --dry-run option to check fluentd setup without actual run
* Fluentd now assumes configuration file written in UTF-8
* update cool.io version to 1.1.1
Release 0.10.35 - 2013/06/12
* Log: emits fluentd's log via background thread
* Log: use #inspect for non to_msgpack-able object in log event processing
* FailureDetector/out_forward: fixed wrong phi calculation
* in_stream: fixed unix domain connection leak when parsing json or msgpack failed
* buf_file/out_file: sets 0644 permission to each created file for preventing
File.umask(0) effect at daemonize mode
Release 0.10.34 - 2013/06/03
* fluentd: supports --emit-error-log-interval to suppress log messages with the
same message for a certain seconds
* BufferedOutput: fixed warning messages so that errors with the same meaning
use the same message
* Log: ignores ThreadError which could happen in signal handler
* Engine: prevents signal handlers from calling stop() method of plugins twice
* MessagePackEventStream/in_forward: doesn't cache MessagePack::Unpacker (if
it uses msgpack-0.5.5 which doesn't cause performance impact) to not cause
problems with out_copy
* TextParser/in_tail,in_syslog: 'json' format type removes time key from records
* TextParser/in_tail,in_syslog: raises exception if time_format is set while
time_key is not set
* in_tail: fixed minor bugs
Release 0.10.33 - 2013/03/28
* added in_monitor_agent
* switched from jeweler to bundler
* updated dependency for msgpack from '~> 0.4.4' to '~> 0.4.4 OR ~> 0.5.4'
* added PluginId module so that in_monitor_agent can search plugins by id
* BufferedOutput: added queued_chunk_flush_interval option to insert delay
time before flushing queued chunks
* BufferedOutput: randomize retry interval to prevent multiple servers from
bursting network traffic at the same time
* Configurable: sets @config instance variable
Release 0.10.32 - 2013/03/04
* in_tail: fixed the nil error problem which occurs with pos_file option
* TextParser/in_tail: supports 'ltsv' (Labeled Tab-Separated Values) format: http://ltsv.org
* #105: TextParser/in_tail: fixed 'nginx' format
* #102: show log level in log messages
* Gemfile: uses https source of rubygems instead of http
Release 0.10.31 - 2013/01/31
* out_forward: supports TCP heartbeat
* in_tail reads rotated files from its head rather than its end when pos_file option is set
* out_/in_ forward set O_NONBLOCK flag to the UDP heartbeat socket
* Improved match cache expiration algorithm
Release 0.10.30 - 2012/12/06
* Shows configuration file at start time
* Changed ruby version dependency from ~> 1.9.2 to => 1.9.2 so that it works
with ruby-2.0.
* TimeSlicedOutput: overwrites default value of buffer_chunk_limit to 256m.
fluent-plugin-s3 will be affected.
* TextParser/in_tail: supports 'nginx' preset formats
* in/out_forward and in_syslog: support IPv6
* out_forward: fixed a out of bounds bug
Release 0.10.29 - 2012/11/26
* buf_file: added flush_at_shutdown option to force flush before shuttingdown
* TextParser shows message in warn level if text doesn't match the pattern
Release 0.10.28 - 2012/10/30
* in_http: on_request method can get headers as HTTP_* key and remote address
as REMOTE_ADDR key of the params argument
Release 0.10.27 - 2012/10/11
* added BufferChunk#unique_id which is an unique identifier of a buffered chunk
* BufferedOutput: show 'temporarily failed' message
Release 0.10.26 - 2012/09/26
* added in_debug_agent plugin and fluent-debug command which enable you to
gather internal information of running Fluentd process using interactive shell
* supervisor: --user commandline argument also inherits secondary groups (id -G)
* out_forward: supports 'expire_dns_cache' option to set DNS expire time or disable
caching. Default behavior is 'never expire' which is same as former versions
* out_forward: assumes successful data transfer via TCP as a successful
heartbeat.
* out_forward: lazier failure detection: default phi_threshold 8 -> 10
* in_forward: uses other nodes aggressively if it couldn't send data to the first
candidate to not stall during the wait time before detecting failure
* in_forward: fixed shutdown procedure
* in_tail: seeks to the saved position if detected log rotation actually
didn't rotate the file (meaning inode doesn't change). this change enables
cronolog to work with Fluentd.
* in_tail: fixed a problem that it couldn't recover from uncaught exceptions
caused by output plugins
* fluentd command supports '-q' option to decrease log level
Release 0.10.25 - 2012/07/23
* shutdown won't block
* out_exec_filter supports 'child_respawn' option
* in_tail doesn't remove whitespaces
* out_roundrobin supports 'weight' option
Release 0.10.24 - 2012/06/28
* TextParser/in_tail: supports 'tsv' and 'csv' preset formats
* supervisor set FD_CLOEXEC to @wait_daemonize_pipe_w in case the child
process forked during run_configure
Release 0.10.23 - 2012/06/25
* out_exec_filter: show more error messages when child process unexpectedly exited
* in_tail: Added 'apache2' format template which converts fields into integers or nil
* TextParser creates a parser instance for each output for proper configuration
* BufferedOutput: reset @flush_now flag
* changed default buffer limit parameters:
Fluentd core:
buffer_chunk_limit 256MB -> 8MB
buffer_queue_limit 128 -> 256
buf_memory:
buffer_chunk_limit 32MB -> 8MB
buffer_queue_limit 32 -> 64
out_file:
buffer_chunk_limit -> 256MB
Release 0.10.22 - 2012/05/02
* Fixed in_tail and TextParser not to raise "time_format is required" error
* out_exec_filter: fixed JSONFormatter to add \n at the end of records
* out_exec_filter: separated {tag_key,time_key,time_format} parameters to
{in_,out_}{tag_key,time_key,time_format parameters while keeping
compatibility
Release 0.10.21 - 2012/05/01
* in_tail and TextParser support 'format json'
* in_tail and TextParser support 'time_key' and 'time_format' parameters for 'format json'
* in_tail: improved the file reader not to consume too much memory if the file is huge
* out_stdout: uses logger instead of STDOUT to show records even if Fluentd is daemonized
* Fixed the type of 'retry_wait' parameter of buffered output plugins from 'float' to 'time'
* Fixed owner of log files for log rotation to work properly with --user and --group options
Release 0.10.20 - 2012/04/27
* Fixed Config#to_s
* out_exec_filter: supports 'out_format json' option
* out_exec_filter: supports 'in_format json' option
Release 0.10.19 - 2012/04/17
* Fixed in_syslog
* in_tail: fixed "invalid byte sequence in US-ASCII" error
* in_unix is not obsoleted
Release 0.10.18 - 2012/04/13
* Use Yajl instead of standard json library to avoid encoding problem
* buf_memory: call force_encoding('ASCII-8BIT') to avoid encoding problem
Release 0.10.17 - 2012/04/02
* in_tail: don't ignore last line without LF [#44]
* Added HandleTagNameMixin
* Removed automake/conf style build support
Maintainig automake/conf style files are complex, but no user. We've decided
not to have those files anymore. Otherwise it's still used at rpm/deb packaging
scripts.
Release 0.10.16 - 2012/03/26
* Added in_gc plugin
* Added in_object_space plugin
* Changed dependency yajl-ruby from '~> 1.0.0' to '~> 1.0'
Release 0.10.15 - 2012/03/09
* Added experimental in_status plugin
* out_forward: normalize the phi value of the failure detector into 1sec
* out_forward: improved memory efficiency
* out_forward: use weighted moving average for the phi accrual failure detector
Release 0.10.14 - 2012/03/05
* Show warnings if in_tcp or out_unix is used
* BasicBuffer shows warnings when data.bytesize > @buffer_chunk_limit
* out_forward: randomize roundrobin queue correctly
* Added development dependencies to the gemspec
Release 0.10.13 - 2012/02/21
* Rewrote in_tail
* Fixed SIGUSR1 handler to force flush logs
Release 0.10.12 - 2012/02/13
* Engine shows warnings when emitted record doesn't match any outputs
* in_tail is rewritten to follow symbolic links correctly
* out_forward uses independent default value as 'hard_timeout' parameter
Release 0.10.11 - 2012/02/10
* out_forward supports 'standby' parameter
* out_forward handles 'hard_timeout' correctly
Release 0.10.10 - 2012/02/09
* in_forward and out_forward don't raise exceptions in callback handlers of
cool.io not to stop Loop#run
* TimeSlicedOutput ignores time_slice_wait if flush_interval is specified
* in_tail follows symbolic links correctly
* in_http supports "Content-Type: application/json"
* TestDriver#run sleeps 0.5 seconds for the out_exec_filter plugin
Release 0.10.9 - 2012/01/19
* Fixed TimeSlicedOutputTestDriver
* Updated cool.io 1.0.0 -> 1.1.0
* TextParser: fixed regexp of syslog parser to work with rsyslog on CentOS
* out_exec_filter: improve performance by using buffering
* out_exec_filter: added num_children parameter
* out_exec_filter: added remove_prefix/add_prefix parameters
* out_tail: show warning if pos_file parameter is not set
* out_copy: fixed problems when event stream is not repeatable
Release 0.10.8 - 2011/12/03
* Added Supervisor: restart process on SIGHUP or unexpected end of process
* Added -i commandline option which allows inline config
* Added TimeSlicedOutputTestDriver
* BufferedOutput outputs 'retry succeeded' message
* Use Gem::Specification instead of Gem.searcher which is obsoleted
* Added BasicBuffer#chunk_limit -> buffer_chunk_limit alias for backward
compatibility
* buf_file: fixed to work with keys which contains '/'
Release 0.10.7 - 2011/11/16
* Supports multi-threaded on buffered output plugins ('num_threads')
* Supports multi-process on input plugins ('detach_process')
* Added ObjectBufferedOutput
* Ensure to call 'shutdown' method of started plugins
* in_tail supports 'pos_file' option that stores read position to a file
Release 0.10.6 - 2011/11/11
* Fixed --group NAME cmdline argument
* Run configure(conf) after changing user and group
* Fixed SIGHUP handling
* BasicBuffer plugin uses Configurable module
* buf_file uses microseconds + 12 bits random number for unique file name
Release 0.10.5 - 2011/11/08
* Added out_forward, in_forward
* Added out_exec, in_exec
* Added out_exec_filter
Release 0.10.4 - 2011/11/07
* TestDriver uses klass.dup.module_eval instead of inheriting class to
override methods
* fixed encoding problem of String#[] in FileBufferChunk#<<(data)
Release 0.10.3 - 2011/10/21
* Supports 'include' in config file
* Supports "http://" schema
* Supports wildcards
Release 0.10.2 - 2011/10/18
* Fixed EventStream#to_msgpack_stream (thanks CkReal)
* Added gemspec.required_ruby_version = '~> 1.9.2' (thanks sakuro)
Release 0.10.1 - 2011/10/16
* SetTimeKeyMixin accepts include_time_key parameter
* SetTagKeyMixin accepts include_tag_key parameter
* Fixed Makefile.am
* Fixed MemoryBufferChunk#msgpack_each
Release 0.10.0 - 2011/10/16
* Removed Event class
* def format(tag, event) -> format(time, tag, record)
* def emit(tag, event) -> emit(tag, time, record)
* Added plugin APIs
* Added Configurable
* Added TimeFormatter
* Added SetTimeKeyMixin
* Added SetTagKeyMixin
* Added InputTestDriver
* Added Gemfile, gemspec and .rvmrc files
Release 0.9.20 - 2011/10/07
* Config#has_key? sets used flag not to show warning
* in_tcp supports JSON
* Depends on Yajl
* Fixed fluentd -r option
* Fixed autogen.sh to create plugins directory
Release 0.9.19 - 2011/10/07
* Secondary outputs work only when error count exceededs retry_limit
* Secondary outputs retry upto secondary_limit
* Added Output#secondary_init
* Added unit test driver for output plugins
* Added Fluent::Test.test? method
* Added comparision methods (<=>, ==, eql? and hash) to Event class
* Added test cases for out_copy, out_roundrobin and out_file
Release 0.9.18 - 2011/10/04
* Performance improvements
* in_tcp uses lazy deserialization
* Engine caches results of Match#match
* out_file caches results of strftime
* Fixed TextParser.register_template
Release 0.9.17 - 2011/10/03
* TimeSlicedOutput caches results of strftime() for performance
* Fixed TextParser.register_template (thanks eiichiroi)
* Fixed fluent-cat --port argument to work
Release 0.9.16 - 2011/10/01
* Fixed it can't use relative path for --plugin command line argument
* Fixed out_copy to work with non-repeatable event streams
Release 0.9.15 - 2011/09/21
* Set default encoding to ASCII-8BIT
* Fixed thread issues in BasicBuffer
* Performance improvements
Release 0.9.14 - 2011/09/21
* Fixed to write unexpected error to log files
* Plugin loader uses GemSpec if it is available to load newer plugin
* Added Config.bool_value method for plugins
Release 0.9.13 - 2011/09/21
* Updated out_file plugin
* Uses localtime by default
* Uses \t to separate time, tag and JSON.
* Uses ISO-8601 for the time format
Release 0.9.12 - 2011/09/20
* Updated out_file plugin
* Supports log compression
* Slices log files every day by default
Release 0.9.11 - 2011/09/19
* Added out_null plugin
* Added out_roundrobin plugin
* in_http supports keep-alive
* in_tcp and in_unix detect network failure
Release 0.9.10 - 2011/09/07
* Periodic timer enqueues buffer chunks only when queue is empty
Release 0.9.9 - 2011/09/06
* in_tail strips \n at the end of log line
* Uses newer one if multiple plugins are found
Release 0.9.8 - 2011/08/16
* in_http plugin supports 'Expect: 100-continue' header
* Added --user and --group command line arguments to change privilege
* Changed default retry_limit parameter from 8 to 17
* Changed default buffer_chunk_limit parameter from 1m to 16m
* Changed default buffer_queue_limit parameter from 100 to 64
Release 0.9.7 - 2011/08/06
* Load plugins named fluent_plugin.rb installed by RubyGems
* Load plugins located on fluent/plugin/{buf,in,out}_{type} installed by RubyGems
* Removed out_tdlog plugin to fluent-plugin-td gem
Release 0.9.6 - 2011/08/06
* Force flush buffered events on SIGUSR1
* out_tdlog uses event tag for the database and table name
* Fluent can log Fluent logs
* Colorize Fluent logs on console
* Changed default unix domain socket path to /var/run/fluent/fluent.sock
* Makefile.am and configure.in aware fakeroot
Release 0.9.5 - 2011/07/23
* Added <secondary> tag that fallbacks to secondary output when it can't
write to primary output.
* <match> pattern supports **; matches any fragments recursively.
* <match> pattern supports {x,y,...}; matches any of the inner patterns.
Release 0.9.4 - 2011/07/22
* Switched EventMachine to Cool.io
* in_tail continues to follow file if it is deleted on Linux
* Added fluentd --setup option that installs sample configuration file
* Added out_tdlog plugin
Release 0.9.3 - 2011/07/05
* Disable EventMachine.epoll because it doesn't work correctly on
Ruby 1.9 with threads
* in_tcp and in_unix uses EventMachine instead of threads
* Set BasicSocket.do_not_reverse_lookup = true
Release 0.9.2 - 2011/07/03
* Added TimeSlicedOutput that splits buffer chunk exactly based on the time
* Changed structure of buffers from queue to map + queue
* Show waring if configuration parameters are not used
* Added out_time_file plugin
Release 0.9.1 - 2011/06/26
* Added in_tail plugin
* Added in_syslog plugin
* Added out_stdout plugin
* Added out_tcp plugin
* Added out_unix plugin
* Improved performance of in_http plugin by replacing WEBrick + thread
with EventMachine
Release 0.9.0 - 2011/06/20
* First release