Commit graph

10886 commits

Author SHA1 Message Date
Mashhur
07b663561c
Snyk scans Logstash container vulnerabilities. (#15117)
* Snyk scans Logstash container vulnerabilities.

* Exclude integ test and tools when Snyk scanning.

* Remote repo url fix for main branch.

* Update .buildkite/scripts/snyk/report.sh

Simplify the logic to retrieve the version from `versions.yml`

Co-authored-by: kaisecheng <69120390+kaisecheng@users.noreply.github.com>

* Add backstage definition for Snyk Report pipeline.

---------

Co-authored-by: kaisecheng <69120390+kaisecheng@users.noreply.github.com>
2023-07-12 14:54:03 -07:00
Andres Rodriguez
c2bbed8266
Add initial PQ sizing doc (#15033)
Add storage sizing guidance for Persistent Queues.

Co-authored-by: Karen Metts <karen.metts@elastic.co>
Co-authored-by: Joao Duarte <joao@elastic.co>
2023-07-12 17:45:49 -04:00
Edmo Vamerlatti Costa
7c472b4498
Updated puma gem from 5.6 to 6.3 (#15158)
This commit updates the puma gem from version 5 to the latest version 6.3.
A few breaking changes were introduced in Puma 6.0.0, which required some refactoring on the Logstash side, especially to adapt it to the "Extracted LogWriter from Events #2798" changes.
Before this PR, all the logs generated by Puma were using the debug level, even the ones that were actually errors and needed attention/action from the users. This commit also changes the log level as following:
error(...): changed from debug to error
unknown_error(..): changed from debug to error
2023-07-12 17:46:34 +02:00
Andres Rodriguez
0092a82a93
Bundle ESF forwarder (#15126) 2023-07-10 18:10:52 -04:00
Edmo Vamerlatti Costa
2adf488164
[Doc] Add monitoring/management SSL regression note on release 8.8.0 (#15090) 2023-07-10 16:14:22 +02:00
Rob Bavey
902b386413
Remove license header from settings.xml template (#15131)
When using a proxy with the plugin manager, this template is written to `~/.m2/settings.xml`. The
license header is also copied, which generates invalid XML which maven cannot parse.
2023-06-30 13:39:21 -04:00
Rob Bavey
9f14c649ff
Update released versions (#15129) 2023-06-30 13:37:36 -04:00
Rob Bavey
2176eb603a
Forward port Release notes for 8.8.2 (#15116) (#15132)
* Update release notes for 8.8.2

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
Co-authored-by: Karen Metts <35154725+karenzone@users.noreply.github.com>
2023-06-30 12:41:08 -04:00
João Duarte
1d1fa7a471
update commons-io commons-compress jrjackson databind (#15125)
* update commons-io to 2.13.0 and commons-compress to 1.23.0

* update databind and jackson
2023-06-29 09:02:32 +02:00
João Duarte
98c3d30ca8
Remove custom bundler (#15066)
* reintroduce bundler patches for bundler < 2.4
2023-06-29 08:59:54 +02:00
João Duarte
a8a5442e58
Update catalog-info.yaml 2023-06-28 16:58:41 +02:00
João Duarte
1022a8f63a
Update serverless_integration_pipeline.yml to invoke es output test 2023-06-28 14:58:24 +02:00
João Duarte
9f0e820b86
Update catalog-info.yaml to use core_serverless_test on serverless test 2023-06-28 14:56:39 +02:00
João Duarte
0a35754392
Delete serverless_pipeline.yml 2023-06-28 13:37:33 +02:00
Andrea Selva
26d1c7ccdb
Update to JRuby 9.4 (#14861)
Set of changes to make Logstash compatible to JRuby 9.4.
Bundle JRuby 9.4.3.0

- Redefine space token in `LSCL`  and `grammar` treetop from `_` which would generated methods in the form `def _0` (deprecated since `2.7`) to `sc`.
- `I18n.t` method doesn't accept hash as second argument
- `URI.encode` has been replaced with same functionality with `URI::Parser.new.escape`
- `YAML.load` needs explicit `fallback: false` to return false when the yaml string is empty (or contains only comments)
- JRuby's  `JavaClass` has been removed, now it can use `java.lang.Class` directly
- explicitly require gem `thwait` to satisfy `require "thwait"` (In `Gemfile.template` and `logstash-core/logstash-core.gemspec`)
- fix not args `clone` to be `def clone(*args)`
- fix `Enumeration.each_slice` which from `Ruby 3.1` is [chainable](https://rubyreferences.github.io/rubychanges/3.1.html#enumerableeach_cons-and-each_slice-return-a-receiver) and doesn't return `nil`. JRuby fixed in https://github.com/jruby/jruby/issues/7015
- Expanded `Down.download` arguments map ca16bbed3c302006967413eb9d3862f2da81f7ae
- Avoid to pass `nil` in the list of couples used in `Hash[ <list of couples> ]` which from Ruby `3.0` generates an `ArgumentError`
- Removed space not allowed between method name and parentheses `initialize (` is forbidden. 29b607dcdef98f81a73ad171639fd13aaa65e243
- With [Ruby 2.7 the `Kernel#open`](https://rubyreferences.github.io/rubychanges/2.7.html#network-and-web) doesn't fallback to `URI#open`, fixed test code that used that to verify open port. e5b70de54c5301f51a767da67294092af0cfafdc
- Avoid to drop `rdoc/` folder from vendored JRuby else `bin/logstash -i irb` would crash, commit b71f73e9c6edb81a7b7ae1305047e506f61c6e8c

Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
2023-06-28 13:05:43 +02:00
João Duarte
019bb9547c
Update catalog-info.yaml fix indentation and change trigger mode 2023-06-28 09:35:18 +02:00
João Duarte
85891f4679
Update catalog-info.yaml fix spec indentation in pipeline definition 2023-06-28 09:13:00 +02:00
João Duarte
c8812eeb91
Update catalog-info.yaml to introduce resource encapsulating pipeline 2023-06-27 17:30:12 +02:00
João Duarte
52f5650abd
Update catalog-info.yaml to define a component + pipeline instead of resource (#15121) 2023-06-27 16:56:43 +02:00
João Duarte
caff3bf1ce
Rename serverless_integration_pipeline.yml.yml to serverless_integration_pipeline.yml 2023-06-27 16:54:34 +02:00
João Duarte
0998b6a398
reshape catalog-info (#15120)
allow for multiple pipeline definitions
2023-06-27 15:24:50 +02:00
João Duarte
403c361bb1
fix yaml structure for catalog-info (#15119) 2023-06-27 14:45:30 +02:00
elastic-backstage-prod[bot]
a9112fc8f7
Create catalog-info file (#15072)
This will eventually replace the pipeline definition in the catalog repo, using the local file instead.

---------

Co-authored-by: elastic-backstage-prod[bot] <123036547+elastic-backstage-prod[bot]@users.noreply.github.com>
Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
2023-06-27 12:29:30 +02:00
kaisecheng
e919305fee
placeholder for serverless test in buildkite (#15112)
Use any Buildkite agent for empty serverless pipeline.

Co-authored-by: Mashhur <99575341+mashhurs@users.noreply.github.com>
2023-06-26 22:11:46 +02:00
Mashhur
6f6a446f3c
Install Java on Buildkite Agent. (#15097) 2023-06-22 09:10:33 -07:00
Mashhur
2ccf1a0596
Upgrade bundler version used in ruby utils. (#15109) 2023-06-22 10:11:15 +01:00
Rob Bavey
22dc7a8a91
Bump version to 8.10.0 (#15103) 2023-06-21 09:54:29 -04:00
Mashhur
e3b9324602
Read Snyk token from logstash repo scoped vault. (#15096) 2023-06-20 13:29:47 -07:00
Mashhur
9c080eac53
Snyk Integration (#15083)
* This commit includes number of changes:
- adds initial pipeline steps, each step proceeds one branch report job
- a script to resolve current and previous release latest branches from the release URL. Noting that it considers the branches from snapshots where upcoming releases will be our interest.
- pseudo logic to download logstash, build and report to Snyk. In order to script fully work we need a logstash machine to access Buildkite vault, which I am working.

* Source optimization and use Buildkite Vault to access to Snyk token.

* Add git branch and head to Snyk project tag.

* Dynamically resolve latest branches instead of manually defining.

* Update .buildkite/scripts/snyk/report.sh

Improve comment readability.

Co-authored-by: João Duarte <jsvd@users.noreply.github.com>

---------

Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
2023-06-20 08:25:21 -07:00
Edmo Vamerlatti Costa
52bbbaa054
Change shutdown stalled method to also include the main/pipeline thread (#15056)
This commit changed the java_pipeline.rb to include the pipeline/main thread on the stalling threads info list, that way, Logstash can provide users with more helpful information when the stalling thread is the pipeline/main one.
2023-06-20 14:48:45 +02:00
Ry Biesemeyer
c187158b58
Forward-port Release notes for 8.8.1 (#15085) (#15086)
* Update release notes for 8.8.1

* Update releasenotes.asciidoc

* Update docs/static/releasenotes.asciidoc



* Update docs/static/releasenotes.asciidoc

* Update docs/static/releasenotes.asciidoc

* Update docs/static/releasenotes.asciidoc



---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: logstashmachine <43502315+logstashmachine@users.noreply.github.com>
Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
Co-authored-by: Karen Metts <35154725+karenzone@users.noreply.github.com>
2023-06-08 00:08:04 -07:00
Andres Rodriguez
0b68a36e28
Remove obsolete plugin version notice (#15032)
* Remove unneeded tests
2023-06-02 10:35:35 +01:00
Andrea Selva
755fcf8843
Forward port release notes for 8.8.0 (#15062) 2023-05-26 09:08:04 +02:00
Andrea Selva
e5f35df62b
Update versions used in plugins CI (#15061) 2023-05-26 09:07:03 +02:00
David Kilfoyle
b831888318
[Docs] Add instructions to verify Docker install images (#15058)
* Add instructions to verify Docker install images

* remove line breaks

* Update docs/static/docker.asciidoc

Co-authored-by: Maxime Gréau <maxime.greau@elastic.co>

---------

Co-authored-by: Maxime Gréau <maxime.greau@elastic.co>
2023-05-24 08:46:05 -04:00
João Duarte
feb3ee0506
use setLoadPaths instead of RUBYLIB (#15059) 2023-05-24 11:06:00 +01:00
João Duarte
fd2b1ff340
added psych to dependency list and updated NOTICE.txt (#15050)
* replace jruby-complete with jruby-core in build tasks
* place bundler in the rubylib path for testing
2023-05-23 14:16:40 +01:00
Edmo Vamerlatti Costa
e76e582086
Add missing Elasticsearch SSL settings and replace deprecated options (xpack.monitoring and xpack.management) (#15045)
This commit adds missing Elasticsearch SSL settings and replaces deprecated options being used on `xpack.monitoring.*` and `xpack.management.*` settings:

Changes:
- Updated deprecated monitoring and management Elasticsearch's SSL settings so no warnings are logged.
- Added monitoring settings support for file-based certificates and for the cipher suites: `xpack.monitoring.elasticsearch.ssl.certificate`, `xpack.monitoring.elasticsearch.ssl.key`, and `xpack.monitoring.elasticsearch.ssl.cipher_suites`.
- Added management settings support for file-based certificates and for the cipher suites: `xpack.management.elasticsearch.ssl.certificate`, `xpack.management.elasticsearch.ssl.key`, and `xpack.management.elasticsearch.ssl.cipher_suites`.
2023-05-15 11:54:38 +02:00
Ry Biesemeyer
519f3fb2e0
Plugin flow docs fixes (#14820)
* docs: fix example block syntax types and truncations

* docs: provide wrapping hints to flow metric tables

* docs: refresh node stats api response examples

include only `current` and `lifetime` metrics that are GA, and not
technology preview metrics.

* docs: use "m(onospace)" modifier for metric name columns

* docs: swap literal column to first

relies on `#guide table td:first-child .literal` having `white-space: nowrap`
2023-05-10 23:02:39 -07:00
David Kilfoyle
af47b7b478
Fix link to loadbalance in Filebeat ref (#15034) 2023-05-08 09:37:45 -04:00
João Duarte
139acd1058
Update logstash_releases.json with the releases of 7.17.10 and 8.7.1 (#15037) 2023-05-02 09:57:44 +01:00
github-actions[bot]
28880711d1
Release notes for 8.7.1 (#15024) (#15029)
Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
(cherry picked from commit 6ae1987c95)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2023-04-27 15:30:20 +01:00
Andrea Selva
643bb0c5c2
Bumped versions.yml for 8.9 cycle (#15022) 2023-04-26 10:50:45 +02:00
Andrea Selva
c0a5665f52
Fix duplicate description for storage_policy in yaml config files (#15014)
With PR #13923 was described how the DLQ storage_policy behaves. With PR #14261 was introduced a duplication of the description in logstash.yml.

This commit resolves the duplication and keeps the latest description that seems more direct expressive.
2023-04-20 16:04:36 +02:00
João Duarte
d7c81dfece
Update JDK to 17.0.7+7 (#15007) 2023-04-20 10:44:36 +01:00
Andrea Selva
1016c59290
Fix DLQ scheduled checks removes expired age segments (#15000)
Modifies the logic used by the scheduled task flusher so that execute age policy also in case the current (head) segments is not stale (haven't received any write, and the segment is empty).
This means that generally used finalize segment logic is applied plus a reinforcement step to grant the age policy is respected.
However this PR:
- introduced new debug log lines, improving the description of the context when a segment is finalized (because the DLQ is closing or  because the segment file has reached its maximum size or because the flush interval expiration). This is done with the introduction of `SealReason` enumeration.
- introduces `Awaitility` test dependency to improve the testing of asychronous conditions.
2023-04-19 17:32:19 +02:00
João Duarte
0df07d3f11
Reintroduce bundler 2.4 (#14995)
* Revert "Revert "Unpin bundler to allow 2.4 (#14894)" (#14942)"

This reverts commit 5e3038a3d3.

* prevent bundler 2.4 from blowing up memory during ./gradlew generatePluginsVersion

for some reason, instances of Bundler::Dsl are retained in
org.jruby.MetaClass. Each Bundler::Dsl will retain Bundler::SourceList
which is > 150MB. This commit sets the internal state of each Dsl's
source list so the large objects can be collected.

The proper fix would be to either reuse a single Dsl object or fix the
code upstream to avoid having Dsl objects retained by org.jruby.MetaClass.

* skip input cloudwatch during generatePluginsVersion

the new bundler 2.4's resolution algorithm seems to struggle in certain
situations, like resolving combination of "logstash-input-cloudwatch" and
"logstash-integration-aws".

Until the issue is solved let's skip it.
2023-04-12 10:11:07 +01:00
Ry Biesemeyer
cb9316b486
document infinite flow metric rates (#14975) 2023-04-11 18:43:37 +01:00
Andrea Selva
137168d1c6
Negative ack of batch aborted by plugin (#14940)
Modify the WorkerLoop to catch the newly introduced exception org.logstash.execution.AbortedBatchException so that an inflight batch could be negatively ACK-ed. This feature is used in combination with PQs to let exit plugins without completing the processing. Any filter and output already executed for the batch will be executed again next time the batch is picked by the persistent queue.

Co-authored-by: João Duarte <jsvd@users.noreply.github.com>
2023-04-04 10:07:15 +02:00
kaisecheng
f6b14b9a28
Update ci release version 8.7.0 (#14983) 2023-04-02 16:31:21 +01:00