Commit graph

349 commits

Author SHA1 Message Date
Armin
12264efad2 #7329 invoker script for convert jar
Fixes #7335
2017-06-07 07:17:53 +00:00
Suyog Rao
7733dd0f86 Add DLQ to default plugins (#7342) 2017-06-06 11:52:12 -07:00
Aaron Mildenstein
f443dae5fe Merge feature/modules into master (#7284)
* My changes (#7218)

* First upstream PR commit (#7172)

No tests yet.  Just for code review for now

* move all inner classes to their own folder + client and importer

* Fixes and tests (#7228)

Add tests for the `LogStash::Modules:CLIParser` class in `cli_parser.rb`
Fix a typo in `cli_parser.rb` (`uparsed` vs `unparsed`)
Fix a bad variable name found by testing in `cli_parser.rb` and update the error message accordingly in `en.yml`

* Remove fb_modules (#7280)

* fixes to import index-pattern & var updates & savedsearch capability (#7283)

* fixes to import index-pattern & var updates & savedsearch capability

fixes to import index-pattern & var updates

add savedsearch capability

* minimise merge conflicts with PR End-to-End test with filebeat apache2

* End-to-End test with filebeat apache2 (#7279)

This is a first run, but data flows from filebeat through Elasticsearch.

Template uploads from `$LS_HOME/modules/MODULENAME/configuration/elasticsearch/MODULENAME.json`

Specifying `--modules filebeat` from the command-line, with `-M "filebeat.var.elasticsearch.output.host=localhost:9200"`

Some of the saved searches don't get uploaded. @guyboertje is on this already.

The logstash configuration needs tweaking to allow receiving both access logs _and_ error logs.  The dashboards and visualizations all seem to expect the presence of both.

Set default to `localhost` in `elasticsearch_client.rb`

Changed command-line variable parsing to allow for a variable with only `modulename.key.subkey=value`, and updated the error message accordingly.

First draft of the filebeat module, as extracted from filebeat 5.4.0

* Add documentation for Modules

This is specific to the Master branch.  Multiple modules will not be supported in 5.5.

* Add READMEs and prune post-code comments

* Add comment regarding the variable name `modul`

Also, fix the default username for the Elasticsearch output in Logstash.  The default x-pack credentials are `elastic:changeme` rather than `elasticsearch:changeme`

* add cef module files (#7292)

* fixes from reviews of PR #7284
2017-06-05 18:49:35 +01:00
Wainer dos Santos Moschetta
4163af5bea Add test case for FileLockFactory
This change introduce a test for cross-process/jvm file locking
using the FileLockFactory class. It uses a client program that
will lock a file aftwards the test case proceed.

Fixes #6610

Fixes #7117
2017-05-24 02:20:36 +00:00
Andrew Cholakian
b595b54362 Move rake test:* tasks to all use bin/rspec.
This eliminates the differences in behavior between bin/rspec and rake
test:*

Fixes #7140
2017-05-17 19:53:53 +00:00
Andrew Cholakian
558e3e9575 Make gradle assemble the default compile:all command.
This well help catch javadoc errors during dev + build

Fixes #7108
2017-05-15 21:36:25 +00:00
Andrew Cholakian
1187d03eb7 Run gradle tests in 'info' mode to log failures
Fixes #7110
2017-05-15 21:18:58 +00:00
Armin
4994bf3bc5 #7043 run gradle tests in core specs and document running gradle tests only in readme
Fixes #7099
2017-05-15 15:58:45 +00:00
Pier-Hugues Pellerin
4c3a3ad526 Normalize the Alpha version of Logstash
If you use 6.0.0-alpha1, rubygems will change it to 6.0.0.pre.alpha1,
this commit changes the behavior to normalize the version before saving
it to disk.

Fixes #7008
2017-05-04 17:16:55 +00:00
Colin Surprenant
e732255edc add acked_queue concurrent stress spec
introduce rake test:core-fast and rake test:core-slow

remove custom rspec config
2017-04-21 14:37:49 -06:00
Andrew Cholakian
ab1cfe8cf7 Make pipeline and agent available through execution context
Fixes #6920
2017-04-18 20:04:38 +00:00
Pier-Hugues Pellerin
a7187fbe8f Update the rake version:sync to ignore logstash-core-event
With the gem refactoring we don't build the logstash-core-event anymore

Fixes #6911
2017-04-12 14:08:40 +00:00
Andrew Cholakian
76711a4785 LIR UI (Read Only) (#6241)
* Read-only Java IR
* Consistent ID generation as opposed to UUIDs

Fixes #6708
2017-04-03 08:49:00 -04:00
Josh Soref
a06dc211ff Spelling fixes (#6806)
Spelling fixes across the board.
2017-03-29 19:33:26 -07:00
Tal Levy
9974df427d remove old legacy logstash-core-event (#6783)
and migrate spec tests to core
2017-03-02 10:55:30 -08:00
Tal Levy
2e3b06b812 migrate core-queue-jruby into logstash-core (#6782) 2017-03-02 10:12:03 -08:00
Tal Levy
6fb8096a54 migrate logstash-core-event-java to logstash-core (#6760) 2017-03-01 15:31:17 -08:00
Tal Levy
bd8b05d676 unify gradle projects (#6725) 2017-02-27 13:58:01 -08:00
Joao Duarte
8741568f4e make dissect filter a default plugin
Fixes #6729 Fixes #6629
2017-02-18 11:30:39 -08:00
Jordan Sissel
ef272cfe4b Pin minitar. Works around https://github.com/halostatue/minitar/issues/23
Fixes #6659
2017-02-07 19:40:00 -05:00
Colin Surprenant
d79e3730fe exclusive file locking class and tests
use new bin/ruby and bundler without :development

refactor to DRY and use expected exception

added original Apache 2.0 license and some cosmetics

exclude bin/lock from packaging

rename variables
2017-01-31 13:47:07 -05:00
Suyog Rao
8c4d2ab5d3 Generate notice file during artifact build (#6538)
* Generate notice file during artifact build

Adjust our existing NOTICE.txt file to be built every time. This ensures
we collect LICENSE and NOTICE information of all bundled Logstash and non-Logstash
dependencies.

Changes:

* if NOTICE file is present in gems, include that text in our own NOTICE.TXT file.
* we also need to include the whole copyright block in NOTICE (meaning copyright + license)
2017-01-16 10:09:02 -08:00
Suyog Rao
733a546e9e Build queue along with other gems
Fixes #6473
2017-01-03 14:03:59 -05:00
Pier-Hugues Pellerin
80fcadd931 Allow rake version:set to update the logstash-core-queue-jruby gem
Fixes #6380
2016-12-08 14:29:28 -05:00
Jordan Sissel
74e32a6b97 Add comment referring to another research effort
Fixes #6276
2016-12-06 13:17:36 -05:00
Pier-Hugues Pellerin
bf2d670d2a Logstash-docgen tool v2
**Motivation**: We have decided to rewrite the documentation generator to add more features
to our documentation and to fix some outstanding bugs.

This PR addresses the following problem:
- Hard to add new features to the code base.
- The code was tied with Logstash.
- No easy way to publish the doc for a single plugin
- The plugin author was not able to test their documentation changes
- The reported errors were hard to understand.
- No easy way to automate it.
- the minimal requirement on base classes.

Fixes #5720
2016-11-30 19:57:40 -05:00
Suyog Rao
270c90f8c6 Add cef codec to default plugins
Fixes #6270
2016-11-17 13:26:47 -05:00
Colin Surprenant
761f9f1bc9 merge feature/java_persistence into master 2016-11-01 17:13:23 -04:00
Suyog Rao
e7a393e6f8 Remove logrotate completely
Fixes #5903
2016-09-13 19:39:27 -04:00
Suyog Rao
3f2123ae9f use the right props file
Fixes #5903
2016-09-13 19:39:27 -04:00
Suyog Rao
c01a3df235 add package specific log4j2 logging props
Fixes #5894

Fixes #5903
2016-09-13 19:39:26 -04:00
Suyog Rao
65a8676a86 Bump master to 6.0.0-alpha1 (#5880)
* Bump master to 6.0.0-alpha1
2016-09-08 08:33:27 -07:00
Tal Levy
1b2f7a7668 Migrate Logstash to Log4j2 Logging (#5651)
Migrate to use Log4j2 for Logstash logging
2016-08-25 10:30:22 -07:00
Pier-Hugues Pellerin
22c857556f Remove spec/integration
With the addition of the qa acceptance test suite we have decide that we
don't need to maintain this suite also since the acceptance test are
running really similar test.

Fixes: #5744

Fixes #5760
2016-08-14 15:09:29 -04:00
Pere Urbón
48bd2e344d add bin/rspec and bin/rspec.bat to the packaging exclude list (#5667) 2016-07-26 13:12:13 -07:00
Pere Urbon-Bayes
a0db616fca remove jms from skip list
Fixes #5555
2016-06-28 04:59:26 -04:00
Joao Duarte
c0c9a3babc add data.path setting
Fixes #5528
2016-06-24 07:32:25 -04:00
Joao Duarte
645eee4a70 avoid using duplicate logstash.yml for rpm/deb
Fixes #5537
2016-06-22 14:10:18 -04:00
Joao Duarte
a859bd4a3f add single command release task and other release support tooling
Purpose:

* manage releases through a minimum number of rake tasks
* simplify building of snapshot builds
* create staged artifacts, candidates for releases, that required no changes to become releases
* this means the snapshot release process will not involve publishing gems, therefore:
* the gem artifacts should only be published to rubygems as a final artifact, at the time of GA

Changes:

* release artifacts no longer depend on gems of core components
* all core components are used locally AS-IS to minimize code changes between snapshot, RC and GA
* `versions.yml` describes the versions of all logstash parts and package
  * `rake version:set[version]` manage the yaml file and push the changes to the gemspecs/version.rb files
  * `rake version:set_plugin_api[version]` manage the yaml file and push the changes to the gemspecs/version.rb files
  * `rake artifact:all` generates SNAPSHOT artifacts: tar.gz, zip, rpm, deb
  * `RELEASE=1 rake artifact:all` creates release candidate artifacts + 4 gems: logstash-core, logstash-core-event, logstash-core-event-java and logstash-core-plugin-api

implements #5416 and #5414

Fixes #5460
2016-06-20 04:23:48 -04:00
Pier-Hugues Pellerin
f74e339e77 Allow to run acceptance test with the local logstash
This change introduce a new command ci/ci_acceptance which is
responsable of building the packages, bootstraping the acceptance test
environment, launching the VMs and running the tests.

You can use the following command to target specific platform.

```
ci/ci_acceptance.sh all
ci/ci_acceptance.sh centos
ci/ci_acceptance.sh debian
```

This PR also add a new rake task to build all the artifacts in a single
run called rake artifact:all it make sure we only install the plugin
only once and make the build process faster.

Fixes #5350
2016-06-02 14:37:15 +00:00
Aaron Mildenstein
e40ecbb6b8 Update existing packaging to use /usr/lib/logstash
Update after-install scripts

Use /usr/lib/logstash instead of /opt/logstash

More revisions.

Using `/usr/share/logstash` instead of `/usr/lib/logstash`

Track these new files

More work in progress.

Proper arg parsing obtained

WIP: Use jvm.options like ES

Remove facter dependency

Due to an update from @jordansissel on pleaserun, facter is no longer necessary

Revert Gemfile to proper version

Latest work in progress.

I added a simple test to logstash.lib.sh to catch empty strings in java options.

Added `startup.options`, and touched up `jvm.options`

Edited the package scripts to make things play nice with new paths.

Tweaked `system-install` to allow users to provide their own `startup.options` file.

Patch up merge failure

Changes to work with the new logstash.yml

Add fpm dependency (build fails without it)

Fix missing gems in Gemfile

Don't know how these got lost

Use /etc/logstash for configuration in packages

Update the instructions/documentation for...

...startup.options

Merging proposed changes

Remove mustache and clamp

They're covered by pleaserun anyway

Prune config dir from /usr/share/logstash...

...but only when using RPM/DEB packages

Fixes #5341
2016-05-25 17:25:26 +00:00
Joao Duarte
7783f76a4c introduce yaml settings file and cli long switches
* by default lives in LOGSTASH_HOME/config/logstash.yml
* location can be changed by $LS_SETTINGS_DIR or --path.settings
* overrides defaults of LogStash::Environment, BUT
* CLI flags override the yaml file
* several breaking changes to cli flag names (see config/logstash.yml)
* setting values are now type checked (see Setting and Settings classes)

Fixes #5313
2016-05-19 18:15:12 +00:00
Suyog Rao
d94bae6a40 Remove java7 from rakelib
Fixes #5298
2016-05-13 22:29:29 +00:00
Suyog Rao
33771c1a64 Remove more plugins, add back netflow
Fixes #5254
2016-05-13 18:04:03 +00:00
Suyog Rao
96c09ea718 Update default plugins for 5.0
5.0 is a chance for us to review and remove any plugins that we don't have to bundle by default. These plugins are still supported and maintained, but the default package should only contain most popular, most used plugins.

Removed plugins:

logstash-filter-anonymize: Replaced with newer logstash-filter-fingerprint
logstash-input-zeromq/output: Not a lot of users. Most users seem to prefer rabbitmq, redis, kafka as broker

Please comment if you'd like to remove more/less

Fixes #5254
2016-05-13 18:04:03 +00:00
Pere Urbon-Bayes
a546bdc874 move micro benchmarks and the check pull changelog tool inside the tools folder
Fixes #5268
2016-05-12 06:56:25 +00:00
Pere Urbon-Bayes
bf12902496 refactor integration test to be inside the specs directory and not in the main level
Fixes #5268
2016-05-12 06:56:24 +00:00
Pier-Hugues Pellerin
779ee4abbe Remove the architecture in the RPM and Debian artifacts
Logstash will now generate theses filenames instead:

```
logstash-5.0.0.rpm
logstash-5.0.0.deb
```
Fixes #5249

Fixes #5262
2016-05-09 19:21:57 +00:00
Pier-Hugues Pellerin
3d875c8f70 Remove oldlogstashjson from the default plugin list
This plugins was used to migrate from logstash json schema 0 to 1.

Fixes #5245
2016-05-05 17:18:28 +00:00
Colin Surprenant
ccefeaeb84 add --preserve option to plugin install
add missing overwrite method and preserve @gems_by_name when updating

log options preservation

discards no constrains constrains

rewording
2016-04-29 16:10:11 -04:00