logstash-lib 1.3.2

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 (419) hide show
  1. data/.gitignore +24 -0
  2. data/.tailor +8 -0
  3. data/.travis.yml +12 -0
  4. data/CHANGELOG +1185 -0
  5. data/CONTRIBUTING.md +61 -0
  6. data/CONTRIBUTORS +79 -0
  7. data/LICENSE +14 -0
  8. data/Makefile +460 -0
  9. data/README.md +120 -0
  10. data/STYLE.md +96 -0
  11. data/bin/logstash +37 -0
  12. data/bin/logstash-test +4 -0
  13. data/bin/logstash-web +4 -0
  14. data/bin/logstash.lib.sh +78 -0
  15. data/bot/check_pull_changelog.rb +89 -0
  16. data/docs/configuration.md +260 -0
  17. data/docs/docgen.rb +242 -0
  18. data/docs/extending/example-add-a-new-filter.md +121 -0
  19. data/docs/extending/index.md +91 -0
  20. data/docs/flags.md +43 -0
  21. data/docs/generate_index.rb +28 -0
  22. data/docs/index.html.erb +56 -0
  23. data/docs/learn.md +46 -0
  24. data/docs/life-of-an-event.md +109 -0
  25. data/docs/logging-tool-comparisons.md +60 -0
  26. data/docs/plugin-doc.html.erb +91 -0
  27. data/docs/plugin-milestones.md +41 -0
  28. data/docs/plugin-synopsis.html.erb +24 -0
  29. data/docs/release-engineering.md +46 -0
  30. data/docs/release-test-results.md +14 -0
  31. data/docs/repositories.md +35 -0
  32. data/docs/tutorials/10-minute-walkthrough/apache-elasticsearch.conf +35 -0
  33. data/docs/tutorials/10-minute-walkthrough/apache-parse.conf +33 -0
  34. data/docs/tutorials/10-minute-walkthrough/apache_log.1 +1 -0
  35. data/docs/tutorials/10-minute-walkthrough/apache_log.2.bz2 +0 -0
  36. data/docs/tutorials/10-minute-walkthrough/hello-search.conf +25 -0
  37. data/docs/tutorials/10-minute-walkthrough/hello.conf +16 -0
  38. data/docs/tutorials/10-minute-walkthrough/index.md +124 -0
  39. data/docs/tutorials/10-minute-walkthrough/step-5-output.txt +17 -0
  40. data/docs/tutorials/getting-started-centralized-overview-diagram.png +0 -0
  41. data/docs/tutorials/getting-started-centralized-overview-diagram.xml +1 -0
  42. data/docs/tutorials/getting-started-centralized.md +217 -0
  43. data/docs/tutorials/getting-started-simple.md +200 -0
  44. data/docs/tutorials/just-enough-rabbitmq-for-logstash.md +201 -0
  45. data/docs/tutorials/media/frontend-response-codes.png +0 -0
  46. data/docs/tutorials/metrics-from-logs.md +84 -0
  47. data/docs/tutorials/zeromq.md +118 -0
  48. data/extract_services.rb +29 -0
  49. data/gembag.rb +64 -0
  50. data/lib/logstash-event.rb +2 -0
  51. data/lib/logstash.rb +4 -0
  52. data/lib/logstash/JRUBY-6970-openssl.rb +22 -0
  53. data/lib/logstash/JRUBY-6970.rb +102 -0
  54. data/lib/logstash/agent.rb +305 -0
  55. data/lib/logstash/certs/cacert.pem +3895 -0
  56. data/lib/logstash/codecs/base.rb +49 -0
  57. data/lib/logstash/codecs/compress_spooler.rb +50 -0
  58. data/lib/logstash/codecs/dots.rb +18 -0
  59. data/lib/logstash/codecs/edn.rb +28 -0
  60. data/lib/logstash/codecs/edn_lines.rb +36 -0
  61. data/lib/logstash/codecs/fluent.rb +55 -0
  62. data/lib/logstash/codecs/graphite.rb +114 -0
  63. data/lib/logstash/codecs/json.rb +41 -0
  64. data/lib/logstash/codecs/json_lines.rb +52 -0
  65. data/lib/logstash/codecs/json_spooler.rb +22 -0
  66. data/lib/logstash/codecs/line.rb +58 -0
  67. data/lib/logstash/codecs/msgpack.rb +43 -0
  68. data/lib/logstash/codecs/multiline.rb +189 -0
  69. data/lib/logstash/codecs/netflow.rb +342 -0
  70. data/lib/logstash/codecs/netflow/util.rb +212 -0
  71. data/lib/logstash/codecs/noop.rb +19 -0
  72. data/lib/logstash/codecs/oldlogstashjson.rb +56 -0
  73. data/lib/logstash/codecs/plain.rb +48 -0
  74. data/lib/logstash/codecs/rubydebug.rb +22 -0
  75. data/lib/logstash/codecs/spool.rb +38 -0
  76. data/lib/logstash/config/Makefile +4 -0
  77. data/lib/logstash/config/config_ast.rb +380 -0
  78. data/lib/logstash/config/file.rb +39 -0
  79. data/lib/logstash/config/grammar.rb +3504 -0
  80. data/lib/logstash/config/grammar.treetop +241 -0
  81. data/lib/logstash/config/mixin.rb +464 -0
  82. data/lib/logstash/config/registry.rb +13 -0
  83. data/lib/logstash/config/test.conf +18 -0
  84. data/lib/logstash/errors.rb +10 -0
  85. data/lib/logstash/event.rb +262 -0
  86. data/lib/logstash/filters/advisor.rb +178 -0
  87. data/lib/logstash/filters/alter.rb +173 -0
  88. data/lib/logstash/filters/anonymize.rb +93 -0
  89. data/lib/logstash/filters/base.rb +190 -0
  90. data/lib/logstash/filters/checksum.rb +50 -0
  91. data/lib/logstash/filters/cidr.rb +76 -0
  92. data/lib/logstash/filters/cipher.rb +145 -0
  93. data/lib/logstash/filters/clone.rb +35 -0
  94. data/lib/logstash/filters/collate.rb +114 -0
  95. data/lib/logstash/filters/csv.rb +94 -0
  96. data/lib/logstash/filters/date.rb +244 -0
  97. data/lib/logstash/filters/dns.rb +201 -0
  98. data/lib/logstash/filters/drop.rb +32 -0
  99. data/lib/logstash/filters/elapsed.rb +256 -0
  100. data/lib/logstash/filters/elasticsearch.rb +73 -0
  101. data/lib/logstash/filters/environment.rb +27 -0
  102. data/lib/logstash/filters/extractnumbers.rb +84 -0
  103. data/lib/logstash/filters/gelfify.rb +52 -0
  104. data/lib/logstash/filters/geoip.rb +145 -0
  105. data/lib/logstash/filters/grep.rb +153 -0
  106. data/lib/logstash/filters/grok.rb +425 -0
  107. data/lib/logstash/filters/grokdiscovery.rb +75 -0
  108. data/lib/logstash/filters/i18n.rb +51 -0
  109. data/lib/logstash/filters/json.rb +90 -0
  110. data/lib/logstash/filters/json_encode.rb +52 -0
  111. data/lib/logstash/filters/kv.rb +232 -0
  112. data/lib/logstash/filters/metaevent.rb +68 -0
  113. data/lib/logstash/filters/metrics.rb +237 -0
  114. data/lib/logstash/filters/multiline.rb +241 -0
  115. data/lib/logstash/filters/mutate.rb +399 -0
  116. data/lib/logstash/filters/noop.rb +21 -0
  117. data/lib/logstash/filters/prune.rb +149 -0
  118. data/lib/logstash/filters/punct.rb +32 -0
  119. data/lib/logstash/filters/railsparallelrequest.rb +86 -0
  120. data/lib/logstash/filters/range.rb +142 -0
  121. data/lib/logstash/filters/ruby.rb +42 -0
  122. data/lib/logstash/filters/sleep.rb +111 -0
  123. data/lib/logstash/filters/split.rb +64 -0
  124. data/lib/logstash/filters/sumnumbers.rb +73 -0
  125. data/lib/logstash/filters/syslog_pri.rb +107 -0
  126. data/lib/logstash/filters/translate.rb +121 -0
  127. data/lib/logstash/filters/unique.rb +29 -0
  128. data/lib/logstash/filters/urldecode.rb +57 -0
  129. data/lib/logstash/filters/useragent.rb +112 -0
  130. data/lib/logstash/filters/uuid.rb +58 -0
  131. data/lib/logstash/filters/xml.rb +139 -0
  132. data/lib/logstash/filters/zeromq.rb +123 -0
  133. data/lib/logstash/filterworker.rb +122 -0
  134. data/lib/logstash/inputs/base.rb +125 -0
  135. data/lib/logstash/inputs/collectd.rb +306 -0
  136. data/lib/logstash/inputs/drupal_dblog.rb +323 -0
  137. data/lib/logstash/inputs/drupal_dblog/jdbcconnection.rb +66 -0
  138. data/lib/logstash/inputs/elasticsearch.rb +140 -0
  139. data/lib/logstash/inputs/eventlog.rb +129 -0
  140. data/lib/logstash/inputs/eventlog/racob_fix.rb +44 -0
  141. data/lib/logstash/inputs/exec.rb +69 -0
  142. data/lib/logstash/inputs/file.rb +146 -0
  143. data/lib/logstash/inputs/ganglia.rb +127 -0
  144. data/lib/logstash/inputs/ganglia/gmondpacket.rb +146 -0
  145. data/lib/logstash/inputs/ganglia/xdr.rb +327 -0
  146. data/lib/logstash/inputs/gelf.rb +138 -0
  147. data/lib/logstash/inputs/gemfire.rb +222 -0
  148. data/lib/logstash/inputs/generator.rb +97 -0
  149. data/lib/logstash/inputs/graphite.rb +41 -0
  150. data/lib/logstash/inputs/heroku.rb +51 -0
  151. data/lib/logstash/inputs/imap.rb +136 -0
  152. data/lib/logstash/inputs/irc.rb +84 -0
  153. data/lib/logstash/inputs/log4j.rb +136 -0
  154. data/lib/logstash/inputs/lumberjack.rb +53 -0
  155. data/lib/logstash/inputs/pipe.rb +57 -0
  156. data/lib/logstash/inputs/rabbitmq.rb +126 -0
  157. data/lib/logstash/inputs/rabbitmq/bunny.rb +118 -0
  158. data/lib/logstash/inputs/rabbitmq/hot_bunnies.rb +1 -0
  159. data/lib/logstash/inputs/rabbitmq/march_hare.rb +129 -0
  160. data/lib/logstash/inputs/redis.rb +263 -0
  161. data/lib/logstash/inputs/relp.rb +106 -0
  162. data/lib/logstash/inputs/s3.rb +279 -0
  163. data/lib/logstash/inputs/snmptrap.rb +87 -0
  164. data/lib/logstash/inputs/sqlite.rb +185 -0
  165. data/lib/logstash/inputs/sqs.rb +172 -0
  166. data/lib/logstash/inputs/stdin.rb +46 -0
  167. data/lib/logstash/inputs/stomp.rb +84 -0
  168. data/lib/logstash/inputs/syslog.rb +237 -0
  169. data/lib/logstash/inputs/tcp.rb +231 -0
  170. data/lib/logstash/inputs/threadable.rb +18 -0
  171. data/lib/logstash/inputs/twitter.rb +82 -0
  172. data/lib/logstash/inputs/udp.rb +81 -0
  173. data/lib/logstash/inputs/unix.rb +163 -0
  174. data/lib/logstash/inputs/varnishlog.rb +48 -0
  175. data/lib/logstash/inputs/websocket.rb +50 -0
  176. data/lib/logstash/inputs/wmi.rb +72 -0
  177. data/lib/logstash/inputs/xmpp.rb +81 -0
  178. data/lib/logstash/inputs/zenoss.rb +143 -0
  179. data/lib/logstash/inputs/zeromq.rb +165 -0
  180. data/lib/logstash/kibana.rb +113 -0
  181. data/lib/logstash/loadlibs.rb +9 -0
  182. data/lib/logstash/logging.rb +89 -0
  183. data/lib/logstash/monkeypatches-for-bugs.rb +2 -0
  184. data/lib/logstash/monkeypatches-for-debugging.rb +47 -0
  185. data/lib/logstash/monkeypatches-for-performance.rb +66 -0
  186. data/lib/logstash/multiqueue.rb +53 -0
  187. data/lib/logstash/namespace.rb +16 -0
  188. data/lib/logstash/outputs/base.rb +120 -0
  189. data/lib/logstash/outputs/boundary.rb +116 -0
  190. data/lib/logstash/outputs/circonus.rb +78 -0
  191. data/lib/logstash/outputs/cloudwatch.rb +351 -0
  192. data/lib/logstash/outputs/csv.rb +55 -0
  193. data/lib/logstash/outputs/datadog.rb +93 -0
  194. data/lib/logstash/outputs/datadog_metrics.rb +123 -0
  195. data/lib/logstash/outputs/elasticsearch.rb +332 -0
  196. data/lib/logstash/outputs/elasticsearch/elasticsearch-template.json +44 -0
  197. data/lib/logstash/outputs/elasticsearch_http.rb +256 -0
  198. data/lib/logstash/outputs/elasticsearch_river.rb +214 -0
  199. data/lib/logstash/outputs/email.rb +299 -0
  200. data/lib/logstash/outputs/exec.rb +40 -0
  201. data/lib/logstash/outputs/file.rb +180 -0
  202. data/lib/logstash/outputs/ganglia.rb +75 -0
  203. data/lib/logstash/outputs/gelf.rb +208 -0
  204. data/lib/logstash/outputs/gemfire.rb +103 -0
  205. data/lib/logstash/outputs/google_bigquery.rb +570 -0
  206. data/lib/logstash/outputs/google_cloud_storage.rb +431 -0
  207. data/lib/logstash/outputs/graphite.rb +143 -0
  208. data/lib/logstash/outputs/graphtastic.rb +185 -0
  209. data/lib/logstash/outputs/hipchat.rb +80 -0
  210. data/lib/logstash/outputs/http.rb +142 -0
  211. data/lib/logstash/outputs/irc.rb +80 -0
  212. data/lib/logstash/outputs/jira.rb +109 -0
  213. data/lib/logstash/outputs/juggernaut.rb +105 -0
  214. data/lib/logstash/outputs/librato.rb +146 -0
  215. data/lib/logstash/outputs/loggly.rb +93 -0
  216. data/lib/logstash/outputs/lumberjack.rb +51 -0
  217. data/lib/logstash/outputs/metriccatcher.rb +103 -0
  218. data/lib/logstash/outputs/mongodb.rb +81 -0
  219. data/lib/logstash/outputs/nagios.rb +119 -0
  220. data/lib/logstash/outputs/nagios_nsca.rb +123 -0
  221. data/lib/logstash/outputs/null.rb +18 -0
  222. data/lib/logstash/outputs/opentsdb.rb +101 -0
  223. data/lib/logstash/outputs/pagerduty.rb +79 -0
  224. data/lib/logstash/outputs/pipe.rb +132 -0
  225. data/lib/logstash/outputs/rabbitmq.rb +96 -0
  226. data/lib/logstash/outputs/rabbitmq/bunny.rb +135 -0
  227. data/lib/logstash/outputs/rabbitmq/hot_bunnies.rb +1 -0
  228. data/lib/logstash/outputs/rabbitmq/march_hare.rb +143 -0
  229. data/lib/logstash/outputs/redis.rb +245 -0
  230. data/lib/logstash/outputs/riak.rb +152 -0
  231. data/lib/logstash/outputs/riemann.rb +109 -0
  232. data/lib/logstash/outputs/s3.rb +356 -0
  233. data/lib/logstash/outputs/sns.rb +124 -0
  234. data/lib/logstash/outputs/solr_http.rb +78 -0
  235. data/lib/logstash/outputs/sqs.rb +141 -0
  236. data/lib/logstash/outputs/statsd.rb +116 -0
  237. data/lib/logstash/outputs/stdout.rb +53 -0
  238. data/lib/logstash/outputs/stomp.rb +67 -0
  239. data/lib/logstash/outputs/syslog.rb +145 -0
  240. data/lib/logstash/outputs/tcp.rb +145 -0
  241. data/lib/logstash/outputs/udp.rb +38 -0
  242. data/lib/logstash/outputs/websocket.rb +46 -0
  243. data/lib/logstash/outputs/websocket/app.rb +29 -0
  244. data/lib/logstash/outputs/websocket/pubsub.rb +45 -0
  245. data/lib/logstash/outputs/xmpp.rb +78 -0
  246. data/lib/logstash/outputs/zabbix.rb +108 -0
  247. data/lib/logstash/outputs/zeromq.rb +125 -0
  248. data/lib/logstash/pipeline.rb +286 -0
  249. data/lib/logstash/plugin.rb +150 -0
  250. data/lib/logstash/plugin_mixins/aws_config.rb +93 -0
  251. data/lib/logstash/program.rb +15 -0
  252. data/lib/logstash/runner.rb +238 -0
  253. data/lib/logstash/sized_queue.rb +8 -0
  254. data/lib/logstash/test.rb +183 -0
  255. data/lib/logstash/threadwatchdog.rb +37 -0
  256. data/lib/logstash/time_addon.rb +33 -0
  257. data/lib/logstash/util.rb +106 -0
  258. data/lib/logstash/util/buftok.rb +139 -0
  259. data/lib/logstash/util/charset.rb +39 -0
  260. data/lib/logstash/util/fieldreference.rb +50 -0
  261. data/lib/logstash/util/password.rb +25 -0
  262. data/lib/logstash/util/prctl.rb +11 -0
  263. data/lib/logstash/util/relp.rb +326 -0
  264. data/lib/logstash/util/require-helper.rb +18 -0
  265. data/lib/logstash/util/socket_peer.rb +7 -0
  266. data/lib/logstash/util/zenoss.rb +566 -0
  267. data/lib/logstash/util/zeromq.rb +47 -0
  268. data/lib/logstash/version.rb +6 -0
  269. data/locales/en.yml +170 -0
  270. data/logstash-event.gemspec +29 -0
  271. data/logstash.gemspec +128 -0
  272. data/patterns/firewalls +60 -0
  273. data/patterns/grok-patterns +91 -0
  274. data/patterns/haproxy +37 -0
  275. data/patterns/java +3 -0
  276. data/patterns/linux-syslog +14 -0
  277. data/patterns/mcollective +1 -0
  278. data/patterns/mcollective-patterns +4 -0
  279. data/patterns/nagios +108 -0
  280. data/patterns/postgresql +3 -0
  281. data/patterns/redis +3 -0
  282. data/patterns/ruby +2 -0
  283. data/pkg/build.sh +135 -0
  284. data/pkg/centos/after-install.sh +1 -0
  285. data/pkg/centos/before-install.sh +10 -0
  286. data/pkg/centos/before-remove.sh +11 -0
  287. data/pkg/centos/sysconfig +15 -0
  288. data/pkg/debian/after-install.sh +5 -0
  289. data/pkg/debian/before-install.sh +13 -0
  290. data/pkg/debian/before-remove.sh +13 -0
  291. data/pkg/debian/build.sh +34 -0
  292. data/pkg/debian/debian/README +6 -0
  293. data/pkg/debian/debian/changelog +17 -0
  294. data/pkg/debian/debian/compat +1 -0
  295. data/pkg/debian/debian/control +16 -0
  296. data/pkg/debian/debian/copyright +27 -0
  297. data/pkg/debian/debian/dirs +19 -0
  298. data/pkg/debian/debian/docs +0 -0
  299. data/pkg/debian/debian/logstash.default +39 -0
  300. data/pkg/debian/debian/logstash.init +201 -0
  301. data/pkg/debian/debian/logstash.install +1 -0
  302. data/pkg/debian/debian/logstash.logrotate +9 -0
  303. data/pkg/debian/debian/logstash.postinst +68 -0
  304. data/pkg/debian/debian/logstash.postrm +23 -0
  305. data/pkg/debian/debian/manpage.1.ex +59 -0
  306. data/pkg/debian/debian/preinst.ex +37 -0
  307. data/pkg/debian/debian/prerm.ex +40 -0
  308. data/pkg/debian/debian/release.conf +5 -0
  309. data/pkg/debian/debian/rules +80 -0
  310. data/pkg/debian/debian/watch.ex +22 -0
  311. data/pkg/logrotate.conf +8 -0
  312. data/pkg/logstash-web.default +41 -0
  313. data/pkg/logstash-web.sysv.debian +201 -0
  314. data/pkg/logstash-web.upstart.ubuntu +18 -0
  315. data/pkg/logstash.default +45 -0
  316. data/pkg/logstash.sysv.debian +202 -0
  317. data/pkg/logstash.sysv.redhat +158 -0
  318. data/pkg/logstash.upstart.ubuntu +20 -0
  319. data/pkg/rpm/SOURCES/logstash.conf +26 -0
  320. data/pkg/rpm/SOURCES/logstash.init +80 -0
  321. data/pkg/rpm/SOURCES/logstash.logrotate +8 -0
  322. data/pkg/rpm/SOURCES/logstash.sysconfig +3 -0
  323. data/pkg/rpm/SOURCES/logstash.wrapper +105 -0
  324. data/pkg/rpm/SPECS/logstash.spec +180 -0
  325. data/pkg/rpm/readme.md +4 -0
  326. data/pkg/ubuntu/after-install.sh +7 -0
  327. data/pkg/ubuntu/before-install.sh +12 -0
  328. data/pkg/ubuntu/before-remove.sh +13 -0
  329. data/pull_release_note.rb +25 -0
  330. data/require-analyze.rb +22 -0
  331. data/spec/README.md +14 -0
  332. data/spec/codecs/edn.rb +40 -0
  333. data/spec/codecs/edn_lines.rb +53 -0
  334. data/spec/codecs/graphite.rb +96 -0
  335. data/spec/codecs/json.rb +57 -0
  336. data/spec/codecs/json_lines.rb +51 -0
  337. data/spec/codecs/json_spooler.rb +43 -0
  338. data/spec/codecs/msgpack.rb +39 -0
  339. data/spec/codecs/multiline.rb +60 -0
  340. data/spec/codecs/oldlogstashjson.rb +55 -0
  341. data/spec/codecs/plain.rb +35 -0
  342. data/spec/codecs/spool.rb +35 -0
  343. data/spec/conditionals/test.rb +323 -0
  344. data/spec/config.rb +31 -0
  345. data/spec/event.rb +165 -0
  346. data/spec/examples/fail2ban.rb +28 -0
  347. data/spec/examples/graphite-input.rb +41 -0
  348. data/spec/examples/mysql-slow-query.rb +70 -0
  349. data/spec/examples/parse-apache-logs.rb +66 -0
  350. data/spec/examples/parse-haproxy-logs.rb +115 -0
  351. data/spec/examples/syslog.rb +48 -0
  352. data/spec/filters/alter.rb +96 -0
  353. data/spec/filters/anonymize.rb +189 -0
  354. data/spec/filters/checksum.rb +41 -0
  355. data/spec/filters/clone.rb +67 -0
  356. data/spec/filters/collate.rb +122 -0
  357. data/spec/filters/csv.rb +174 -0
  358. data/spec/filters/date.rb +285 -0
  359. data/spec/filters/date_performance.rb +31 -0
  360. data/spec/filters/dns.rb +159 -0
  361. data/spec/filters/drop.rb +19 -0
  362. data/spec/filters/elapsed.rb +294 -0
  363. data/spec/filters/environment.rb +43 -0
  364. data/spec/filters/geoip.rb +62 -0
  365. data/spec/filters/grep.rb +342 -0
  366. data/spec/filters/grok.rb +473 -0
  367. data/spec/filters/grok/timeout2.rb +56 -0
  368. data/spec/filters/grok/timeouts.rb +39 -0
  369. data/spec/filters/i18n.rb +25 -0
  370. data/spec/filters/json.rb +72 -0
  371. data/spec/filters/json_encode.rb +37 -0
  372. data/spec/filters/kv.rb +403 -0
  373. data/spec/filters/metrics.rb +212 -0
  374. data/spec/filters/multiline.rb +119 -0
  375. data/spec/filters/mutate.rb +180 -0
  376. data/spec/filters/noop.rb +221 -0
  377. data/spec/filters/prune.rb +441 -0
  378. data/spec/filters/punct.rb +18 -0
  379. data/spec/filters/railsparallelrequest.rb +112 -0
  380. data/spec/filters/range.rb +169 -0
  381. data/spec/filters/split.rb +58 -0
  382. data/spec/filters/translate.rb +70 -0
  383. data/spec/filters/unique.rb +25 -0
  384. data/spec/filters/useragent.rb +42 -0
  385. data/spec/filters/xml.rb +157 -0
  386. data/spec/inputs/file.rb +107 -0
  387. data/spec/inputs/gelf.rb +52 -0
  388. data/spec/inputs/generator.rb +30 -0
  389. data/spec/inputs/imap.rb +60 -0
  390. data/spec/inputs/redis.rb +63 -0
  391. data/spec/inputs/relp.rb +70 -0
  392. data/spec/inputs/tcp.rb +101 -0
  393. data/spec/jar.rb +21 -0
  394. data/spec/outputs/csv.rb +266 -0
  395. data/spec/outputs/elasticsearch.rb +161 -0
  396. data/spec/outputs/elasticsearch_http.rb +240 -0
  397. data/spec/outputs/email.rb +173 -0
  398. data/spec/outputs/file.rb +82 -0
  399. data/spec/outputs/graphite.rb +236 -0
  400. data/spec/outputs/redis.rb +127 -0
  401. data/spec/speed.rb +20 -0
  402. data/spec/sqlite-test.rb +81 -0
  403. data/spec/support/LOGSTASH-733.rb +21 -0
  404. data/spec/support/LOGSTASH-820.rb +25 -0
  405. data/spec/support/akamai-grok.rb +26 -0
  406. data/spec/support/date-http.rb +17 -0
  407. data/spec/support/postwait1.rb +26 -0
  408. data/spec/support/pull375.rb +21 -0
  409. data/spec/test_utils.rb +125 -0
  410. data/spec/util/fieldeval_spec.rb +44 -0
  411. data/test/jenkins/config.xml.erb +74 -0
  412. data/test/jenkins/create-jobs.rb +23 -0
  413. data/test/jenkins/generatorjob.config.xml +66 -0
  414. data/tools/Gemfile +14 -0
  415. data/tools/Gemfile.jruby-1.9.lock +322 -0
  416. data/tools/Gemfile.rbx-2.1.lock +516 -0
  417. data/tools/Gemfile.ruby-1.9.1.lock +310 -0
  418. data/tools/Gemfile.ruby-2.0.0.lock +310 -0
  419. metadata +629 -0
@@ -0,0 +1,37 @@
1
+ #!/bin/sh
2
+ # preinst script for logstash
3
+ #
4
+ # see: dh_installdeb(1)
5
+
6
+ set -e
7
+
8
+ # summary of how this script can be called:
9
+ # * <new-preinst> `install'
10
+ # * <new-preinst> `install' <old-version>
11
+ # * <new-preinst> `upgrade' <old-version>
12
+ # * <old-preinst> `abort-upgrade' <new-version>
13
+ # for details, see http://www.debian.org/doc/debian-policy/ or
14
+ # the debian-policy package
15
+
16
+
17
+ case "$1" in
18
+ install|upgrade)
19
+ ;;
20
+
21
+ abort-upgrade)
22
+ ;;
23
+
24
+ *)
25
+ echo "preinst called with unknown argument \`$1'" >&2
26
+ exit 1
27
+ ;;
28
+ esac
29
+
30
+ # dh_installdeb will replace this with shell code automatically
31
+ # generated by other debhelper scripts.
32
+
33
+ #DEBHELPER#
34
+
35
+ exit 0
36
+
37
+
@@ -0,0 +1,40 @@
1
+ #!/bin/sh
2
+ # prerm script for logstash
3
+ #
4
+ # see: dh_installdeb(1)
5
+
6
+ set -e
7
+
8
+ # summary of how this script can be called:
9
+ # * <prerm> `remove'
10
+ # * <old-prerm> `upgrade' <new-version>
11
+ # * <new-prerm> `failed-upgrade' <old-version>
12
+ # * <conflictor's-prerm> `remove' `in-favour' <package> <new-version>
13
+ # * <deconfigured's-prerm> `deconfigure' `in-favour'
14
+ # <package-being-installed> <version> `removing'
15
+ # <conflicting-package> <version>
16
+ # for details, see http://www.debian.org/doc/debian-policy/ or
17
+ # the debian-policy package
18
+
19
+
20
+ case "$1" in
21
+ remove|upgrade|deconfigure)
22
+ ;;
23
+
24
+ failed-upgrade)
25
+ ;;
26
+
27
+ *)
28
+ echo "prerm called with unknown argument \`$1'" >&2
29
+ exit 1
30
+ ;;
31
+ esac
32
+
33
+ # dh_installdeb will replace this with shell code automatically
34
+ # generated by other debhelper scripts.
35
+
36
+ #DEBHELPER#
37
+
38
+ exit 0
39
+
40
+
@@ -0,0 +1,5 @@
1
+ // Used to drive apt-ftparchive
2
+ APT::FTPArchive::Release::Origin "logstash.net";
3
+ APT::FTPArchive::Release::Suite "binary";
4
+ APT::FTPArchive::Release::Architectures "all";
5
+
@@ -0,0 +1,80 @@
1
+ #!/usr/bin/make -f
2
+ # -*- makefile -*-
3
+
4
+ # Uncomment this to turn on verbose mode.
5
+ #export DH_VERBOSE=1
6
+
7
+
8
+ configure: configure-stamp
9
+ configure-stamp:
10
+ dh_testdir
11
+ # Add here commands to configure the package.
12
+
13
+ touch configure-stamp
14
+
15
+
16
+ build: build-stamp
17
+
18
+ build-stamp: configure-stamp
19
+ dh_testdir
20
+
21
+ # Add here commands to compile the package.
22
+
23
+ touch $@
24
+
25
+ clean:
26
+ dh_testdir
27
+ dh_testroot
28
+ rm -f build-stamp configure-stamp
29
+
30
+ # Add here commands to clean up after the build process.
31
+
32
+ dh_clean
33
+
34
+ install: build
35
+ dh_testdir
36
+ dh_testroot
37
+ dh_clean -k
38
+ dh_installdirs
39
+ dh_install
40
+
41
+ # Add here commands to install the package into debian/jenkins.
42
+
43
+ # Moved creation of dirs to dirs template to be invoked by dh_installdirs
44
+
45
+ # Build architecture-independent files here.
46
+ binary-indep: build install
47
+ # We have nothing to do by default.
48
+
49
+ # Build architecture-dependent files here.
50
+ binary-arch: build install
51
+ dh_testdir
52
+ dh_testroot
53
+ dh_installchangelogs
54
+ dh_installdocs
55
+ dh_installexamples
56
+ # dh_installmenu
57
+ # dh_installdebconf
58
+ dh_installlogrotate
59
+ # dh_installemacsen
60
+ # dh_installpam
61
+ # dh_installmime
62
+ # dh_python
63
+ dh_installinit
64
+ # dh_installcron
65
+ # dh_installinfo
66
+ dh_installman
67
+ dh_link
68
+ dh_strip
69
+ dh_compress
70
+ dh_fixperms
71
+ # dh_perl
72
+ # dh_makeshlibs
73
+ dh_installdeb
74
+ dh_shlibdeps
75
+ dh_gencontrol
76
+ dh_md5sums
77
+ dh_builddeb
78
+
79
+ binary: binary-indep binary-arch
80
+ .PHONY: build clean binary-indep binary-arch binary install configure
@@ -0,0 +1,22 @@
1
+ # Example watch control file for uscan
2
+ # Rename this file to "watch" and then you can run the "uscan" command
3
+ # to check for upstream updates and more.
4
+ # See uscan(1) for format
5
+
6
+ # Compulsory line, this is a version 3 file
7
+ version=3
8
+
9
+ # Uncomment to examine a Webpage
10
+ # <Webpage URL> <string match>
11
+ #http://www.example.com/downloads.php jenkins-(.*)\.tar\.gz
12
+
13
+ # Uncomment to examine a Webserver directory
14
+ #http://www.example.com/pub/jenkins-(.*)\.tar\.gz
15
+
16
+ # Uncommment to examine a FTP server
17
+ #ftp://ftp.example.com/pub/jenkins-(.*)\.tar\.gz debian uupdate
18
+
19
+ # Uncomment to find new files on sourceforge, for debscripts >= 2.9
20
+ # http://sf.net/jenkins/jenkins-(.*)\.tar\.gz
21
+
22
+
@@ -0,0 +1,8 @@
1
+ /var/log/logstash/*.log {
2
+ daily
3
+ rotate 7
4
+ copytruncate
5
+ compress
6
+ missingok
7
+ notifempty
8
+ }
@@ -0,0 +1,41 @@
1
+ # defaults for logstash
2
+
3
+ # Start logstash on boot?
4
+ START=no
5
+
6
+ # pulled in from the init script; makes things easier.
7
+ NAME=logstash-web
8
+
9
+ # location of java
10
+ JAVA=/usr/bin/java
11
+
12
+ # arguments to pass to java
13
+ LS_JAVA_OPTS="-Xmx256m -Djava.io.tmpdir=/var/lib/logstash/"
14
+
15
+ PIDFILE=/var/run/logstash-web.pid
16
+
17
+ # user id to be invoked as
18
+ LS_USER=logstash
19
+
20
+ # location of the logstas jar file
21
+ LS_JAR=/opt/logstash/logstash.jar
22
+
23
+ # logstash home location
24
+ LS_HOME=/var/lib/logstash
25
+
26
+ # logstash log directory
27
+ LOG_DIR=/var/log/logstash
28
+
29
+ # logstash log file
30
+ LOG_FILE=$LOG_DIR/$NAME.log
31
+
32
+ # logstash configuration directory
33
+ CONF_DIR=/etc/logstash/conf.d
34
+
35
+ # Open file limit
36
+ OPEN_FILES=2048
37
+
38
+ # Nice level
39
+ NICE=19
40
+
41
+ HOME=/var/lib/logstash
@@ -0,0 +1,201 @@
1
+ #!/bin/bash
2
+ #
3
+ # /etc/init.d/logstash -- startup script for LogStash.
4
+ #
5
+ ### BEGIN INIT INFO
6
+ # Provides: logstash-web
7
+ # Required-Start: $all
8
+ # Required-Stop: $all
9
+ # Default-Start: 2 3 4 5
10
+ # Default-Stop: 0 1 6
11
+ # Short-Description: Starts the LogStash web server
12
+ # Description: Starts logstash-web using start-stop-daemon
13
+ ### END INIT INFO
14
+
15
+ set -e
16
+
17
+ PATH=/bin:/usr/bin:/sbin:/usr/sbin
18
+ NAME=logstash-web
19
+ DESC="Logstash Web Server"
20
+ DEFAULT=/etc/default/$NAME
21
+
22
+ if [ `id -u` -ne 0 ]; then
23
+ echo "You need root privileges to run this script"
24
+ exit 1
25
+ fi
26
+
27
+ . /lib/lsb/init-functions
28
+
29
+ if [ -r /etc/default/rcS ]; then
30
+ . /etc/default/rcS
31
+ fi
32
+
33
+ # The following variables can be overwritten in $DEFAULT
34
+
35
+ # Run logstash as this user ID and group ID
36
+ LS_USER=logstash
37
+ LS_GROUP=logstash
38
+
39
+ JAVA=/usr/bin/java
40
+
41
+ # Directory where the logstash all in one jar lives
42
+ LS_HOME=/var/lib/logstash
43
+
44
+ # Additional Java OPTS
45
+ LS_JAVA_OPTS=" -Djava.io.tmpdir=/var/logstash/"
46
+
47
+ # logstash log directory
48
+ LOG_DIR=/var/log/logstash
49
+
50
+ # logstash configuration directory
51
+ CONF_DIR=/etc/logstash/conf.d
52
+
53
+ # logstash log file
54
+ LOG_FILE=$LOG_DIR/$NAME.log
55
+
56
+ # Open File limit
57
+ OPEN_FILES=2048
58
+
59
+
60
+
61
+ # Nice level
62
+ NICE=19
63
+
64
+ # End of variables that can be overwritten in $DEFAULT
65
+
66
+ # overwrite settings from default file
67
+ if [ -f "$DEFAULT" ]; then
68
+ . "$DEFAULT"
69
+ fi
70
+
71
+ # Define other required variables
72
+ PID_FILE=/var/run/$NAME.pid
73
+ DAEMON=$LS_JAR
74
+ DAEMON_OPTS="web"
75
+
76
+ is_true() {
77
+ if [ "x$1" = "xtrue" -o "x$1" = "xyes" -o "x$1" = "x1" ] ; then
78
+ return 0
79
+ else
80
+ return 1
81
+ fi
82
+ }
83
+
84
+ # Check DAEMON exists
85
+ if ! test -e $DAEMON; then
86
+ log_failure_msg "Daemon $DAEMON doesn't exist"
87
+ exit 1
88
+ fi
89
+
90
+ case "$1" in
91
+ start)
92
+ if ! is_true "$START" ; then
93
+ echo "logstash not configured to start, please edit /etc/default/logstash to enable"
94
+ exit 0
95
+ fi
96
+
97
+ if [ -z "$JAVA" ]; then
98
+ log_failure_msg "no JDK found - $JAVA"
99
+ exit 1
100
+ fi
101
+
102
+ # Check if a config file exists
103
+ if ! test -e $CONF_DIR/*.conf; then
104
+ log_failure_msg "There aren't any configuration files in $CONF_DIR"
105
+ exit 1
106
+ fi
107
+
108
+ log_daemon_msg "Starting $DESC"
109
+
110
+ if start-stop-daemon --test --start --pidfile "$PID_FILE" \
111
+ --user "$LS_USER" --exec "$JAVA" \
112
+ >/dev/null; then
113
+ # Prepare environment
114
+ ulimit -n $OPEN_FILES
115
+
116
+ # Start Daemon
117
+ start-stop-daemon --start -b --user "$LS_USER" -c "$LS_USER":"$LS_GROUP" \
118
+ -d "$LS_HOME" --pidfile "$PID_FILE" --make-pidfile \
119
+ --exec "$JAVA" -- $LS_JAVA_OPTS -jar $DAEMON $DAEMON_OPTS
120
+
121
+ sleep 1
122
+
123
+ if start-stop-daemon --test --start --pidfile "$PID_FILE" \
124
+ --user "$LS_USER" --exec "$JAVA" \
125
+ >/dev/null; then
126
+
127
+ if [ -f "$PID_FILE" ]; then
128
+ rm -f "$PID_FILE"
129
+ fi
130
+
131
+ log_end_msg 1
132
+ else
133
+ log_end_msg 0
134
+ fi
135
+ else
136
+ log_progress_msg "(already running)"
137
+ log_end_msg 0
138
+ fi
139
+ ;;
140
+ stop)
141
+ log_daemon_msg "Stopping $DESC"
142
+
143
+ set +e
144
+
145
+ if [ -f "$PID_FILE" ]; then
146
+ start-stop-daemon --stop --pidfile "$PID_FILE" \
147
+ --user "$LS_USER" \
148
+ --retry=TERM/20/KILL/5 >/dev/null
149
+
150
+ if [ $? -eq 1 ]; then
151
+ log_progress_msg "$DESC is not running but pid file exists, cleaning up"
152
+ elif [ $? -eq 3 ]; then
153
+ PID="`cat $PID_FILE`"
154
+ log_failure_msg "Failed to stop $DESC (pid $PID)"
155
+ exit 1
156
+ fi
157
+
158
+ rm -f "$PID_FILE"
159
+ else
160
+ log_progress_msg "(not running)"
161
+ fi
162
+
163
+ log_end_msg 0
164
+ set -e
165
+ ;;
166
+ status)
167
+ set +e
168
+
169
+ start-stop-daemon --test --start --pidfile "$PID_FILE" \
170
+ --user "$LS_USER" --exec "$JAVA" \
171
+ >/dev/null 2>&1
172
+
173
+ if [ "$?" = "0" ]; then
174
+ if [ -f "$PID_FILE" ]; then
175
+ log_success_msg "$DESC is not running, but pid file exists."
176
+ exit 1
177
+ else
178
+ log_success_msg "$DESC is not running."
179
+ exit 3
180
+ fi
181
+ else
182
+ log_success_msg "$DESC is running with pid `cat $PID_FILE`"
183
+ fi
184
+
185
+ set -e
186
+ ;;
187
+ restart|force-reload)
188
+ if [ -f "$PID_FILE" ]; then
189
+ $0 stop
190
+ sleep 1
191
+ fi
192
+
193
+ $0 start
194
+ ;;
195
+ *)
196
+ log_success_msg "Usage: $0 {start|stop|restart|force-reload|status}"
197
+ exit 1
198
+ ;;
199
+ esac
200
+
201
+ exit 0
@@ -0,0 +1,18 @@
1
+ # logstash-web - web server
2
+ #
3
+
4
+ description "logstash-web web server"
5
+
6
+ start on virtual-filesystems
7
+ stop on runlevel [06]
8
+
9
+ # Respawn it if the process exits
10
+ respawn
11
+
12
+ setuid logstash
13
+ setgid logstash
14
+
15
+ # Change into a writable directory
16
+ chdir /var/lib/logstash
17
+ console log
18
+ exec /usr/bin/java -jar /opt/logstash/logstash.jar web