fluentd 1.17.0-x64-mingw-ucrt → 1.18.0-x64-mingw-ucrt

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.
Files changed (278) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +100 -0
  3. data/README.md +1 -0
  4. data/SECURITY.md +2 -2
  5. data/fluent.conf +14 -14
  6. data/lib/fluent/command/cap_ctl.rb +4 -4
  7. data/lib/fluent/command/fluentd.rb +7 -1
  8. data/lib/fluent/compat/call_super_mixin.rb +3 -3
  9. data/lib/fluent/compat/propagate_default.rb +4 -4
  10. data/lib/fluent/config/literal_parser.rb +9 -2
  11. data/lib/fluent/config/yaml_parser/parser.rb +4 -0
  12. data/lib/fluent/engine.rb +49 -33
  13. data/lib/fluent/env.rb +3 -0
  14. data/lib/fluent/event_router.rb +2 -2
  15. data/lib/fluent/log/console_adapter.rb +4 -2
  16. data/lib/fluent/plugin/filter_parser.rb +27 -51
  17. data/lib/fluent/plugin/in_exec.rb +14 -2
  18. data/lib/fluent/plugin/in_http.rb +6 -1
  19. data/lib/fluent/plugin/in_sample.rb +13 -7
  20. data/lib/fluent/plugin/in_syslog.rb +4 -0
  21. data/lib/fluent/plugin/in_tail.rb +65 -23
  22. data/lib/fluent/plugin/in_tcp.rb +4 -0
  23. data/lib/fluent/plugin/in_udp.rb +10 -1
  24. data/lib/fluent/plugin/input.rb +4 -0
  25. data/lib/fluent/plugin/out_buffer.rb +40 -0
  26. data/lib/fluent/plugin/out_copy.rb +1 -1
  27. data/lib/fluent/plugin/out_file.rb +8 -0
  28. data/lib/fluent/plugin/out_http.rb +12 -0
  29. data/lib/fluent/plugin/output.rb +2 -0
  30. data/lib/fluent/plugin/parser_json.rb +4 -12
  31. data/lib/fluent/plugin_helper/cert_option.rb +8 -0
  32. data/lib/fluent/plugin_helper/event_emitter.rb +12 -0
  33. data/lib/fluent/plugin_helper/http_server/server.rb +24 -8
  34. data/lib/fluent/plugin_helper/server.rb +9 -0
  35. data/lib/fluent/root_agent.rb +114 -19
  36. data/lib/fluent/source_only_buffer_agent.rb +102 -0
  37. data/lib/fluent/supervisor.rb +207 -34
  38. data/lib/fluent/system_config.rb +15 -3
  39. data/lib/fluent/version.rb +1 -1
  40. data/templates/new_gem/fluent-plugin.gemspec.erb +6 -5
  41. metadata +24 -483
  42. data/.github/DISCUSSION_TEMPLATE/q-a-japanese.yml +0 -50
  43. data/.github/DISCUSSION_TEMPLATE/q-a.yml +0 -47
  44. data/.github/ISSUE_TEMPLATE/bug_report.yml +0 -71
  45. data/.github/ISSUE_TEMPLATE/config.yml +0 -5
  46. data/.github/ISSUE_TEMPLATE/feature_request.yml +0 -39
  47. data/.github/ISSUE_TEMPLATE.md +0 -17
  48. data/.github/PULL_REQUEST_TEMPLATE.md +0 -14
  49. data/.github/workflows/stale-actions.yml +0 -24
  50. data/.github/workflows/test-ruby-head.yml +0 -31
  51. data/.github/workflows/test.yml +0 -32
  52. data/.gitignore +0 -30
  53. data/Gemfile +0 -9
  54. data/fluentd.gemspec +0 -62
  55. data/test/command/test_binlog_reader.rb +0 -362
  56. data/test/command/test_ca_generate.rb +0 -70
  57. data/test/command/test_cap_ctl.rb +0 -100
  58. data/test/command/test_cat.rb +0 -128
  59. data/test/command/test_ctl.rb +0 -56
  60. data/test/command/test_fluentd.rb +0 -1291
  61. data/test/command/test_plugin_config_formatter.rb +0 -397
  62. data/test/command/test_plugin_generator.rb +0 -109
  63. data/test/compat/test_calls_super.rb +0 -166
  64. data/test/compat/test_parser.rb +0 -92
  65. data/test/config/assertions.rb +0 -42
  66. data/test/config/test_config_parser.rb +0 -551
  67. data/test/config/test_configurable.rb +0 -1784
  68. data/test/config/test_configure_proxy.rb +0 -604
  69. data/test/config/test_dsl.rb +0 -415
  70. data/test/config/test_element.rb +0 -518
  71. data/test/config/test_literal_parser.rb +0 -309
  72. data/test/config/test_plugin_configuration.rb +0 -56
  73. data/test/config/test_section.rb +0 -191
  74. data/test/config/test_system_config.rb +0 -195
  75. data/test/config/test_types.rb +0 -408
  76. data/test/counter/test_client.rb +0 -563
  77. data/test/counter/test_error.rb +0 -44
  78. data/test/counter/test_mutex_hash.rb +0 -179
  79. data/test/counter/test_server.rb +0 -589
  80. data/test/counter/test_store.rb +0 -258
  81. data/test/counter/test_validator.rb +0 -137
  82. data/test/helper.rb +0 -155
  83. data/test/helpers/fuzzy_assert.rb +0 -89
  84. data/test/helpers/process_extenstion.rb +0 -33
  85. data/test/log/test_console_adapter.rb +0 -117
  86. data/test/plugin/data/2010/01/20100102-030405.log +0 -0
  87. data/test/plugin/data/2010/01/20100102-030406.log +0 -0
  88. data/test/plugin/data/2010/01/20100102.log +0 -0
  89. data/test/plugin/data/log/bar +0 -0
  90. data/test/plugin/data/log/foo/bar.log +0 -0
  91. data/test/plugin/data/log/foo/bar2 +0 -0
  92. data/test/plugin/data/log/test.log +0 -0
  93. data/test/plugin/data/log_numeric/01.log +0 -0
  94. data/test/plugin/data/log_numeric/02.log +0 -0
  95. data/test/plugin/data/log_numeric/12.log +0 -0
  96. data/test/plugin/data/log_numeric/14.log +0 -0
  97. data/test/plugin/data/sd_file/config +0 -11
  98. data/test/plugin/data/sd_file/config.json +0 -17
  99. data/test/plugin/data/sd_file/config.yaml +0 -11
  100. data/test/plugin/data/sd_file/config.yml +0 -11
  101. data/test/plugin/data/sd_file/invalid_config.yml +0 -7
  102. data/test/plugin/in_tail/test_fifo.rb +0 -121
  103. data/test/plugin/in_tail/test_io_handler.rb +0 -150
  104. data/test/plugin/in_tail/test_position_file.rb +0 -346
  105. data/test/plugin/out_forward/test_ack_handler.rb +0 -140
  106. data/test/plugin/out_forward/test_connection_manager.rb +0 -145
  107. data/test/plugin/out_forward/test_handshake_protocol.rb +0 -112
  108. data/test/plugin/out_forward/test_load_balancer.rb +0 -106
  109. data/test/plugin/out_forward/test_socket_cache.rb +0 -174
  110. data/test/plugin/test_bare_output.rb +0 -131
  111. data/test/plugin/test_base.rb +0 -247
  112. data/test/plugin/test_buf_file.rb +0 -1314
  113. data/test/plugin/test_buf_file_single.rb +0 -898
  114. data/test/plugin/test_buf_memory.rb +0 -42
  115. data/test/plugin/test_buffer.rb +0 -1493
  116. data/test/plugin/test_buffer_chunk.rb +0 -209
  117. data/test/plugin/test_buffer_file_chunk.rb +0 -871
  118. data/test/plugin/test_buffer_file_single_chunk.rb +0 -611
  119. data/test/plugin/test_buffer_memory_chunk.rb +0 -339
  120. data/test/plugin/test_compressable.rb +0 -87
  121. data/test/plugin/test_file_util.rb +0 -96
  122. data/test/plugin/test_filter.rb +0 -368
  123. data/test/plugin/test_filter_grep.rb +0 -697
  124. data/test/plugin/test_filter_parser.rb +0 -731
  125. data/test/plugin/test_filter_record_transformer.rb +0 -577
  126. data/test/plugin/test_filter_stdout.rb +0 -207
  127. data/test/plugin/test_formatter_csv.rb +0 -136
  128. data/test/plugin/test_formatter_hash.rb +0 -38
  129. data/test/plugin/test_formatter_json.rb +0 -61
  130. data/test/plugin/test_formatter_ltsv.rb +0 -70
  131. data/test/plugin/test_formatter_msgpack.rb +0 -28
  132. data/test/plugin/test_formatter_out_file.rb +0 -116
  133. data/test/plugin/test_formatter_single_value.rb +0 -44
  134. data/test/plugin/test_formatter_tsv.rb +0 -76
  135. data/test/plugin/test_in_debug_agent.rb +0 -49
  136. data/test/plugin/test_in_exec.rb +0 -261
  137. data/test/plugin/test_in_forward.rb +0 -1178
  138. data/test/plugin/test_in_gc_stat.rb +0 -62
  139. data/test/plugin/test_in_http.rb +0 -1124
  140. data/test/plugin/test_in_monitor_agent.rb +0 -922
  141. data/test/plugin/test_in_object_space.rb +0 -66
  142. data/test/plugin/test_in_sample.rb +0 -190
  143. data/test/plugin/test_in_syslog.rb +0 -505
  144. data/test/plugin/test_in_tail.rb +0 -3429
  145. data/test/plugin/test_in_tcp.rb +0 -328
  146. data/test/plugin/test_in_udp.rb +0 -296
  147. data/test/plugin/test_in_unix.rb +0 -181
  148. data/test/plugin/test_input.rb +0 -137
  149. data/test/plugin/test_metadata.rb +0 -89
  150. data/test/plugin/test_metrics.rb +0 -294
  151. data/test/plugin/test_metrics_local.rb +0 -96
  152. data/test/plugin/test_multi_output.rb +0 -204
  153. data/test/plugin/test_out_copy.rb +0 -308
  154. data/test/plugin/test_out_exec.rb +0 -312
  155. data/test/plugin/test_out_exec_filter.rb +0 -606
  156. data/test/plugin/test_out_file.rb +0 -1038
  157. data/test/plugin/test_out_forward.rb +0 -1349
  158. data/test/plugin/test_out_http.rb +0 -557
  159. data/test/plugin/test_out_null.rb +0 -105
  160. data/test/plugin/test_out_relabel.rb +0 -28
  161. data/test/plugin/test_out_roundrobin.rb +0 -146
  162. data/test/plugin/test_out_secondary_file.rb +0 -458
  163. data/test/plugin/test_out_stdout.rb +0 -205
  164. data/test/plugin/test_out_stream.rb +0 -103
  165. data/test/plugin/test_output.rb +0 -1334
  166. data/test/plugin/test_output_as_buffered.rb +0 -2024
  167. data/test/plugin/test_output_as_buffered_backup.rb +0 -363
  168. data/test/plugin/test_output_as_buffered_compress.rb +0 -179
  169. data/test/plugin/test_output_as_buffered_overflow.rb +0 -250
  170. data/test/plugin/test_output_as_buffered_retries.rb +0 -966
  171. data/test/plugin/test_output_as_buffered_secondary.rb +0 -882
  172. data/test/plugin/test_output_as_standard.rb +0 -374
  173. data/test/plugin/test_owned_by.rb +0 -34
  174. data/test/plugin/test_parser.rb +0 -399
  175. data/test/plugin/test_parser_apache.rb +0 -42
  176. data/test/plugin/test_parser_apache2.rb +0 -47
  177. data/test/plugin/test_parser_apache_error.rb +0 -45
  178. data/test/plugin/test_parser_csv.rb +0 -200
  179. data/test/plugin/test_parser_json.rb +0 -244
  180. data/test/plugin/test_parser_labeled_tsv.rb +0 -160
  181. data/test/plugin/test_parser_msgpack.rb +0 -127
  182. data/test/plugin/test_parser_multiline.rb +0 -111
  183. data/test/plugin/test_parser_nginx.rb +0 -88
  184. data/test/plugin/test_parser_none.rb +0 -52
  185. data/test/plugin/test_parser_regexp.rb +0 -284
  186. data/test/plugin/test_parser_syslog.rb +0 -650
  187. data/test/plugin/test_parser_tsv.rb +0 -122
  188. data/test/plugin/test_sd_file.rb +0 -228
  189. data/test/plugin/test_sd_srv.rb +0 -230
  190. data/test/plugin/test_storage.rb +0 -166
  191. data/test/plugin/test_storage_local.rb +0 -335
  192. data/test/plugin/test_string_util.rb +0 -26
  193. data/test/plugin_helper/data/cert/cert-key.pem +0 -27
  194. data/test/plugin_helper/data/cert/cert-with-CRLF.pem +0 -19
  195. data/test/plugin_helper/data/cert/cert-with-no-newline.pem +0 -19
  196. data/test/plugin_helper/data/cert/cert.pem +0 -19
  197. data/test/plugin_helper/data/cert/cert_chains/ca-cert-key.pem +0 -27
  198. data/test/plugin_helper/data/cert/cert_chains/ca-cert.pem +0 -20
  199. data/test/plugin_helper/data/cert/cert_chains/cert-key.pem +0 -27
  200. data/test/plugin_helper/data/cert/cert_chains/cert.pem +0 -40
  201. data/test/plugin_helper/data/cert/empty.pem +0 -0
  202. data/test/plugin_helper/data/cert/generate_cert.rb +0 -125
  203. data/test/plugin_helper/data/cert/with_ca/ca-cert-key-pass.pem +0 -30
  204. data/test/plugin_helper/data/cert/with_ca/ca-cert-key.pem +0 -27
  205. data/test/plugin_helper/data/cert/with_ca/ca-cert-pass.pem +0 -20
  206. data/test/plugin_helper/data/cert/with_ca/ca-cert.pem +0 -20
  207. data/test/plugin_helper/data/cert/with_ca/cert-key-pass.pem +0 -30
  208. data/test/plugin_helper/data/cert/with_ca/cert-key.pem +0 -27
  209. data/test/plugin_helper/data/cert/with_ca/cert-pass.pem +0 -21
  210. data/test/plugin_helper/data/cert/with_ca/cert.pem +0 -21
  211. data/test/plugin_helper/data/cert/without_ca/cert-key-pass.pem +0 -30
  212. data/test/plugin_helper/data/cert/without_ca/cert-key.pem +0 -27
  213. data/test/plugin_helper/data/cert/without_ca/cert-pass.pem +0 -20
  214. data/test/plugin_helper/data/cert/without_ca/cert.pem +0 -20
  215. data/test/plugin_helper/http_server/test_app.rb +0 -65
  216. data/test/plugin_helper/http_server/test_route.rb +0 -32
  217. data/test/plugin_helper/service_discovery/test_manager.rb +0 -93
  218. data/test/plugin_helper/service_discovery/test_round_robin_balancer.rb +0 -21
  219. data/test/plugin_helper/test_cert_option.rb +0 -25
  220. data/test/plugin_helper/test_child_process.rb +0 -862
  221. data/test/plugin_helper/test_compat_parameters.rb +0 -358
  222. data/test/plugin_helper/test_event_emitter.rb +0 -80
  223. data/test/plugin_helper/test_event_loop.rb +0 -52
  224. data/test/plugin_helper/test_extract.rb +0 -194
  225. data/test/plugin_helper/test_formatter.rb +0 -255
  226. data/test/plugin_helper/test_http_server_helper.rb +0 -372
  227. data/test/plugin_helper/test_inject.rb +0 -561
  228. data/test/plugin_helper/test_metrics.rb +0 -137
  229. data/test/plugin_helper/test_parser.rb +0 -264
  230. data/test/plugin_helper/test_record_accessor.rb +0 -238
  231. data/test/plugin_helper/test_retry_state.rb +0 -1006
  232. data/test/plugin_helper/test_server.rb +0 -1895
  233. data/test/plugin_helper/test_service_discovery.rb +0 -165
  234. data/test/plugin_helper/test_socket.rb +0 -146
  235. data/test/plugin_helper/test_storage.rb +0 -542
  236. data/test/plugin_helper/test_thread.rb +0 -164
  237. data/test/plugin_helper/test_timer.rb +0 -130
  238. data/test/scripts/exec_script.rb +0 -32
  239. data/test/scripts/fluent/plugin/formatter1/formatter_test1.rb +0 -7
  240. data/test/scripts/fluent/plugin/formatter2/formatter_test2.rb +0 -7
  241. data/test/scripts/fluent/plugin/formatter_known.rb +0 -8
  242. data/test/scripts/fluent/plugin/out_test.rb +0 -81
  243. data/test/scripts/fluent/plugin/out_test2.rb +0 -80
  244. data/test/scripts/fluent/plugin/parser_known.rb +0 -4
  245. data/test/test_capability.rb +0 -74
  246. data/test/test_clock.rb +0 -164
  247. data/test/test_config.rb +0 -369
  248. data/test/test_configdsl.rb +0 -148
  249. data/test/test_daemonizer.rb +0 -91
  250. data/test/test_engine.rb +0 -203
  251. data/test/test_event.rb +0 -531
  252. data/test/test_event_router.rb +0 -348
  253. data/test/test_event_time.rb +0 -199
  254. data/test/test_file_wrapper.rb +0 -53
  255. data/test/test_filter.rb +0 -121
  256. data/test/test_fluent_log_event_router.rb +0 -99
  257. data/test/test_formatter.rb +0 -369
  258. data/test/test_input.rb +0 -31
  259. data/test/test_log.rb +0 -1076
  260. data/test/test_match.rb +0 -148
  261. data/test/test_mixin.rb +0 -351
  262. data/test/test_msgpack_factory.rb +0 -50
  263. data/test/test_oj_options.rb +0 -55
  264. data/test/test_output.rb +0 -278
  265. data/test/test_plugin.rb +0 -251
  266. data/test/test_plugin_classes.rb +0 -370
  267. data/test/test_plugin_helper.rb +0 -81
  268. data/test/test_plugin_id.rb +0 -119
  269. data/test/test_process.rb +0 -14
  270. data/test/test_root_agent.rb +0 -951
  271. data/test/test_static_config_analysis.rb +0 -177
  272. data/test/test_supervisor.rb +0 -821
  273. data/test/test_test_drivers.rb +0 -136
  274. data/test/test_time_formatter.rb +0 -301
  275. data/test/test_time_parser.rb +0 -362
  276. data/test/test_tls.rb +0 -65
  277. data/test/test_unique_id.rb +0 -47
  278. data/test/test_variable_store.rb +0 -65
@@ -1,166 +0,0 @@
1
- require_relative '../helper'
2
- require 'fluent/plugin/storage'
3
- require 'fluent/plugin/base'
4
-
5
- class DummyPlugin < Fluent::Plugin::TestBase
6
- end
7
-
8
- class BareStorage < Fluent::Plugin::Storage
9
- Fluent::Plugin.register_storage('bare', self)
10
- end
11
-
12
- class BasicStorage < Fluent::Plugin::Storage
13
- Fluent::Plugin.register_storage('example', self)
14
-
15
- attr_reader :data, :saved
16
-
17
- def initialize
18
- super
19
- @data = @saved = nil
20
- end
21
- def load
22
- @data = {}
23
- end
24
- def save
25
- @saved = @data.dup
26
- end
27
- def get(key)
28
- @data[key]
29
- end
30
- def fetch(key, defval)
31
- @data.fetch(key, defval)
32
- end
33
- def put(key, value)
34
- @data[key] = value
35
- end
36
- def delete(key)
37
- @data.delete(key)
38
- end
39
- def update(key, &block)
40
- @data[key] = block.call(@data[key])
41
- end
42
- def close
43
- @data = {}
44
- super
45
- end
46
- def terminate
47
- @saved = {}
48
- super
49
- end
50
- end
51
-
52
- class StorageTest < Test::Unit::TestCase
53
- sub_test_case 'BareStorage' do
54
- setup do
55
- plugin = DummyPlugin.new
56
- @s = BareStorage.new
57
- @s.configure(config_element())
58
- @s.owner = plugin
59
- end
60
-
61
- test 'is configured with plugin information and system config' do
62
- plugin = DummyPlugin.new
63
- plugin.system_config_override({'process_name' => 'mytest'})
64
- plugin.configure(config_element('ROOT', '', {'@id' => '1'}))
65
- s = BareStorage.new
66
- s.configure(config_element())
67
- s.owner = plugin
68
-
69
- assert_equal 'mytest', s.owner.system_config.process_name
70
- assert_equal '1', s.instance_eval{ @_plugin_id }
71
- end
72
-
73
- test 'does NOT have features for high-performance/high-consistent storages' do
74
- assert_equal false, @s.persistent_always?
75
- assert_equal false, @s.synchronized?
76
- end
77
-
78
- test 'does have default values which is conservative for almost all users' do
79
- assert_equal false, @s.persistent
80
- assert_equal true, @s.autosave
81
- assert_equal 10, @s.autosave_interval
82
- assert_equal true, @s.save_at_shutdown
83
- end
84
-
85
- test 'load/save doesn NOT anything: just as memory storage' do
86
- assert_nothing_raised{ @s.load }
87
- assert_nothing_raised{ @s.save }
88
- end
89
-
90
- test 'all operations are not defined yet' do
91
- assert_raise NotImplementedError do
92
- @s.get('key')
93
- end
94
- assert_raise NotImplementedError do
95
- @s.fetch('key', 'value')
96
- end
97
- assert_raise NotImplementedError do
98
- @s.put('key', 'value')
99
- end
100
- assert_raise NotImplementedError do
101
- @s.delete('key')
102
- end
103
- assert_raise NotImplementedError do
104
- @s.update('key'){ |v| v + '2' }
105
- end
106
- end
107
- end
108
-
109
- sub_test_case 'ExampleStorage' do
110
- setup do
111
- plugin = DummyPlugin.new
112
- plugin.configure(config_element('ROOT', '', {'@id' => '1'}))
113
- @s = BasicStorage.new
114
- @s.configure(config_element())
115
- @s.owner = plugin
116
- end
117
-
118
- test 'load/save works well as plugin internal state operations' do
119
- plugin = DummyPlugin.new
120
- plugin.configure(config_element('ROOT', '', {'@id' => '0'}))
121
- s = BasicStorage.new
122
- s.owner = plugin
123
-
124
- assert_nothing_raised{ s.load }
125
- assert s.data
126
- assert_nil s.saved
127
-
128
- assert_nothing_raised{ s.save }
129
- assert s.saved
130
- assert{ s.data == s.saved }
131
- assert{ s.data.object_id != s.saved.object_id }
132
- end
133
-
134
- test 'all operations work well' do
135
- @s.load
136
-
137
- assert_nil @s.get('key')
138
- assert_equal 'value', @s.fetch('key', 'value')
139
- assert_nil @s.get('key')
140
-
141
- assert_equal 'value', @s.put('key', 'value')
142
- assert_equal 'value', @s.get('key')
143
-
144
- assert_equal 'valuevalue', @s.update('key'){|v| v * 2 }
145
-
146
- assert_equal 'valuevalue', @s.delete('key')
147
- end
148
-
149
- test 'close and terminate work to operate internal states' do
150
- @s.load
151
- @s.put('k1', 'v1')
152
- @s.put('k2', 'v2')
153
- assert_equal 2, @s.data.size
154
- @s.save
155
- assert_equal @s.data.size, @s.saved.size
156
-
157
- assert_nothing_raised{ @s.close }
158
- assert @s.data.empty?
159
- assert !@s.saved.empty?
160
-
161
- assert_nothing_raised{ @s.terminate }
162
- assert @s.data.empty?
163
- assert @s.saved.empty?
164
- end
165
- end
166
- end
@@ -1,335 +0,0 @@
1
- require_relative '../helper'
2
- require 'fluent/plugin/storage_local'
3
- require 'fluent/plugin/input'
4
- require 'fluent/system_config'
5
- require 'fileutils'
6
-
7
- class LocalStorageTest < Test::Unit::TestCase
8
- TMP_DIR = File.expand_path(File.dirname(__FILE__) + "/tmp/storage_local#{ENV['TEST_ENV_NUMBER']}")
9
-
10
- class MyInput < Fluent::Plugin::Input
11
- helpers :storage
12
- config_section :storage do
13
- config_set_default :@type, 'local'
14
- end
15
- end
16
-
17
- setup do
18
- FileUtils.rm_rf(TMP_DIR)
19
- FileUtils.mkdir_p(TMP_DIR)
20
- Fluent::Test.setup
21
- @d = MyInput.new
22
- end
23
-
24
- teardown do
25
- @d.stop unless @d.stopped?
26
- @d.before_shutdown unless @d.before_shutdown?
27
- @d.shutdown unless @d.shutdown?
28
- @d.after_shutdown unless @d.after_shutdown?
29
- @d.close unless @d.closed?
30
- @d.terminate unless @d.terminated?
31
- end
32
-
33
- sub_test_case 'without any configuration' do
34
- test 'works as on-memory storage' do
35
- conf = config_element()
36
-
37
- @d.configure(conf)
38
- @d.start
39
- @p = @d.storage_create()
40
-
41
- assert_nil @p.path
42
- assert @p.store.empty?
43
-
44
- assert_nil @p.get('key1')
45
- assert_equal 'EMPTY', @p.fetch('key1', 'EMPTY')
46
-
47
- @p.put('key1', '1')
48
- assert_equal '1', @p.get('key1')
49
-
50
- @p.update('key1') do |v|
51
- (v.to_i * 2).to_s
52
- end
53
- assert_equal '2', @p.get('key1')
54
-
55
- @p.save # on-memory storage does nothing...
56
-
57
- @d.stop; @d.before_shutdown; @d.shutdown; @d.after_shutdown; @d.close; @d.terminate
58
-
59
- # re-create to reload storage contents
60
- @d = MyInput.new
61
- @d.configure(conf)
62
- @d.start
63
- @p = @d.storage_create()
64
-
65
- assert @p.store.empty?
66
- end
67
-
68
- test 'warns about on-memory storage if autosave is true' do
69
- @d.configure(config_element())
70
- @d.start
71
- @p = @d.storage_create()
72
-
73
- logs = @d.log.out.logs
74
- assert{ logs.any?{|log| log.include?("[warn]: both of Plugin @id and path for <storage> are not specified. Using on-memory store.") } }
75
- end
76
-
77
- test 'show info log about on-memory storage if autosave is false' do
78
- @d.configure(config_element('ROOT', '', {}, [config_element('storage', '', {'autosave' => 'false'})]))
79
- @d.start
80
- @p = @d.storage_create()
81
-
82
- logs = @d.log.out.logs
83
- assert{ logs.any?{|log| log.include?("[info]: both of Plugin @id and path for <storage> are not specified. Using on-memory store.") } }
84
- end
85
- end
86
-
87
- sub_test_case 'configured with file path' do
88
- test 'works as storage which stores data on disk' do
89
- storage_path = File.join(TMP_DIR, 'my_store.json')
90
- conf = config_element('ROOT', '', {}, [config_element('storage', '', {'path' => storage_path})])
91
- @d.configure(conf)
92
- @d.start
93
- @p = @d.storage_create()
94
-
95
- assert_equal storage_path, @p.path
96
- assert @p.store.empty?
97
-
98
- assert_nil @p.get('key1')
99
- assert_equal 'EMPTY', @p.fetch('key1', 'EMPTY')
100
-
101
- @p.put('key1', '1')
102
- assert_equal '1', @p.get('key1')
103
-
104
- @p.update('key1') do |v|
105
- (v.to_i * 2).to_s
106
- end
107
- assert_equal '2', @p.get('key1')
108
-
109
- @p.save # stores all data into file
110
-
111
- assert File.exist?(storage_path)
112
-
113
- @p.put('key2', 4)
114
-
115
- @d.stop; @d.before_shutdown; @d.shutdown; @d.after_shutdown; @d.close; @d.terminate
116
-
117
- assert_equal({'key1' => '2', 'key2' => 4}, File.open(storage_path){|f| JSON.parse(f.read) })
118
-
119
- # re-create to reload storage contents
120
- @d = MyInput.new
121
- @d.configure(conf)
122
- @d.start
123
- @p = @d.storage_create()
124
-
125
- assert_false @p.store.empty?
126
-
127
- assert_equal '2', @p.get('key1')
128
- assert_equal 4, @p.get('key2')
129
- end
130
-
131
- test 'raise configuration error if a file specified with multi worker configuration' do
132
- storage_path = File.join(TMP_DIR, 'my_store.json')
133
- conf = config_element('ROOT', '', {}, [config_element('storage', '', {'path' => storage_path})])
134
- @d.system_config_override('workers' => 3)
135
- assert_raise Fluent::ConfigError.new("Plugin 'local' does not support multi workers configuration (Fluent::Plugin::LocalStorage)") do
136
- @d.configure(conf)
137
- end
138
- end
139
- end
140
-
141
- sub_test_case 'configured with root-dir and plugin id' do
142
- test 'works as storage which stores data under root dir' do
143
- root_dir = File.join(TMP_DIR, 'root')
144
- expected_storage_path = File.join(root_dir, 'worker0', 'local_storage_test', 'storage.json')
145
- conf = config_element('ROOT', '', {'@id' => 'local_storage_test'})
146
- Fluent::SystemConfig.overwrite_system_config('root_dir' => root_dir) do
147
- @d.configure(conf)
148
- end
149
- @d.start
150
- @p = @d.storage_create()
151
-
152
- assert_equal expected_storage_path, @p.path
153
- assert @p.store.empty?
154
-
155
- assert_nil @p.get('key1')
156
- assert_equal 'EMPTY', @p.fetch('key1', 'EMPTY')
157
-
158
- @p.put('key1', '1')
159
- assert_equal '1', @p.get('key1')
160
-
161
- @p.update('key1') do |v|
162
- (v.to_i * 2).to_s
163
- end
164
- assert_equal '2', @p.get('key1')
165
-
166
- @p.save # stores all data into file
167
-
168
- assert File.exist?(expected_storage_path)
169
-
170
- @p.put('key2', 4)
171
-
172
- @d.stop; @d.before_shutdown; @d.shutdown; @d.after_shutdown; @d.close; @d.terminate
173
-
174
- assert_equal({'key1' => '2', 'key2' => 4}, File.open(expected_storage_path){|f| JSON.parse(f.read) })
175
-
176
- # re-create to reload storage contents
177
- @d = MyInput.new
178
- Fluent::SystemConfig.overwrite_system_config('root_dir' => root_dir) do
179
- @d.configure(conf)
180
- end
181
- @d.start
182
- @p = @d.storage_create()
183
-
184
- assert_false @p.store.empty?
185
-
186
- assert_equal '2', @p.get('key1')
187
- assert_equal 4, @p.get('key2')
188
- end
189
-
190
- test 'works with customized path by specified usage' do
191
- root_dir = File.join(TMP_DIR, 'root')
192
- expected_storage_path = File.join(root_dir, 'worker0', 'local_storage_test', 'storage.usage.json')
193
- conf = config_element('ROOT', 'usage', {'@id' => 'local_storage_test'})
194
- Fluent::SystemConfig.overwrite_system_config('root_dir' => root_dir) do
195
- @d.configure(conf)
196
- end
197
- @d.start
198
- @p = @d.storage_create(usage: 'usage', type: 'local')
199
-
200
- assert_equal expected_storage_path, @p.path
201
- assert @p.store.empty?
202
- end
203
- end
204
-
205
- sub_test_case 'configured with root-dir and plugin id, and multi workers' do
206
- test 'works as storage which stores data under root dir, also in workers' do
207
- root_dir = File.join(TMP_DIR, 'root')
208
- expected_storage_path = File.join(root_dir, 'worker1', 'local_storage_test', 'storage.json')
209
- conf = config_element('ROOT', '', {'@id' => 'local_storage_test'})
210
- with_worker_config(root_dir: root_dir, workers: 2, worker_id: 1) do
211
- @d.configure(conf)
212
- end
213
- @d.start
214
- @p = @d.storage_create()
215
-
216
- assert_equal expected_storage_path, @p.path
217
- assert @p.store.empty?
218
- end
219
- end
220
-
221
- sub_test_case 'persistent specified' do
222
- test 'works well with path' do
223
- omit "It's hard to test on Windows" if Fluent.windows?
224
-
225
- storage_path = File.join(TMP_DIR, 'my_store.json')
226
- conf = config_element('ROOT', '', {}, [config_element('storage', '', {'path' => storage_path, 'persistent' => 'true'})])
227
- @d.configure(conf)
228
- @d.start
229
- @p = @d.storage_create()
230
-
231
- assert_equal storage_path, @p.path
232
- assert @p.store.empty?
233
-
234
- assert_nil @p.get('key1')
235
- assert_equal 'EMPTY', @p.fetch('key1', 'EMPTY')
236
-
237
- @p.put('key1', '1')
238
- assert_equal({'key1' => '1'}, File.open(storage_path){|f| JSON.parse(f.read) })
239
-
240
- @p.update('key1') do |v|
241
- (v.to_i * 2).to_s
242
- end
243
- assert_equal({'key1' => '2'}, File.open(storage_path){|f| JSON.parse(f.read) })
244
- end
245
-
246
- test 'works well with root-dir and plugin id' do
247
- omit "It's hard to test on Windows" if Fluent.windows?
248
-
249
- root_dir = File.join(TMP_DIR, 'root')
250
- expected_storage_path = File.join(root_dir, 'worker0', 'local_storage_test', 'storage.json')
251
- conf = config_element('ROOT', '', {'@id' => 'local_storage_test'}, [config_element('storage', '', {'persistent' => 'true'})])
252
- Fluent::SystemConfig.overwrite_system_config('root_dir' => root_dir) do
253
- @d.configure(conf)
254
- end
255
- @d.start
256
- @p = @d.storage_create()
257
-
258
- assert_equal expected_storage_path, @p.path
259
- assert @p.store.empty?
260
-
261
- assert_nil @p.get('key1')
262
- assert_equal 'EMPTY', @p.fetch('key1', 'EMPTY')
263
-
264
- @p.put('key1', '1')
265
- assert_equal({'key1' => '1'}, File.open(expected_storage_path){|f| JSON.parse(f.read) })
266
-
267
- @p.update('key1') do |v|
268
- (v.to_i * 2).to_s
269
- end
270
- assert_equal({'key1' => '2'}, File.open(expected_storage_path){|f| JSON.parse(f.read) })
271
- end
272
-
273
- test 'raises error if it is configured to use on-memory storage' do
274
- assert_raise Fluent::ConfigError.new("Plugin @id or path for <storage> required when 'persistent' is true") do
275
- @d.configure(config_element('ROOT', '', {}, [config_element('storage', '', {'persistent' => 'true'})]))
276
- end
277
- end
278
- end
279
-
280
- sub_test_case 'with various configurations' do
281
- test 'mode and dir_mode controls permissions of stored data' do
282
- omit "NTFS doesn't support UNIX like permissions" if Fluent.windows?
283
-
284
- storage_path = File.join(TMP_DIR, 'dir', 'my_store.json')
285
- storage_conf = {
286
- 'path' => storage_path,
287
- 'mode' => '0600',
288
- 'dir_mode' => '0777',
289
- }
290
- conf = config_element('ROOT', '', {}, [config_element('storage', '', storage_conf)])
291
- @d.configure(conf)
292
- @d.start
293
- @p = @d.storage_create()
294
-
295
- assert_equal storage_path, @p.path
296
- assert @p.store.empty?
297
-
298
- @p.put('key1', '1')
299
- assert_equal '1', @p.get('key1')
300
-
301
- @p.save # stores all data into file
302
-
303
- assert File.exist?(storage_path)
304
- assert_equal 0600, (File.stat(storage_path).mode % 01000)
305
- assert_equal 0777, (File.stat(File.dirname(storage_path)).mode % 01000)
306
- end
307
-
308
- test 'pretty_print controls to write data in files as human-easy-to-read' do
309
- storage_path = File.join(TMP_DIR, 'dir', 'my_store.json')
310
- storage_conf = {
311
- 'path' => storage_path,
312
- 'pretty_print' => 'true',
313
- }
314
- conf = config_element('ROOT', '', {}, [config_element('storage', '', storage_conf)])
315
- @d.configure(conf)
316
- @d.start
317
- @p = @d.storage_create()
318
-
319
- assert_equal storage_path, @p.path
320
- assert @p.store.empty?
321
-
322
- @p.put('key1', '1')
323
- assert_equal '1', @p.get('key1')
324
-
325
- @p.save # stores all data into file
326
-
327
- expected_pp_json = <<JSON.chomp
328
- {
329
- "key1": "1"
330
- }
331
- JSON
332
- assert_equal expected_pp_json, File.read(storage_path)
333
- end
334
- end
335
- end
@@ -1,26 +0,0 @@
1
- require_relative '../helper'
2
- require 'fluent/plugin/string_util'
3
-
4
- class StringUtilTest < Test::Unit::TestCase
5
- def setup
6
- @null_value_pattern = Regexp.new("^(-|null|NULL)$")
7
- end
8
-
9
- sub_test_case 'valid string' do
10
- test 'null string' do
11
- assert_equal Fluent::StringUtil.match_regexp(@null_value_pattern, "null").to_s, "null"
12
- assert_equal Fluent::StringUtil.match_regexp(@null_value_pattern, "NULL").to_s, "NULL"
13
- assert_equal Fluent::StringUtil.match_regexp(@null_value_pattern, "-").to_s, "-"
14
- end
15
-
16
- test 'normal string' do
17
- assert_equal Fluent::StringUtil.match_regexp(@null_value_pattern, "fluentd"), nil
18
- end
19
- end
20
-
21
- sub_test_case 'invalid string' do
22
- test 'normal string' do
23
- assert_equal Fluent::StringUtil.match_regexp(@null_value_pattern, "\xff"), nil
24
- end
25
- end
26
- end
@@ -1,27 +0,0 @@
1
- -----BEGIN RSA PRIVATE KEY-----
2
- MIIEpQIBAAKCAQEArbUTk5n5RruIQGhK1T8g/emKonlfWNMSj/J/f/U9NJ14ugIx
3
- yHBMqx4WaTyA4zjT2VJO5tRBe385zlIUf8i+x7Ovt/MgsjiwXyKv7qdsE5KHLq+V
4
- XJfA+s5vAAyzBHY/BA7xxh/QqCI8a/a1OyHyaQ9pFRFXtQBlTH7Fc1qSw5Yg0EXo
5
- fa6YIBQuDjfqa7FRPj+bEWDO5PUqOMzH5XKBUPS9GLHOqia0CnzF2a51TArC0Dl1
6
- oNFa7myVmjBuNtkG88Fkd7YNzGa+sNBJPmuGvFXuU3XPEnrtARO/SG4g9/MQUvfM
7
- I3jFFOJAMmEKd8QXxO5FgIuEnaNOhVRVH/e9wwIDAQABAoIBAQCcYYAWSW/Y9ctb
8
- 8IguIn8ZF77vNkVYOe1kGfQexjErxPiCvKcEw9TB2HxkkUuXQ/m0lBzkQgIRpB/u
9
- VoaN47OdJW70M7UjvVVK0HeCascpd6irpvbYPOZG5MGZUdV4Ftv0U1/l9Y5rTycG
10
- KzxM1+rcGjuH8+z5zjlj/FzV1Jx75pgH2vwE7tBC9hMIefKJVxsnj+1I2BWwT3Ra
11
- tFayaKW80UYvGQeQjMHyWzEAHAAco5EVTNU9q4xkeKubZx/dod8b05S0Oral0SHY
12
- AFzXJCp6k29w0m3saEtVQBTImwNut8scJ4KoryGRp9fj9a/dBb1RHe/6EXZ8kDRe
13
- zhB2/XWBAoGBANpaAPdcIXFyke4DRB07JGin4NU+yzIZy+RwsHme1OIwu9jUYQ1j
14
- SzcrnJ9adkjgHl4z2psXyeSz/lSUGj7ZjcMVaDu49JSYMPP3heXGkHdtlVyB7KFR
15
- OBt1rgNdXYfOLOBg6j7mf5G5fXUIATM8fNw5nDYIivD7U3cl9TdUe3OJAoGBAMuo
16
- e/pmRMEaaDmXuNkDGv/ZoOC4j9tO1fGheSdna9gZWoOyY+MUTFNBQuz/8aw6VsKS
17
- c7RXY0QI6NsgdLD1OGVgH9AXhDqvgfOBXDWdr/DNJa0wDFNaWRrMFeNQLm7Xhxuf
18
- OBQycq6vUiWJ6XTqcdk+xErcWRbsQPsGozCEcHfrAoGBAI+sl2QsMClI/PLDHWeq
19
- ict/Y3aNigCebsYSzFxKgcOP05raLD417sEPplBIovpS1kigECDrJ0KgmSIoDZj7
20
- Z8dM57gcfHrmJZfycB2AaYDcD2K+bui625Nd/LFkFu4MYQUHYDshSiGmDwIZ0UhY
21
- bcQu+DWpq1rj1Mjaph7RLSYZAoGBAMAJNiZt6qT/ZonwA/A1mm7oYmekAJo2I0y+
22
- CwTZ43oYph4Kx19nU3Up05aw3MyfEhJUkF/cCxErKY7+cqouAKiu1DCfDCNePTZE
23
- o5M3BqEUgFNnPCgYyG6ZRIZco/wGpTKplvKMg1EuplIZUhbZvtKv+d3xGtyfl8Jc
24
- huKH75lTAoGAHQ3Sy56zgQEJ3QFrIw4puztf/KXpSgLA+aSDh6Ti4IY7L+CwZmuW
25
- JyVbgF33CwSIKEhacmALs1ZZsDc1ZXov1HWwePxe4/m7smoqZDtrRXQsbRB5COzA
26
- U30iEMW/rwI3WmHhiIWZYje85+VJZqBc5QS8guv4/XrS/FE7C8Suksc=
27
- -----END RSA PRIVATE KEY-----
@@ -1,19 +0,0 @@
1
- -----BEGIN CERTIFICATE-----
2
- MIIDLDCCAhSgAwIBAgIIEJHFsHrKBGYwDQYJKoZIhvcNAQELBQAwJjEQMA4GA1UE
3
- ChMHRmx1ZW50ZDESMBAGA1UEAxMJbG9jYWxob3N0MB4XDTE5MDYxOTA1MTM0NVoX
4
- DTE5MDkxODExMTg0NVowJjEQMA4GA1UEChMHRmx1ZW50ZDESMBAGA1UEAxMJbG9j
5
- YWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArbUTk5n5RruI
6
- QGhK1T8g/emKonlfWNMSj/J/f/U9NJ14ugIxyHBMqx4WaTyA4zjT2VJO5tRBe385
7
- zlIUf8i+x7Ovt/MgsjiwXyKv7qdsE5KHLq+VXJfA+s5vAAyzBHY/BA7xxh/QqCI8
8
- a/a1OyHyaQ9pFRFXtQBlTH7Fc1qSw5Yg0EXofa6YIBQuDjfqa7FRPj+bEWDO5PUq
9
- OMzH5XKBUPS9GLHOqia0CnzF2a51TArC0Dl1oNFa7myVmjBuNtkG88Fkd7YNzGa+
10
- sNBJPmuGvFXuU3XPEnrtARO/SG4g9/MQUvfMI3jFFOJAMmEKd8QXxO5FgIuEnaNO
11
- hVRVH/e9wwIDAQABo14wXDAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYB
12
- BQUHAwEGCCsGAQUFBwMCMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFPLdOVnVWuuB
13
- 7Pnvpgte4BHitzFYMA0GCSqGSIb3DQEBCwUAA4IBAQBp8LAzjWIJapwTBnnivwZk
14
- D6Lr028mZIacbBZKsmmPi0VvDFqCvUAbHN8ytPlRBWnvvkihDkZs1TwcDCXGsWYs
15
- dNNwsYGpk3mQxsHQ9atvy0mQGLDlfaSs/329bfVCw1cPFo9n+MeivSBoE6asdIbH
16
- tOW3kk1XtJZ2qQJJRvexFImZc0z8c2cG0+eR5hQxQd9bLnAczi/8mZ8VzaU/O3UU
17
- OJoVuyp0AA8f2f0f1QDaeH9stWZtJQj3ZX1DWHRE3OmVkoBdlt8EHYGggtvQaLIF
18
- XbHigLHzYztMjmDt4fmRczu/Fu6M4xNro8jLgjiIjqlLBjDZiKrSbOwgyebwFDlv
19
- -----END CERTIFICATE-----
@@ -1,19 +0,0 @@
1
- -----BEGIN CERTIFICATE-----
2
- MIIDLDCCAhSgAwIBAgIIEJHFsHrKBGYwDQYJKoZIhvcNAQELBQAwJjEQMA4GA1UE
3
- ChMHRmx1ZW50ZDESMBAGA1UEAxMJbG9jYWxob3N0MB4XDTE5MDYxOTA1MTM0NVoX
4
- DTE5MDkxODExMTg0NVowJjEQMA4GA1UEChMHRmx1ZW50ZDESMBAGA1UEAxMJbG9j
5
- YWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArbUTk5n5RruI
6
- QGhK1T8g/emKonlfWNMSj/J/f/U9NJ14ugIxyHBMqx4WaTyA4zjT2VJO5tRBe385
7
- zlIUf8i+x7Ovt/MgsjiwXyKv7qdsE5KHLq+VXJfA+s5vAAyzBHY/BA7xxh/QqCI8
8
- a/a1OyHyaQ9pFRFXtQBlTH7Fc1qSw5Yg0EXofa6YIBQuDjfqa7FRPj+bEWDO5PUq
9
- OMzH5XKBUPS9GLHOqia0CnzF2a51TArC0Dl1oNFa7myVmjBuNtkG88Fkd7YNzGa+
10
- sNBJPmuGvFXuU3XPEnrtARO/SG4g9/MQUvfMI3jFFOJAMmEKd8QXxO5FgIuEnaNO
11
- hVRVH/e9wwIDAQABo14wXDAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYB
12
- BQUHAwEGCCsGAQUFBwMCMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFPLdOVnVWuuB
13
- 7Pnvpgte4BHitzFYMA0GCSqGSIb3DQEBCwUAA4IBAQBp8LAzjWIJapwTBnnivwZk
14
- D6Lr028mZIacbBZKsmmPi0VvDFqCvUAbHN8ytPlRBWnvvkihDkZs1TwcDCXGsWYs
15
- dNNwsYGpk3mQxsHQ9atvy0mQGLDlfaSs/329bfVCw1cPFo9n+MeivSBoE6asdIbH
16
- tOW3kk1XtJZ2qQJJRvexFImZc0z8c2cG0+eR5hQxQd9bLnAczi/8mZ8VzaU/O3UU
17
- OJoVuyp0AA8f2f0f1QDaeH9stWZtJQj3ZX1DWHRE3OmVkoBdlt8EHYGggtvQaLIF
18
- XbHigLHzYztMjmDt4fmRczu/Fu6M4xNro8jLgjiIjqlLBjDZiKrSbOwgyebwFDlv
19
- -----END CERTIFICATE-----
@@ -1,19 +0,0 @@
1
- -----BEGIN CERTIFICATE-----
2
- MIIDLDCCAhSgAwIBAgIIEJHFsHrKBGYwDQYJKoZIhvcNAQELBQAwJjEQMA4GA1UE
3
- ChMHRmx1ZW50ZDESMBAGA1UEAxMJbG9jYWxob3N0MB4XDTE5MDYxOTA1MTM0NVoX
4
- DTE5MDkxODExMTg0NVowJjEQMA4GA1UEChMHRmx1ZW50ZDESMBAGA1UEAxMJbG9j
5
- YWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArbUTk5n5RruI
6
- QGhK1T8g/emKonlfWNMSj/J/f/U9NJ14ugIxyHBMqx4WaTyA4zjT2VJO5tRBe385
7
- zlIUf8i+x7Ovt/MgsjiwXyKv7qdsE5KHLq+VXJfA+s5vAAyzBHY/BA7xxh/QqCI8
8
- a/a1OyHyaQ9pFRFXtQBlTH7Fc1qSw5Yg0EXofa6YIBQuDjfqa7FRPj+bEWDO5PUq
9
- OMzH5XKBUPS9GLHOqia0CnzF2a51TArC0Dl1oNFa7myVmjBuNtkG88Fkd7YNzGa+
10
- sNBJPmuGvFXuU3XPEnrtARO/SG4g9/MQUvfMI3jFFOJAMmEKd8QXxO5FgIuEnaNO
11
- hVRVH/e9wwIDAQABo14wXDAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYB
12
- BQUHAwEGCCsGAQUFBwMCMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFPLdOVnVWuuB
13
- 7Pnvpgte4BHitzFYMA0GCSqGSIb3DQEBCwUAA4IBAQBp8LAzjWIJapwTBnnivwZk
14
- D6Lr028mZIacbBZKsmmPi0VvDFqCvUAbHN8ytPlRBWnvvkihDkZs1TwcDCXGsWYs
15
- dNNwsYGpk3mQxsHQ9atvy0mQGLDlfaSs/329bfVCw1cPFo9n+MeivSBoE6asdIbH
16
- tOW3kk1XtJZ2qQJJRvexFImZc0z8c2cG0+eR5hQxQd9bLnAczi/8mZ8VzaU/O3UU
17
- OJoVuyp0AA8f2f0f1QDaeH9stWZtJQj3ZX1DWHRE3OmVkoBdlt8EHYGggtvQaLIF
18
- XbHigLHzYztMjmDt4fmRczu/Fu6M4xNro8jLgjiIjqlLBjDZiKrSbOwgyebwFDlv
19
- -----END CERTIFICATE-----
@@ -1,27 +0,0 @@
1
- -----BEGIN RSA PRIVATE KEY-----
2
- MIIEpAIBAAKCAQEA21in8qRqBrfYlRHr1N6eGq3d4CnKe+lTt0sGbab1670s0+h1
3
- lGtjWny6gLSnt5PBY36CUoFB8MtRciVG2zUhB+dAZe4Mst5dzJO6cONT/l/USbCV
4
- rQ/x8m3YzeJNj89fCZ7/7po8CpEfn16BMAd6TMXZZ8O+DCgv3SliEyxpi9CLg2PK
5
- wAV4lwktbGenYadWLFWjv5a+QElFGH/tu5jUDhggoisoQGyZCls2Vmbr6RH+uiy8
6
- js3gxy+5YgbuwkrQtjbfwxe5yEsd6RgzO8oLqlowCwCrn4CNaXFwaZa/vqcWzY4L
7
- qiEWLfmFpFcSZdoWjr1WHsJS/PM3AyJea8nAnQIDAQABAoIBAGkMpaqsmWbMR7rl
8
- EVgqoffPCzMfcK01ivV+xf5f9ulG+aAndaB2aefdUojvfF+MMRNQdGPFKeqDxWbw
9
- eWXkpQQe+ZWXk5darfubSLBl/0UVahs8qgJvX4WmnC3GUzUrsK1v68y/K0A4TrfJ
10
- z/9LpYP9QWjTs0IpQPsfpavfGlFt1TJvPxmomn7D+n0N6zzD3kFlGdeCSYwtPURR
11
- dJ7ifX2vU4E8UtSm7gLrXlmAl1O7bJjFvL3+QlzKDM4M1WJpA9MkmM2icKxdYpew
12
- biRmIiUHdV4soad2Aq58v4q5UgdMqGI8f+fWPO9qgXN7AKbT9NkXr1w/pziOt5rq
13
- /77lbKECgYEA9bmOSA1LfRRclJCaoWWu4PiaXdvMHvsNC9r8NUGuwmiosEMKHFEJ
14
- z8wvzVXprziXAwDTwqkPJmKseNPC8WCq2GfNu7lqJ1V1wHxpzHKhiAWhs7rE7skW
15
- mF2xn2Tocba/L3Nb+K0tXhOZ7daduz94YXFhmRtsutZ9JvFv3G+QmHkCgYEA5IS4
16
- +cOFyha486U9jXyLcPmZXZY9ql4ILuKuQ5pHA7CBO/zU2behuwcainW6P0WzbhKs
17
- CP8xR5W/otqcaHZxy6hg9/nUFVVZIR/0jgKyxCqJA1W49jt23gykmU6q0vj7haZJ
18
- QMhcAbleHBC7YvYoMTpTMe7tZP4YsFNysBn76EUCgYBqtFAn07YjM7NcREsRqSE+
19
- ylXmSisijOxGaKq6ybIE9APEvufmEf7LwKRFa3hVwaI6CKLsVhOhHJo+wd5WiR7H
20
- aJQ7X7HMMN04YA5lXKXudluYu5MHCkWIlq8qQ1x4/N2a0mJu42ze/G4MjPTjuhUh
21
- Y2X5YaJepAOm5JMpyzykKQKBgQDj9eaU+dBgLdSo8UD7ALAVrlio/HRdnNoq82SF
22
- +cQ30P7KucgXvFDxQv/d+d0mu0BoYOYPP4uIbsEyE0SODQIt+LVrCmTgNzjni3op
23
- pFVyzT/K/Nu7fsxwbEpSySAtv8UhqSVQI89sxN81vhdAfHDR0u4lVMSqx7QXSdeS
24
- Bwm9xQKBgQDSeoHoXbmiqRBss9Em69JPwWRZOc9eLns+fFJ1x/WkhY4bnnVXTYkZ
25
- LzRN4ICq18xHy8egbl93uxDcjkMxi3Wj64QZcygI9gWmDBW2hdMpEArR/grsM/FH
26
- DYu9KUMhm5T1KtXtV3izSVCprthdGjbKSbmR6hGw3n9Z1uP6V1rnXQ==
27
- -----END RSA PRIVATE KEY-----
@@ -1,20 +0,0 @@
1
- -----BEGIN CERTIFICATE-----
2
- MIIDPTCCAiWgAwIBAgILAJJ76Kpa6DYtsncwDQYJKoZIhvcNAQELBQAwUzELMAkG
3
- A1UEBhMCVVMxCzAJBgNVBAgMAkNBMRYwFAYDVQQHDA1Nb3VudGFpbiBWaWV3MR8w
4
- HQYDVQQDDBZjYS50ZXN0aW5nLmZsdWVudGQub3JnMCAXDTcwMDEwMTAwMDAwMFoY
5
- DzIxMTgxMDI3MDgwNjU3WjBTMQswCQYDVQQGEwJVUzELMAkGA1UECAwCQ0ExFjAU
6
- BgNVBAcMDU1vdW50YWluIFZpZXcxHzAdBgNVBAMMFmNhLnRlc3RpbmcuZmx1ZW50
7
- ZC5vcmcwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDbWKfypGoGt9iV
8
- EevU3p4ard3gKcp76VO3SwZtpvXrvSzT6HWUa2NafLqAtKe3k8FjfoJSgUHwy1Fy
9
- JUbbNSEH50Bl7gyy3l3Mk7pw41P+X9RJsJWtD/HybdjN4k2Pz18Jnv/umjwKkR+f
10
- XoEwB3pMxdlnw74MKC/dKWITLGmL0IuDY8rABXiXCS1sZ6dhp1YsVaO/lr5ASUUY
11
- f+27mNQOGCCiKyhAbJkKWzZWZuvpEf66LLyOzeDHL7liBu7CStC2Nt/DF7nISx3p
12
- GDM7yguqWjALAKufgI1pcXBplr++pxbNjguqIRYt+YWkVxJl2haOvVYewlL88zcD
13
- Il5rycCdAgMBAAGjEDAOMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEB
14
- AGPhEAc+vb9PHyet9t5gKJTZF7S4x207hKZ0zLqCQCLM7VjrTVBh/TUFT+saiPsv
15
- 4k2TYSZKInYXh6tkSzdGlRyzk166hF1eOTOae/92Da5PEQMT0AC+SDRDHXrNTyD8
16
- ZxP2xOl0j+FNeKQDdNL+PCU56PYehY40dYZ/EjRyu4VjKaSCMHcVx7eMTyxU3wtB
17
- HbOa8UJdUXEjn4h7icz4aca22aqLedXNaDr6YX+mo25t1jsTO7cEMfr4Ce7GvxdA
18
- msey/b5jnsKcpL7/2uYz5+owD39JZQBRQt+1YAzIU+BNiz8yzdXJO4aQpGWTflIB
19
- jO31o7x4loEvaBTQbX3iP2g=
20
- -----END CERTIFICATE-----