From 649f0d0596ed3d27a7069a71d2fca97c02264dba Mon Sep 17 00:00:00 2001 From: Vihas Makwana Date: Wed, 24 Jul 2024 14:48:05 +0530 Subject: [PATCH] Squashed commit of the following: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit commit 18d38af46267f7fd8f7c140c6695fe62e3da7f69 Author: Vihas Makwana Date: Wed Jul 24 01:23:54 2024 +0530 fix: add comments commit 806cda4725414332ed5867c788a06289fb509512 Merge: 2e0bd28c14 b5b67a1789 Author: VihasMakwana <121151420+VihasMakwana@users.noreply.github.com> Date: Wed Jul 24 01:20:38 2024 +0530 Merge branch 'main' into metricbeat-process-multierr commit 2e0bd28c14e5568fcbd5fb82df6e1764fe9f3e5a Author: Vihas Makwana Date: Wed Jul 24 01:20:14 2024 +0530 fix: typo commit 82dc1036b51033f4596f397b9af5f801f4cbbc26 Author: Vihas Makwana Date: Wed Jul 24 01:19:35 2024 +0530 fix: typo commit b5b67a1789f30958d1b4dad3243537a4693863ba Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Jul 23 18:13:16 2024 +0000 build(deps): bump the azure-sdks group with 2 updates (#40310) * build(deps): bump the azure-sdks group with 2 updates Bumps the azure-sdks group with 2 updates: [github.com/Azure/go-autorest/autorest](https://github.com/Azure/go-autorest) and [github.com/Azure/go-autorest/autorest/adal](https://github.com/Azure/go-autorest). Updates `github.com/Azure/go-autorest/autorest` from 0.11.28 to 0.11.29 - [Release notes](https://github.com/Azure/go-autorest/releases) - [Changelog](https://github.com/Azure/go-autorest/blob/main/CHANGELOG.md) - [Commits](https://github.com/Azure/go-autorest/compare/autorest/v0.11.28...autorest/v0.11.29) Updates `github.com/Azure/go-autorest/autorest/adal` from 0.9.21 to 0.9.22 - [Release notes](https://github.com/Azure/go-autorest/releases) - [Changelog](https://github.com/Azure/go-autorest/blob/main/CHANGELOG.md) - [Commits](https://github.com/Azure/go-autorest/compare/autorest/adal/v0.9.21...autorest/adal/v0.9.22) --- updated-dependencies: - dependency-name: github.com/Azure/go-autorest/autorest dependency-type: direct:production update-type: version-update:semver-patch dependency-group: azure-sdks - dependency-name: github.com/Azure/go-autorest/autorest/adal dependency-type: direct:production update-type: version-update:semver-patch dependency-group: azure-sdks ... Signed-off-by: dependabot[bot] * Update NOTICE.txt --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: dependabot[bot] commit 197396fa694ed6175a358b9303191bdec0eab348 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Jul 23 13:32:02 2024 -0400 build(deps): bump the gcp-sdks group with 9 updates (#40311) * build(deps): bump the gcp-sdks group with 9 updates Bumps the gcp-sdks group with 9 updates: | Package | From | To | | --- | --- | --- | | [cloud.google.com/go/bigquery](https://github.com/googleapis/google-cloud-go) | `1.55.0` | `1.62.0` | | [cloud.google.com/go/monitoring](https://github.com/googleapis/google-cloud-go) | `1.16.0` | `1.20.1` | | [cloud.google.com/go/pubsub](https://github.com/googleapis/google-cloud-go) | `1.33.0` | `1.40.0` | | [cloud.google.com/go/compute](https://github.com/googleapis/google-cloud-go) | `1.23.0` | `1.27.2` | | [cloud.google.com/go/redis](https://github.com/googleapis/google-cloud-go) | `1.13.1` | `1.16.2` | | [cloud.google.com/go/compute/metadata](https://github.com/googleapis/google-cloud-go) | `0.2.3` | `0.4.0` | | [cloud.google.com/go/iam](https://github.com/googleapis/google-cloud-go) | `1.1.2` | `1.1.10` | | [cloud.google.com/go/longrunning](https://github.com/googleapis/google-cloud-go) | `0.5.1` | `0.5.9` | | [cloud.google.com/go/storage](https://github.com/googleapis/google-cloud-go) | `1.30.1` | `1.42.0` | Updates `cloud.google.com/go/bigquery` from 1.55.0 to 1.62.0 - [Release notes](https://github.com/googleapis/google-cloud-go/releases) - [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/CHANGES.md) - [Commits](https://github.com/googleapis/google-cloud-go/compare/spanner/v1.55.0...spanner/v1.62.0) Updates `cloud.google.com/go/monitoring` from 1.16.0 to 1.20.1 - [Release notes](https://github.com/googleapis/google-cloud-go/releases) - [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/documentai/CHANGES.md) - [Commits](https://github.com/googleapis/google-cloud-go/compare/kms/v1.16.0...video/v1.20.1) Updates `cloud.google.com/go/pubsub` from 1.33.0 to 1.40.0 - [Release notes](https://github.com/googleapis/google-cloud-go/releases) - [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/CHANGES.md) - [Commits](https://github.com/googleapis/google-cloud-go/compare/pubsub/v1.33.0...pubsub/v1.40.0) Updates `cloud.google.com/go/compute` from 1.23.0 to 1.27.2 - [Release notes](https://github.com/googleapis/google-cloud-go/releases) - [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/documentai/CHANGES.md) - [Commits](https://github.com/googleapis/google-cloud-go/compare/pubsub/v1.23.0...compute/v1.27.2) Updates `cloud.google.com/go/redis` from 1.13.1 to 1.16.2 - [Release notes](https://github.com/googleapis/google-cloud-go/releases) - [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/CHANGES.md) - [Commits](https://github.com/googleapis/google-cloud-go/compare/asset/v1.13.1...redis/v1.16.2) Updates `cloud.google.com/go/compute/metadata` from 0.2.3 to 0.4.0 - [Release notes](https://github.com/googleapis/google-cloud-go/releases) - [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/CHANGES.md) - [Commits](https://github.com/googleapis/google-cloud-go/compare/netapp/v0.2.3...v0.4.0) Updates `cloud.google.com/go/iam` from 1.1.2 to 1.1.10 - [Release notes](https://github.com/googleapis/google-cloud-go/releases) - [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/CHANGES.md) - [Commits](https://github.com/googleapis/google-cloud-go/compare/iam/v1.1.2...iam/v1.1.10) Updates `cloud.google.com/go/longrunning` from 0.5.1 to 0.5.9 - [Release notes](https://github.com/googleapis/google-cloud-go/releases) - [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/CHANGES.md) - [Commits](https://github.com/googleapis/google-cloud-go/compare/auth/v0.5.1...longrunning/v0.5.9) Updates `cloud.google.com/go/storage` from 1.30.1 to 1.42.0 - [Release notes](https://github.com/googleapis/google-cloud-go/releases) - [Changelog](https://github.com/googleapis/google-cloud-go/blob/main/documentai/CHANGES.md) - [Commits](https://github.com/googleapis/google-cloud-go/compare/pubsub/v1.30.1...spanner/v1.42.0) --- updated-dependencies: - dependency-name: cloud.google.com/go/bigquery dependency-type: direct:production update-type: version-update:semver-minor dependency-group: gcp-sdks - dependency-name: cloud.google.com/go/monitoring dependency-type: direct:production update-type: version-update:semver-minor dependency-group: gcp-sdks - dependency-name: cloud.google.com/go/pubsub dependency-type: direct:production update-type: version-update:semver-minor dependency-group: gcp-sdks - dependency-name: cloud.google.com/go/compute dependency-type: direct:production update-type: version-update:semver-minor dependency-group: gcp-sdks - dependency-name: cloud.google.com/go/redis dependency-type: direct:production update-type: version-update:semver-minor dependency-group: gcp-sdks - dependency-name: cloud.google.com/go/compute/metadata dependency-type: indirect update-type: version-update:semver-minor dependency-group: gcp-sdks - dependency-name: cloud.google.com/go/iam dependency-type: indirect update-type: version-update:semver-patch dependency-group: gcp-sdks - dependency-name: cloud.google.com/go/longrunning dependency-type: indirect update-type: version-update:semver-patch dependency-group: gcp-sdks - dependency-name: cloud.google.com/go/storage dependency-type: direct:production update-type: version-update:semver-minor dependency-group: gcp-sdks ... Signed-off-by: dependabot[bot] * Update NOTICE.txt --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: dependabot[bot] commit 8940f7de7d80bf3c05eede3018ea812750e9c1e8 Author: Vihas Makwana Date: Tue Jul 23 21:02:27 2024 +0530 fix: update notice commit 58bc2ff07637fb80d5bf64da257b32ed964d610c Merge: 9433065fc8 dd671a6bce Author: VihasMakwana <121151420+VihasMakwana@users.noreply.github.com> Date: Tue Jul 23 20:59:16 2024 +0530 Merge branch 'main' into metricbeat-process-multierr commit 9433065fc8ef128bd55226f1d9be1c9838597e45 Author: Vihas Makwana Date: Tue Jul 23 20:57:58 2024 +0530 chore: update tests commit c1d4aba72a4c24764f5720f178b0797bed319c52 Author: Vihas Makwana Date: Tue Jul 23 20:55:45 2024 +0530 fix: add specifc version metric-system commit dd671a6bcefbcf3b99a1e3ac863293839fa7a3cb Author: Vinit Chauhan Date: Tue Jul 23 10:20:37 2024 -0400 filebeat/decode_cef - Add option to ignore empty values (#40268) Added option to ignore empty values in the decode_cef processor. In the decode_cef processor, when there are empty values in the extensions section, we get errors during log parsing. This change provides a flag in decode_cef config to override this default behavior and ignore the fields with empty value. Some example errors that this helps handle are: error in field 'cn1': strconv.ParseInt: parsing "": invalid syntax error in field 'destinationTranslatedAddress': value is not a valid IP address Closes #40236 commit add7a455a13e23e58f94c87383775c11d48bd847 Author: Vihas Makwana Date: Tue Jul 23 19:13:54 2024 +0530 fix: unit test commit 029364581adbee989ed1c74f4eb42e29b98152e7 Author: Vihas Makwana Date: Tue Jul 23 16:31:49 2024 +0530 fix: remove ioutil commit e84201027015b713c99740e54dc473797e6b6a84 Author: Vihas Makwana Date: Tue Jul 23 16:14:01 2024 +0530 fix: update notice commit 246d730121ace6c80c856482e96fae00a006fa61 Author: Vihas Makwana Date: Tue Jul 23 16:13:15 2024 +0530 fix: add license, remove uuid5 commit ac018316942a9bd73f3f84e24937b25d128a7407 Author: Vihas Makwana Date: Tue Jul 23 15:03:08 2024 +0530 update: go.mod commit 42101c8f8e80f13e998a5658f13e7f0de9ed26fd Merge: 091fff8b4b 72636965a2 Author: VihasMakwana <121151420+VihasMakwana@users.noreply.github.com> Date: Tue Jul 23 15:02:20 2024 +0530 Merge branch 'main' into metricbeat-process-multierr commit 091fff8b4b98c4435f95228e24b0c87bbdf4c6a2 Author: Vihas Makwana Date: Tue Jul 23 14:58:51 2024 +0530 fix: test commit fd6d31280bf87b94d68117d847c5781c266463a8 Author: Vihas Makwana Date: Tue Jul 23 14:57:13 2024 +0530 fix: update go.mod, update uuid and metrics version commit 72636965a2e88becb475020e2b1aaac2d2476d56 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon Jul 22 19:32:38 2024 +0000 build(deps): bump github.com/elastic/elastic-agent-libs from 0.9.13 to 0.9.15 (#40300) * build(deps): bump github.com/elastic/elastic-agent-libs Bumps [github.com/elastic/elastic-agent-libs](https://github.com/elastic/elastic-agent-libs) from 0.9.13 to 0.9.15. - [Release notes](https://github.com/elastic/elastic-agent-libs/releases) - [Commits](https://github.com/elastic/elastic-agent-libs/compare/v0.9.13...v0.9.15) --- updated-dependencies: - dependency-name: github.com/elastic/elastic-agent-libs dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] * Update NOTICE.txt --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: dependabot[bot] commit e3d8f3b7fa6d77cc470704fa66ffceb84a22832d Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon Jul 22 13:44:51 2024 -0400 build(deps): bump github.com/elastic/elastic-agent-client/v7 from 7.14.0 to 7.15.0 (#40304) * build(deps): bump github.com/elastic/elastic-agent-client/v7 Bumps [github.com/elastic/elastic-agent-client/v7](https://github.com/elastic/elastic-agent-client) from 7.14.0 to 7.15.0. - [Release notes](https://github.com/elastic/elastic-agent-client/releases) - [Commits](https://github.com/elastic/elastic-agent-client/compare/v7.14.0...v7.15.0) --- updated-dependencies: - dependency-name: github.com/elastic/elastic-agent-client/v7 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] * Update NOTICE.txt --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: dependabot[bot] commit 3e95d530320e5e6ec605410839fcbd6a454ce2b5 Author: Maurizio Branca Date: Mon Jul 22 18:24:59 2024 +0200 Add CSP SDKs to the `allow` list (#40150) commit f3f772f6fe4700ea4584c23e5a56fed1594e39aa Author: VihasMakwana <121151420+VihasMakwana@users.noreply.github.com> Date: Fri Jul 19 17:52:19 2024 +0530 [filebeat][log] Enable status reporter for log input (#40075) * chore: initial commit, without tests * chore: tests * chore: add test cases * fix: add null check * fix: remove println * fix: lint * goimports * remove println * fix: changelog * update test for windows * fix: fix some comments * chore: add starting state in NewInput * fix: add sample output to verify the status * fix: remove println * fix: add integration tag * Update CHANGELOG.next.asciidoc Co-authored-by: Denis * fix: remove redundant bool * fix: add degraded --------- Co-authored-by: Pierre HILBERT Co-authored-by: Denis commit 463bbb4c7c00bf4715d6fff63b54260e79a35010 Author: Dan Kortschak Date: Fri Jul 19 06:32:29 2024 +0930 x-pack/filebeat/input/websocket: do minor clean-up in main loop (#40145) * remove unneeded goroutine * fix logging: The body was previously not being logged since an io.ReadCloser is not a JSON-serialisable type. commit 908553d797cc2541f8d7f61c333658705e324e33 Author: Vihas Makwana Date: Thu Jul 18 19:04:52 2024 +0530 chore: rename function commit 51a785484db6cbb01b65b3ac2661b59cd377a30e Author: Vihas Makwana Date: Thu Jul 18 18:42:00 2024 +0530 chore: update process summary commit 21b102baa4866c2ac2baa27372bbab8dcb5f78ac Author: Vihas Makwana Date: Thu Jul 18 16:44:19 2024 +0530 chore: add degradable error commit 942f8c78573d0162765bb8d80c7d7368ca36d58f Author: Alejandro Fernández Haro Date: Wed Jul 17 20:52:14 2024 +0200 [Metricbeat/kibana/status] Add support for v8format (#40275) commit 1bfcecb44b78ab6e578a26c2b87e5ab2e002021e Author: Vihas Makwana Date: Wed Jul 17 23:31:10 2024 +0530 fix: multierror support --- .github/dependabot.yml | 13 +- CHANGELOG-developer.next.asciidoc | 1 + CHANGELOG.next.asciidoc | 3 + NOTICE.txt | 1236 +++++++++++++---- filebeat/input/input.go | 31 +- filebeat/input/log/input.go | 20 + filebeat/input/registry.go | 12 +- go.mod | 61 +- go.sum | 146 +- libbeat/cmd/instance/beat.go | 2 +- metricbeat/docs/fields.asciidoc | 62 +- metricbeat/module/kibana/fields.go | 2 +- .../module/kibana/status/_meta/fields.yml | 26 +- .../kibana/status/_meta/testdata/8.16.0.json | 932 +++++++++++++ .../_meta/testdata/8.16.0.json-expected.json | 48 + metricbeat/module/kibana/status/data.go | 14 +- metricbeat/module/system/process/process.go | 7 +- .../module/system/process/process_test.go | 9 +- .../system/process_summary/process_summary.go | 16 +- .../process_summary/process_summary_test.go | 9 +- metricbeat/module/system/test_system.py | 9 + x-pack/filebeat/input/websocket/input.go | 64 +- .../filebeat/processors/decode_cef/cef/cef.go | 7 + .../processors/decode_cef/cef/cef_test.go | 19 + .../processors/decode_cef/cef/option.go | 14 +- .../filebeat/processors/decode_cef/config.go | 15 +- .../processors/decode_cef/decode_cef.go | 12 +- .../processors/decode_cef/decode_cef_test.go | 27 + .../decode_cef/docs/decode_cef.asciidoc | 19 +- .../tests/integration/status_reporter_test.go | 205 +++ 30 files changed, 2559 insertions(+), 482 deletions(-) create mode 100644 metricbeat/module/kibana/status/_meta/testdata/8.16.0.json create mode 100644 metricbeat/module/kibana/status/_meta/testdata/8.16.0.json-expected.json create mode 100644 x-pack/filebeat/tests/integration/status_reporter_test.go diff --git a/.github/dependabot.yml b/.github/dependabot.yml index f0ab74e15b2..4fb19af2548 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -35,18 +35,23 @@ updates: - dependency-name: github.com/elastic/go-seccomp-bpf - dependency-name: github.com/elastic/toutoumomoma - dependency-name: github.com/elastic/ebpfevents + # Team:Team:obs-ds-hosted-services, Team:obs-infraobs-integrations + # Azure SDK dependencies + - dependency-name: github.com/Azure/azure-sdk-for-go/* + - dependency-name: github.com/Azure/azure-event-hubs-go/* + - dependency-name: github.com/Azure/azure-storage-blob-go/* + - dependency-name: github.com/Azure/go-autorest/* + # GCP SDK dependencies + - dependency-name: cloud.google.com/go/* groups: # Cloud providers' SDK dependencies azure-sdks: patterns: - - "github.com/Azure/azure-sdk-for-go/*" - - "github.com/Azure/azure-event-hubs-go/*" + - "github.com/Azure/azure-*-go" - "github.com/Azure/go-autorest/*" - - "github.com/Azure/azure-storage-blob-go/*" gcp-sdks: patterns: - "cloud.google.com/go/*" - - "google.golang.org/*" ignore: # Skip github.com/elastic/mito because it requires documentation updates. - dependency-name: github.com/elastic/mito diff --git a/CHANGELOG-developer.next.asciidoc b/CHANGELOG-developer.next.asciidoc index 92a42ea40fe..a2f11330782 100644 --- a/CHANGELOG-developer.next.asciidoc +++ b/CHANGELOG-developer.next.asciidoc @@ -196,6 +196,7 @@ The list below covers the major changes between 7.0.0-rc2 and main only. - Improve robustness and error reporting from packetbeat default route testing. {pull}39757[39757] - Move x-pack/filebeat/input/salesforce jwt import to v5. {pull}39823[39823] - Drop x-pack/filebeat/input dependency on github.com/lestrrat-go/jwx/v2. {pull}39968[39968] +- Added `ignore_empty_values` flag in `decode_cef` Filebeat processor. {pull}40268[40268] ==== Deprecated diff --git a/CHANGELOG.next.asciidoc b/CHANGELOG.next.asciidoc index 2501bdfcda7..f50c7d7573f 100644 --- a/CHANGELOG.next.asciidoc +++ b/CHANGELOG.next.asciidoc @@ -44,9 +44,11 @@ https://github.com/elastic/beats/compare/v8.8.1\...main[Check the HEAD diff] - Update Salesforce module to use new Salesforce input. {pull}37509[37509] - Tag events that come from a filestream in "take over" mode. {pull}39828[39828] - Fix high IO and handling of a corrupted registry log file. {pull}35893[35893] +- Enable file ingestion to report detailed status to Elastic Agent {pull}40075[40075] - Filebeat, when running with Elastic-Agent, reports status for Filestream input. {pull}40121[40121] - Implement Elastic Agent status and health reporting for Winlog Filebeat input. {pull}40163[40163] - Fix filestream's registry GC: registry entries will never be removed if clean_inactive is set to "-1". {pull}40258[40258] +- Added `ignore_empty_values` flag in `decode_cef` Filebeat processor. {pull}40268[40268] *Heartbeat* @@ -57,6 +59,7 @@ https://github.com/elastic/beats/compare/v8.8.1\...main[Check the HEAD diff] - Add support of Graphite series 1.1.0+ tagging extension for statsd module. {pull}39619[39619] - Allow metricsets to report their status via control v2 protocol. {pull}40025[40025] - Remove fallback to the node limit for the `kubernetes.pod.cpu.usage.limit.pct` and `kubernetes.pod.memory.usage.limit.pct` metrics calculation +- Add support for Kibana status metricset in v8 format {pull}40275[40275] *Osquerybeat* diff --git a/NOTICE.txt b/NOTICE.txt index 34189b6e74d..8400e324c85 100644 --- a/NOTICE.txt +++ b/NOTICE.txt @@ -11,11 +11,11 @@ Third party libraries used by the Elastic Beats project: -------------------------------------------------------------------------------- Dependency : cloud.google.com/go -Version: v0.110.8 +Version: v0.115.0 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/cloud.google.com/go@v0.110.8/LICENSE: +Contents of probable licence file $GOMODCACHE/cloud.google.com/go@v0.115.0/LICENSE: Apache License @@ -223,11 +223,11 @@ Contents of probable licence file $GOMODCACHE/cloud.google.com/go@v0.110.8/LICEN -------------------------------------------------------------------------------- Dependency : cloud.google.com/go/bigquery -Version: v1.55.0 +Version: v1.62.0 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/cloud.google.com/go/bigquery@v1.55.0/LICENSE: +Contents of probable licence file $GOMODCACHE/cloud.google.com/go/bigquery@v1.62.0/LICENSE: Apache License @@ -435,11 +435,11 @@ Contents of probable licence file $GOMODCACHE/cloud.google.com/go/bigquery@v1.55 -------------------------------------------------------------------------------- Dependency : cloud.google.com/go/compute -Version: v1.23.0 +Version: v1.27.2 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/cloud.google.com/go/compute@v1.23.0/LICENSE: +Contents of probable licence file $GOMODCACHE/cloud.google.com/go/compute@v1.27.2/LICENSE: Apache License @@ -647,11 +647,11 @@ Contents of probable licence file $GOMODCACHE/cloud.google.com/go/compute@v1.23. -------------------------------------------------------------------------------- Dependency : cloud.google.com/go/monitoring -Version: v1.16.0 +Version: v1.20.1 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/cloud.google.com/go/monitoring@v1.16.0/LICENSE: +Contents of probable licence file $GOMODCACHE/cloud.google.com/go/monitoring@v1.20.1/LICENSE: Apache License @@ -859,11 +859,11 @@ Contents of probable licence file $GOMODCACHE/cloud.google.com/go/monitoring@v1. -------------------------------------------------------------------------------- Dependency : cloud.google.com/go/pubsub -Version: v1.33.0 +Version: v1.40.0 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/cloud.google.com/go/pubsub@v1.33.0/LICENSE: +Contents of probable licence file $GOMODCACHE/cloud.google.com/go/pubsub@v1.40.0/LICENSE: Apache License @@ -1071,11 +1071,11 @@ Contents of probable licence file $GOMODCACHE/cloud.google.com/go/pubsub@v1.33.0 -------------------------------------------------------------------------------- Dependency : cloud.google.com/go/redis -Version: v1.13.1 +Version: v1.16.2 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/cloud.google.com/go/redis@v1.13.1/LICENSE: +Contents of probable licence file $GOMODCACHE/cloud.google.com/go/redis@v1.16.2/LICENSE: Apache License @@ -1283,11 +1283,11 @@ Contents of probable licence file $GOMODCACHE/cloud.google.com/go/redis@v1.13.1/ -------------------------------------------------------------------------------- Dependency : cloud.google.com/go/storage -Version: v1.30.1 +Version: v1.42.0 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/cloud.google.com/go/storage@v1.30.1/LICENSE: +Contents of probable licence file $GOMODCACHE/cloud.google.com/go/storage@v1.42.0/LICENSE: Apache License @@ -2014,11 +2014,11 @@ Contents of probable licence file $GOMODCACHE/github.com/!azure/azure-storage-bl -------------------------------------------------------------------------------- Dependency : github.com/Azure/go-autorest/autorest -Version: v0.11.28 +Version: v0.11.29 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/github.com/!azure/go-autorest/autorest@v0.11.28/LICENSE: +Contents of probable licence file $GOMODCACHE/github.com/!azure/go-autorest/autorest@v0.11.29/LICENSE: Apache License @@ -2215,11 +2215,11 @@ Contents of probable licence file $GOMODCACHE/github.com/!azure/go-autorest/auto -------------------------------------------------------------------------------- Dependency : github.com/Azure/go-autorest/autorest/adal -Version: v0.9.21 +Version: v0.9.22 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/github.com/!azure/go-autorest/autorest/adal@v0.9.21/LICENSE: +Contents of probable licence file $GOMODCACHE/github.com/!azure/go-autorest/autorest/adal@v0.9.22/LICENSE: Apache License @@ -12736,11 +12736,11 @@ Contents of probable licence file $GOMODCACHE/github.com/elastic/elastic-agent-a -------------------------------------------------------------------------------- Dependency : github.com/elastic/elastic-agent-client/v7 -Version: v7.14.0 +Version: v7.15.0 Licence type (autodetected): Elastic -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/github.com/elastic/elastic-agent-client/v7@v7.14.0/LICENSE.txt: +Contents of probable licence file $GOMODCACHE/github.com/elastic/elastic-agent-client/v7@v7.15.0/LICENSE.txt: ELASTIC LICENSE AGREEMENT @@ -12969,11 +12969,11 @@ SOFTWARE -------------------------------------------------------------------------------- Dependency : github.com/elastic/elastic-agent-libs -Version: v0.9.13 +Version: v0.9.15 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/github.com/elastic/elastic-agent-libs@v0.9.13/LICENSE: +Contents of probable licence file $GOMODCACHE/github.com/elastic/elastic-agent-libs@v0.9.15/LICENSE: Apache License Version 2.0, January 2004 @@ -13180,11 +13180,11 @@ Contents of probable licence file $GOMODCACHE/github.com/elastic/elastic-agent-l -------------------------------------------------------------------------------- Dependency : github.com/elastic/elastic-agent-system-metrics -Version: v0.10.3 +Version: v0.10.6-0.20240723152150-0f81a1e67528 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/github.com/elastic/elastic-agent-system-metrics@v0.10.3/LICENSE.txt: +Contents of probable licence file $GOMODCACHE/github.com/elastic/elastic-agent-system-metrics@v0.10.6-0.20240723152150-0f81a1e67528/LICENSE.txt: Apache License Version 2.0, January 2004 @@ -18533,11 +18533,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -------------------------------------------------------------------------------- Dependency : github.com/googleapis/gax-go/v2 -Version: v2.12.0 +Version: v2.12.5 Licence type (autodetected): BSD-3-Clause -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/github.com/googleapis/gax-go/v2@v2.12.0/LICENSE: +Contents of probable licence file $GOMODCACHE/github.com/googleapis/gax-go/v2@v2.12.5/LICENSE: Copyright 2016, Google Inc. All rights reserved. @@ -24536,11 +24536,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -------------------------------------------------------------------------------- Dependency : golang.org/x/oauth2 -Version: v0.10.0 +Version: v0.21.0 Licence type (autodetected): BSD-3-Clause -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/golang.org/x/oauth2@v0.10.0/LICENSE: +Contents of probable licence file $GOMODCACHE/golang.org/x/oauth2@v0.21.0/LICENSE: Copyright (c) 2009 The Go Authors. All rights reserved. @@ -24758,11 +24758,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -------------------------------------------------------------------------------- Dependency : google.golang.org/api -Version: v0.128.0 +Version: v0.188.0 Licence type (autodetected): BSD-3-Clause -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/google.golang.org/api@v0.128.0/LICENSE: +Contents of probable licence file $GOMODCACHE/google.golang.org/api@v0.188.0/LICENSE: Copyright (c) 2011 Google Inc. All rights reserved. @@ -24795,11 +24795,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -------------------------------------------------------------------------------- Dependency : google.golang.org/genproto/googleapis/api -Version: v0.0.0-20230913181813-007df8e322eb +Version: v0.0.0-20240701130421-f6361c86f094 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/google.golang.org/genproto/googleapis/api@v0.0.0-20230913181813-007df8e322eb/LICENSE: +Contents of probable licence file $GOMODCACHE/google.golang.org/genproto/googleapis/api@v0.0.0-20240701130421-f6361c86f094/LICENSE: Apache License @@ -25007,11 +25007,11 @@ Contents of probable licence file $GOMODCACHE/google.golang.org/genproto/googlea -------------------------------------------------------------------------------- Dependency : google.golang.org/grpc -Version: v1.58.3 +Version: v1.64.1 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/google.golang.org/grpc@v1.58.3/LICENSE: +Contents of probable licence file $GOMODCACHE/google.golang.org/grpc@v1.64.1/LICENSE: Apache License @@ -25219,11 +25219,11 @@ Contents of probable licence file $GOMODCACHE/google.golang.org/grpc@v1.58.3/LIC -------------------------------------------------------------------------------- Dependency : google.golang.org/protobuf -Version: v1.33.0 +Version: v1.34.2 Licence type (autodetected): BSD-3-Clause -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/google.golang.org/protobuf@v1.33.0/LICENSE: +Contents of probable licence file $GOMODCACHE/google.golang.org/protobuf@v1.34.2/LICENSE: Copyright (c) 2018 The Go Authors. All rights reserved. @@ -27104,12 +27104,12 @@ THE SOFTWARE. -------------------------------------------------------------------------------- -Dependency : cloud.google.com/go/compute/metadata -Version: v0.2.3 +Dependency : cloud.google.com/go/auth +Version: v0.7.0 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/cloud.google.com/go/compute/metadata@v0.2.3/LICENSE: +Contents of probable licence file $GOMODCACHE/cloud.google.com/go/auth@v0.7.0/LICENSE: Apache License @@ -27316,12 +27316,12 @@ Contents of probable licence file $GOMODCACHE/cloud.google.com/go/compute/metada -------------------------------------------------------------------------------- -Dependency : cloud.google.com/go/datacatalog -Version: v1.17.1 +Dependency : cloud.google.com/go/auth/oauth2adapt +Version: v0.2.2 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/cloud.google.com/go/datacatalog@v1.17.1/LICENSE: +Contents of probable licence file $GOMODCACHE/cloud.google.com/go/auth/oauth2adapt@v0.2.2/LICENSE: Apache License @@ -27528,12 +27528,12 @@ Contents of probable licence file $GOMODCACHE/cloud.google.com/go/datacatalog@v1 -------------------------------------------------------------------------------- -Dependency : cloud.google.com/go/iam -Version: v1.1.2 +Dependency : cloud.google.com/go/compute/metadata +Version: v0.4.0 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/cloud.google.com/go/iam@v1.1.2/LICENSE: +Contents of probable licence file $GOMODCACHE/cloud.google.com/go/compute/metadata@v0.4.0/LICENSE: Apache License @@ -27740,12 +27740,12 @@ Contents of probable licence file $GOMODCACHE/cloud.google.com/go/iam@v1.1.2/LIC -------------------------------------------------------------------------------- -Dependency : cloud.google.com/go/kms -Version: v1.15.2 +Dependency : cloud.google.com/go/datacatalog +Version: v1.20.3 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/cloud.google.com/go/kms@v1.15.2/LICENSE: +Contents of probable licence file $GOMODCACHE/cloud.google.com/go/datacatalog@v1.20.3/LICENSE: Apache License @@ -27952,12 +27952,12 @@ Contents of probable licence file $GOMODCACHE/cloud.google.com/go/kms@v1.15.2/LI -------------------------------------------------------------------------------- -Dependency : cloud.google.com/go/longrunning -Version: v0.5.1 +Dependency : cloud.google.com/go/iam +Version: v1.1.10 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/cloud.google.com/go/longrunning@v0.5.1/LICENSE: +Contents of probable licence file $GOMODCACHE/cloud.google.com/go/iam@v1.1.10/LICENSE: Apache License @@ -28164,12 +28164,13 @@ Contents of probable licence file $GOMODCACHE/cloud.google.com/go/longrunning@v0 -------------------------------------------------------------------------------- -Dependency : code.cloudfoundry.org/go-diodes -Version: v0.0.0-20190809170250-f77fb823c7ee +Dependency : cloud.google.com/go/kms +Version: v1.18.2 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/code.cloudfoundry.org/go-diodes@v0.0.0-20190809170250-f77fb823c7ee/LICENSE: +Contents of probable licence file $GOMODCACHE/cloud.google.com/go/kms@v1.18.2/LICENSE: + Apache License Version 2.0, January 2004 @@ -28373,13 +28374,14 @@ Contents of probable licence file $GOMODCACHE/code.cloudfoundry.org/go-diodes@v0 See the License for the specific language governing permissions and limitations under the License. + -------------------------------------------------------------------------------- -Dependency : code.cloudfoundry.org/gofileutils -Version: v0.0.0-20170111115228-4d0c80011a0f +Dependency : cloud.google.com/go/longrunning +Version: v0.5.9 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/code.cloudfoundry.org/gofileutils@v0.0.0-20170111115228-4d0c80011a0f/LICENSE: +Contents of probable licence file $GOMODCACHE/cloud.google.com/go/longrunning@v0.5.9/LICENSE: Apache License @@ -28586,47 +28588,469 @@ Contents of probable licence file $GOMODCACHE/code.cloudfoundry.org/gofileutils@ -------------------------------------------------------------------------------- -Dependency : code.cloudfoundry.org/rfc5424 -Version: v0.0.0-20180905210152-236a6d29298a -Licence type (autodetected): BSD-2-Clause +Dependency : code.cloudfoundry.org/go-diodes +Version: v0.0.0-20190809170250-f77fb823c7ee +Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/code.cloudfoundry.org/rfc5424@v0.0.0-20180905210152-236a6d29298a/LICENSE: +Contents of probable licence file $GOMODCACHE/code.cloudfoundry.org/go-diodes@v0.0.0-20190809170250-f77fb823c7ee/LICENSE: -BSD 2-Clause License + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ -Copyright (c) 2016, Ross Kinder -All rights reserved. + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: + 1. Definitions. -* Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. -* Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE -FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. -------------------------------------------------------------------------------- -Dependency : github.com/AdaLogics/go-fuzz-headers -Version: v0.0.0-20230811130428-ced1acdcaa24 +Dependency : code.cloudfoundry.org/gofileutils +Version: v0.0.0-20170111115228-4d0c80011a0f Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/github.com/!ada!logics/go-fuzz-headers@v0.0.0-20230811130428-ced1acdcaa24/LICENSE: +Contents of probable licence file $GOMODCACHE/code.cloudfoundry.org/gofileutils@v0.0.0-20170111115228-4d0c80011a0f/LICENSE: + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + + +-------------------------------------------------------------------------------- +Dependency : code.cloudfoundry.org/rfc5424 +Version: v0.0.0-20180905210152-236a6d29298a +Licence type (autodetected): BSD-2-Clause +-------------------------------------------------------------------------------- + +Contents of probable licence file $GOMODCACHE/code.cloudfoundry.org/rfc5424@v0.0.0-20180905210152-236a6d29298a/LICENSE: + +BSD 2-Clause License + +Copyright (c) 2016, Ross Kinder +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +-------------------------------------------------------------------------------- +Dependency : github.com/AdaLogics/go-fuzz-headers +Version: v0.0.0-20230811130428-ced1acdcaa24 +Licence type (autodetected): Apache-2.0 +-------------------------------------------------------------------------------- + +Contents of probable licence file $GOMODCACHE/github.com/!ada!logics/go-fuzz-headers@v0.0.0-20230811130428-ced1acdcaa24/LICENSE: Apache License Version 2.0, January 2004 @@ -31180,12 +31604,12 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -------------------------------------------------------------------------------- -Dependency : github.com/apache/arrow/go/v12 -Version: v12.0.0 +Dependency : github.com/apache/arrow/go/v15 +Version: v15.0.2 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/github.com/apache/arrow/go/v12@v12.0.0/LICENSE.txt: +Contents of probable licence file $GOMODCACHE/github.com/apache/arrow/go/v15@v15.0.2/LICENSE.txt: Apache License @@ -32870,17 +33294,6 @@ for PyArrow. Ibis is released under the Apache License, Version 2.0. -------------------------------------------------------------------------------- -This project includes code from the autobrew project. - -* r/tools/autobrew and dev/tasks/homebrew-formulae/autobrew/apache-arrow.rb - are based on code from the autobrew project. - -Copyright (c) 2019, Jeroen Ooms -License: MIT -Homepage: https://github.com/jeroen/autobrew - --------------------------------------------------------------------------------- - dev/tasks/homebrew-formulae/apache-arrow.rb has the following license: BSD 2-Clause License @@ -38107,11 +38520,11 @@ Contents of probable licence file $GOMODCACHE/github.com/fearful-symmetry/gomsr@ -------------------------------------------------------------------------------- Dependency : github.com/felixge/httpsnoop -Version: v1.0.1 +Version: v1.0.4 Licence type (autodetected): MIT -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/github.com/felixge/httpsnoop@v1.0.1/LICENSE.txt: +Contents of probable licence file $GOMODCACHE/github.com/felixge/httpsnoop@v1.0.4/LICENSE.txt: Copyright (c) 2016 Felix Geisendörfer (felix@debuggable.com) @@ -41202,11 +41615,11 @@ Contents of probable licence file $GOMODCACHE/github.com/google/martian@v2.1.0+i -------------------------------------------------------------------------------- Dependency : github.com/google/martian/v3 -Version: v3.3.2 +Version: v3.3.3 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/github.com/google/martian/v3@v3.3.2/LICENSE: +Contents of probable licence file $GOMODCACHE/github.com/google/martian/v3@v3.3.3/LICENSE: Apache License @@ -41626,11 +42039,11 @@ Contents of probable licence file $GOMODCACHE/github.com/google/pprof@v0.0.0-202 -------------------------------------------------------------------------------- Dependency : github.com/google/s2a-go -Version: v0.1.4 +Version: v0.1.7 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/github.com/google/s2a-go@v0.1.4/LICENSE.md: +Contents of probable licence file $GOMODCACHE/github.com/google/s2a-go@v0.1.7/LICENSE.md: Apache License @@ -42050,11 +42463,11 @@ Contents of probable licence file $GOMODCACHE/github.com/google/shlex@v0.0.0-201 -------------------------------------------------------------------------------- Dependency : github.com/googleapis/enterprise-certificate-proxy -Version: v0.2.4 +Version: v0.3.2 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/github.com/googleapis/enterprise-certificate-proxy@v0.2.4/LICENSE: +Contents of probable licence file $GOMODCACHE/github.com/googleapis/enterprise-certificate-proxy@v0.3.2/LICENSE: Apache License @@ -50242,11 +50655,11 @@ SOFTWARE. -------------------------------------------------------------------------------- Dependency : github.com/tidwall/pretty -Version: v1.0.0 +Version: v1.2.0 Licence type (autodetected): MIT -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/github.com/tidwall/pretty@v1.0.0/LICENSE: +Contents of probable licence file $GOMODCACHE/github.com/tidwall/pretty@v1.2.0/LICENSE: The MIT License (MIT) @@ -51513,6 +51926,35 @@ ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +-------------------------------------------------------------------------------- +Dependency : go.einride.tech/aip +Version: v0.67.1 +Licence type (autodetected): MIT +-------------------------------------------------------------------------------- + +Contents of probable licence file $GOMODCACHE/go.einride.tech/aip@v0.67.1/LICENSE: + +Copyright 2020 Einride AB + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + -------------------------------------------------------------------------------- Dependency : go.elastic.co/fastjson Version: v1.1.0 @@ -51758,12 +52200,12 @@ Contents of probable licence file $GOMODCACHE/go.opencensus.io@v0.24.0/LICENSE: limitations under the License. -------------------------------------------------------------------------------- -Dependency : go.opentelemetry.io/otel -Version: v1.24.0 +Dependency : go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc +Version: v0.49.0 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/go.opentelemetry.io/otel@v1.24.0/LICENSE: +Contents of probable licence file $GOMODCACHE/go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc@v0.49.0/LICENSE: Apache License Version 2.0, January 2004 @@ -51969,12 +52411,12 @@ Contents of probable licence file $GOMODCACHE/go.opentelemetry.io/otel@v1.24.0/L -------------------------------------------------------------------------------- -Dependency : go.opentelemetry.io/otel/metric -Version: v1.24.0 +Dependency : go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp +Version: v0.49.0 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/go.opentelemetry.io/otel/metric@v1.24.0/LICENSE: +Contents of probable licence file $GOMODCACHE/go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp@v0.49.0/LICENSE: Apache License Version 2.0, January 2004 @@ -52180,12 +52622,12 @@ Contents of probable licence file $GOMODCACHE/go.opentelemetry.io/otel/metric@v1 -------------------------------------------------------------------------------- -Dependency : go.opentelemetry.io/otel/sdk -Version: v1.21.0 +Dependency : go.opentelemetry.io/otel +Version: v1.24.0 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/go.opentelemetry.io/otel/sdk@v1.21.0/LICENSE: +Contents of probable licence file $GOMODCACHE/go.opentelemetry.io/otel@v1.24.0/LICENSE: Apache License Version 2.0, January 2004 @@ -52391,12 +52833,12 @@ Contents of probable licence file $GOMODCACHE/go.opentelemetry.io/otel/sdk@v1.21 -------------------------------------------------------------------------------- -Dependency : go.opentelemetry.io/otel/trace +Dependency : go.opentelemetry.io/otel/metric Version: v1.24.0 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/go.opentelemetry.io/otel/trace@v1.24.0/LICENSE: +Contents of probable licence file $GOMODCACHE/go.opentelemetry.io/otel/metric@v1.24.0/LICENSE: Apache License Version 2.0, January 2004 @@ -52602,216 +53044,223 @@ Contents of probable licence file $GOMODCACHE/go.opentelemetry.io/otel/trace@v1. -------------------------------------------------------------------------------- -Dependency : go.uber.org/atomic -Version: v1.11.0 -Licence type (autodetected): MIT +Dependency : go.opentelemetry.io/otel/sdk +Version: v1.24.0 +Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/go.uber.org/atomic@v1.11.0/LICENSE.txt: - -Copyright (c) 2016 Uber Technologies, Inc. - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. - +Contents of probable licence file $GOMODCACHE/go.opentelemetry.io/otel/sdk@v1.24.0/LICENSE: --------------------------------------------------------------------------------- -Dependency : go.uber.org/goleak -Version: v1.3.0 -Licence type (autodetected): MIT --------------------------------------------------------------------------------- + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ -Contents of probable licence file $GOMODCACHE/go.uber.org/goleak@v1.3.0/LICENSE: + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION -The MIT License (MIT) + 1. Definitions. -Copyright (c) 2018 Uber Technologies, Inc. + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. --------------------------------------------------------------------------------- -Dependency : golang.org/x/exp -Version: v0.0.0-20231127185646-65229373498e -Licence type (autodetected): BSD-3-Clause --------------------------------------------------------------------------------- + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. -Contents of probable licence file $GOMODCACHE/golang.org/x/exp@v0.0.0-20231127185646-65229373498e/LICENSE: + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). -Copyright (c) 2009 The Go Authors. All rights reserved. + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." - * Redistributions of source code must retain the above copyright -notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above -copyright notice, this list of conditions and the following disclaimer -in the documentation and/or other materials provided with the -distribution. - * Neither the name of Google Inc. nor the names of its -contributors may be used to endorse or promote products derived from -this software without specific prior written permission. + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. --------------------------------------------------------------------------------- -Dependency : golang.org/x/term -Version: v0.22.0 -Licence type (autodetected): BSD-3-Clause --------------------------------------------------------------------------------- + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: -Contents of probable licence file $GOMODCACHE/golang.org/x/term@v0.22.0/LICENSE: + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and -Copyright (c) 2009 The Go Authors. All rights reserved. + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and - * Redistributions of source code must retain the above copyright -notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above -copyright notice, this list of conditions and the following disclaimer -in the documentation and/or other materials provided with the -distribution. - * Neither the name of Google Inc. nor the names of its -contributors may be used to endorse or promote products derived from -this software without specific prior written permission. + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. --------------------------------------------------------------------------------- -Dependency : golang.org/x/xerrors -Version: v0.0.0-20220907171357-04be3eba64a2 -Licence type (autodetected): BSD-3-Clause --------------------------------------------------------------------------------- + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. -Contents of probable licence file $GOMODCACHE/golang.org/x/xerrors@v0.0.0-20220907171357-04be3eba64a2/LICENSE: + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. -Copyright (c) 2019 The Go Authors. All rights reserved. + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are -met: + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. - * Redistributions of source code must retain the above copyright -notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above -copyright notice, this list of conditions and the following disclaimer -in the documentation and/or other materials provided with the -distribution. - * Neither the name of Google Inc. nor the names of its -contributors may be used to endorse or promote products derived from -this software without specific prior written permission. + END OF TERMS AND CONDITIONS -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + APPENDIX: How to apply the Apache License to your work. + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. --------------------------------------------------------------------------------- -Dependency : gonum.org/v1/gonum -Version: v0.12.0 -Licence type (autodetected): BSD-3-Clause --------------------------------------------------------------------------------- + Copyright [yyyy] [name of copyright owner] -Contents of probable licence file $GOMODCACHE/gonum.org/v1/gonum@v0.12.0/LICENSE: + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at -Copyright ©2013 The Gonum Authors. All rights reserved. + http://www.apache.org/licenses/LICENSE-2.0 -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - * Neither the name of the Gonum project nor the names of its authors and - contributors may be used to endorse or promote products derived from this - software without specific prior written permission. + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND -ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE -FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -------------------------------------------------------------------------------- -Dependency : google.golang.org/appengine -Version: v1.6.7 +Dependency : go.opentelemetry.io/otel/trace +Version: v1.24.0 Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/google.golang.org/appengine@v1.6.7/LICENSE: - +Contents of probable licence file $GOMODCACHE/go.opentelemetry.io/otel/trace@v1.24.0/LICENSE: Apache License Version 2.0, January 2004 @@ -53016,13 +53465,216 @@ Contents of probable licence file $GOMODCACHE/google.golang.org/appengine@v1.6.7 limitations under the License. +-------------------------------------------------------------------------------- +Dependency : go.uber.org/atomic +Version: v1.11.0 +Licence type (autodetected): MIT +-------------------------------------------------------------------------------- + +Contents of probable licence file $GOMODCACHE/go.uber.org/atomic@v1.11.0/LICENSE.txt: + +Copyright (c) 2016 Uber Technologies, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +-------------------------------------------------------------------------------- +Dependency : go.uber.org/goleak +Version: v1.3.0 +Licence type (autodetected): MIT +-------------------------------------------------------------------------------- + +Contents of probable licence file $GOMODCACHE/go.uber.org/goleak@v1.3.0/LICENSE: + +The MIT License (MIT) + +Copyright (c) 2018 Uber Technologies, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + + +-------------------------------------------------------------------------------- +Dependency : golang.org/x/exp +Version: v0.0.0-20231127185646-65229373498e +Licence type (autodetected): BSD-3-Clause +-------------------------------------------------------------------------------- + +Contents of probable licence file $GOMODCACHE/golang.org/x/exp@v0.0.0-20231127185646-65229373498e/LICENSE: + +Copyright (c) 2009 The Go Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +-------------------------------------------------------------------------------- +Dependency : golang.org/x/term +Version: v0.22.0 +Licence type (autodetected): BSD-3-Clause +-------------------------------------------------------------------------------- + +Contents of probable licence file $GOMODCACHE/golang.org/x/term@v0.22.0/LICENSE: + +Copyright (c) 2009 The Go Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +-------------------------------------------------------------------------------- +Dependency : golang.org/x/xerrors +Version: v0.0.0-20231012003039-104605ab7028 +Licence type (autodetected): BSD-3-Clause +-------------------------------------------------------------------------------- + +Contents of probable licence file $GOMODCACHE/golang.org/x/xerrors@v0.0.0-20231012003039-104605ab7028/LICENSE: + +Copyright (c) 2019 The Go Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are +met: + + * Redistributions of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above +copyright notice, this list of conditions and the following disclaimer +in the documentation and/or other materials provided with the +distribution. + * Neither the name of Google Inc. nor the names of its +contributors may be used to endorse or promote products derived from +this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +-------------------------------------------------------------------------------- +Dependency : gonum.org/v1/gonum +Version: v0.12.0 +Licence type (autodetected): BSD-3-Clause +-------------------------------------------------------------------------------- + +Contents of probable licence file $GOMODCACHE/gonum.org/v1/gonum@v0.12.0/LICENSE: + +Copyright ©2013 The Gonum Authors. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + * Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the name of the Gonum project nor the names of its authors and + contributors may be used to endorse or promote products derived from this + software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + -------------------------------------------------------------------------------- Dependency : google.golang.org/genproto -Version: v0.0.0-20230920204549-e6e6cdab5c13 +Version: v0.0.0-20240708141625-4ad9e859172b Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/google.golang.org/genproto@v0.0.0-20230920204549-e6e6cdab5c13/LICENSE: +Contents of probable licence file $GOMODCACHE/google.golang.org/genproto@v0.0.0-20240708141625-4ad9e859172b/LICENSE: Apache License @@ -53230,11 +53882,11 @@ Contents of probable licence file $GOMODCACHE/google.golang.org/genproto@v0.0.0- -------------------------------------------------------------------------------- Dependency : google.golang.org/genproto/googleapis/rpc -Version: v0.0.0-20231002182017-d307bd883b97 +Version: v0.0.0-20240708141625-4ad9e859172b Licence type (autodetected): Apache-2.0 -------------------------------------------------------------------------------- -Contents of probable licence file $GOMODCACHE/google.golang.org/genproto/googleapis/rpc@v0.0.0-20231002182017-d307bd883b97/LICENSE: +Contents of probable licence file $GOMODCACHE/google.golang.org/genproto/googleapis/rpc@v0.0.0-20240708141625-4ad9e859172b/LICENSE: Apache License diff --git a/filebeat/input/input.go b/filebeat/input/input.go index d52d63e0f85..2d8faa0b08f 100644 --- a/filebeat/input/input.go +++ b/filebeat/input/input.go @@ -24,6 +24,7 @@ import ( "github.com/elastic/beats/v7/filebeat/channel" "github.com/elastic/beats/v7/filebeat/input/file" + "github.com/elastic/beats/v7/libbeat/management/status" conf "github.com/elastic/elastic-agent-libs/config" "github.com/elastic/elastic-agent-libs/logp" "github.com/elastic/elastic-agent-libs/monitoring" @@ -48,12 +49,13 @@ type Input interface { // Runner encapsulate the lifecycle of the input type Runner struct { - config inputConfig - input Input - done chan struct{} - wg *sync.WaitGroup - Once bool - beatDone chan struct{} + config inputConfig + input Input + done chan struct{} + wg *sync.WaitGroup + Once bool + beatDone chan struct{} + statusReporter status.StatusReporter } // New instantiates a new Runner @@ -83,10 +85,11 @@ func New( } context := Context{ - States: states, - Done: input.done, - BeatDone: input.beatDone, - Meta: nil, + States: states, + Done: input.done, + BeatDone: input.beatDone, + Meta: nil, + GetStatusReporter: input.GetStatusReporter, } var ipt Input ipt, err = f(conf, connector, context) @@ -164,3 +167,11 @@ func (p *Runner) stop() { func (p *Runner) String() string { return fmt.Sprintf("input [type=%s]", p.config.Type) } + +func (p *Runner) SetStatusReporter(statusReporter status.StatusReporter) { + p.statusReporter = statusReporter +} + +func (p *Runner) GetStatusReporter() status.StatusReporter { + return p.statusReporter +} diff --git a/filebeat/input/log/input.go b/filebeat/input/log/input.go index 4882735d36b..40c42ddeebd 100644 --- a/filebeat/input/log/input.go +++ b/filebeat/input/log/input.go @@ -37,6 +37,7 @@ import ( "github.com/elastic/beats/v7/libbeat/common" "github.com/elastic/beats/v7/libbeat/common/atomic" "github.com/elastic/beats/v7/libbeat/common/cfgwarn" + "github.com/elastic/beats/v7/libbeat/management/status" conf "github.com/elastic/elastic-agent-libs/config" "github.com/elastic/elastic-agent-libs/logp" "github.com/elastic/elastic-agent-libs/monitoring" @@ -78,6 +79,7 @@ type Input struct { meta map[string]string stopOnce sync.Once fileStateIdentifier file.StateIdentifier + getStatusReporter input.GetStatusReporter } // NewInput instantiates a new Log @@ -157,8 +159,11 @@ func NewInput( done: context.Done, meta: meta, fileStateIdentifier: identifier, + getStatusReporter: context.GetStatusReporter, } + p.updateStatus(status.Starting, "starting the log input") + // Create empty harvester to check if configs are fine // TODO: Do config validation instead _, err = p.createHarvester(logger, file.State{}, nil) @@ -224,6 +229,9 @@ func (p *Input) loadStates(states []file.State) error { // Run runs the input func (p *Input) Run() { + // Mark it Running for now. + // Any errors encountered in this loop will change state to degraded + p.updateStatus(status.Running, "") logger := p.logger logger.Debug("Start next scan") @@ -558,6 +566,7 @@ func (p *Input) scan() { continue } if err != nil { + p.updateStatus(status.Degraded, fmt.Sprintf(harvesterErrMsg, newState.Source, err)) logger.Errorf(harvesterErrMsg, newState.Source, err) } } else { @@ -583,6 +592,7 @@ func (p *Input) harvestExistingFile(logger *logp.Logger, newState file.State, ol logger.Debugf("Resuming harvesting of file: %s, offset: %d, new size: %d", newState.Source, oldState.Offset, newState.Fileinfo.Size()) err := p.startHarvester(logger, newState, oldState.Offset) if err != nil { + p.updateStatus(status.Degraded, fmt.Sprintf("Harvester could not be started on existing file: %s, Err: %s", newState.Source, err)) logger.Errorf("Harvester could not be started on existing file: %s, Err: %s", newState.Source, err) } return @@ -593,6 +603,7 @@ func (p *Input) harvestExistingFile(logger *logp.Logger, newState file.State, ol logger.Debugf("Old file was truncated. Starting from the beginning: %s, offset: %d, new size: %d ", newState.Source, newState.Offset, newState.Fileinfo.Size()) err := p.startHarvester(logger, newState, 0) if err != nil { + p.updateStatus(status.Degraded, fmt.Sprintf("Harvester could not be started on truncated file: %s, Err: %s", newState.Source, err)) logger.Errorf("Harvester could not be started on truncated file: %s, Err: %s", newState.Source, err) } @@ -833,3 +844,12 @@ func (p *Input) stopWhenDone() { p.Wait() } + +func (p *Input) updateStatus(status status.Status, msg string) { + if p.getStatusReporter == nil { + return + } + if reporter := p.getStatusReporter(); reporter != nil { + reporter.UpdateStatus(status, msg) + } +} diff --git a/filebeat/input/registry.go b/filebeat/input/registry.go index 829cf16866c..18e35fa2274 100644 --- a/filebeat/input/registry.go +++ b/filebeat/input/registry.go @@ -22,15 +22,19 @@ import ( "github.com/elastic/beats/v7/filebeat/channel" "github.com/elastic/beats/v7/filebeat/input/file" + "github.com/elastic/beats/v7/libbeat/management/status" conf "github.com/elastic/elastic-agent-libs/config" "github.com/elastic/elastic-agent-libs/logp" ) +type GetStatusReporter func() status.StatusReporter + type Context struct { - States []file.State - Done chan struct{} - BeatDone chan struct{} - Meta map[string]string + States []file.State + Done chan struct{} + BeatDone chan struct{} + Meta map[string]string + GetStatusReporter GetStatusReporter } // Factory is used to register functions creating new Input instances. diff --git a/go.mod b/go.mod index 02387bf18c5..3fce425c6be 100644 --- a/go.mod +++ b/go.mod @@ -5,9 +5,9 @@ go 1.21.0 toolchain go1.21.12 require ( - cloud.google.com/go/bigquery v1.55.0 - cloud.google.com/go/monitoring v1.16.0 - cloud.google.com/go/pubsub v1.33.0 + cloud.google.com/go/bigquery v1.62.0 + cloud.google.com/go/monitoring v1.20.1 + cloud.google.com/go/pubsub v1.40.0 code.cloudfoundry.org/go-diodes v0.0.0-20190809170250-f77fb823c7ee // indirect code.cloudfoundry.org/go-loggregator v7.4.0+incompatible code.cloudfoundry.org/rfc5424 v0.0.0-20180905210152-236a6d29298a // indirect @@ -15,7 +15,7 @@ require ( github.com/Azure/azure-sdk-for-go v65.0.0+incompatible github.com/Azure/azure-storage-blob-go v0.15.0 github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161 // indirect - github.com/Azure/go-autorest/autorest v0.11.28 + github.com/Azure/go-autorest/autorest v0.11.29 github.com/Azure/go-autorest/autorest/date v0.3.0 github.com/Masterminds/semver v1.5.0 // indirect github.com/Microsoft/go-winio v0.6.1 @@ -68,7 +68,7 @@ require ( github.com/dustin/go-humanize v1.0.1 github.com/eapache/go-resiliency v1.2.0 github.com/eclipse/paho.mqtt.golang v1.3.5 - github.com/elastic/elastic-agent-client/v7 v7.14.0 + github.com/elastic/elastic-agent-client/v7 v7.15.0 github.com/elastic/go-concert v0.3.0 github.com/elastic/go-libaudit/v2 v2.5.0 github.com/elastic/go-licenser v0.4.2 @@ -146,16 +146,16 @@ require ( golang.org/x/crypto v0.25.0 golang.org/x/mod v0.19.0 golang.org/x/net v0.27.0 - golang.org/x/oauth2 v0.10.0 + golang.org/x/oauth2 v0.21.0 golang.org/x/sync v0.7.0 golang.org/x/sys v0.22.0 golang.org/x/text v0.16.0 golang.org/x/time v0.5.0 golang.org/x/tools v0.23.0 - google.golang.org/api v0.128.0 - google.golang.org/genproto v0.0.0-20230920204549-e6e6cdab5c13 // indirect - google.golang.org/grpc v1.58.3 - google.golang.org/protobuf v1.33.0 + google.golang.org/api v0.188.0 + google.golang.org/genproto v0.0.0-20240708141625-4ad9e859172b // indirect + google.golang.org/grpc v1.64.1 + google.golang.org/protobuf v1.34.2 gopkg.in/inf.v0 v0.9.1 gopkg.in/jcmturner/aescts.v1 v1.0.1 // indirect gopkg.in/jcmturner/dnsutils.v1 v1.0.1 // indirect @@ -171,9 +171,9 @@ require ( ) require ( - cloud.google.com/go v0.110.8 - cloud.google.com/go/compute v1.23.0 - cloud.google.com/go/redis v1.13.1 + cloud.google.com/go v0.115.0 + cloud.google.com/go/compute v1.27.2 + cloud.google.com/go/redis v1.16.2 github.com/Azure/azure-sdk-for-go/sdk/azcore v1.12.0 github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.7.0 github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/consumption/armconsumption v1.1.0 @@ -182,7 +182,7 @@ require ( github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/monitor/armmonitor v0.8.0 github.com/Azure/azure-sdk-for-go/sdk/resourcemanager/resources/armresources v1.1.1 github.com/Azure/azure-sdk-for-go/sdk/storage/azblob v1.3.2 - github.com/Azure/go-autorest/autorest/adal v0.9.21 + github.com/Azure/go-autorest/autorest/adal v0.9.22 github.com/apache/arrow/go/v14 v14.0.2 github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.1 github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.16.15 @@ -195,8 +195,8 @@ require ( github.com/elastic/bayeux v1.0.5 github.com/elastic/ebpfevents v0.6.0 github.com/elastic/elastic-agent-autodiscover v0.7.0 - github.com/elastic/elastic-agent-libs v0.9.13 - github.com/elastic/elastic-agent-system-metrics v0.10.3 + github.com/elastic/elastic-agent-libs v0.9.15 + github.com/elastic/elastic-agent-system-metrics v0.10.6-0.20240723152150-0f81a1e67528 github.com/elastic/go-elasticsearch/v8 v8.14.0 github.com/elastic/go-sfdc v0.0.0-20240621062639-bcc8456508ff github.com/elastic/mito v1.13.0 @@ -206,7 +206,7 @@ require ( github.com/go-ldap/ldap/v3 v3.4.6 github.com/golang-jwt/jwt/v5 v5.2.1 github.com/google/cel-go v0.19.0 - github.com/googleapis/gax-go/v2 v2.12.0 + github.com/googleapis/gax-go/v2 v2.12.5 github.com/gorilla/handlers v1.5.1 github.com/gorilla/mux v1.8.0 github.com/gorilla/websocket v1.5.0 @@ -221,15 +221,17 @@ require ( go.elastic.co/apm/module/apmhttp/v2 v2.6.0 go.elastic.co/apm/v2 v2.6.0 go.mongodb.org/mongo-driver v1.5.1 - google.golang.org/genproto/googleapis/api v0.0.0-20230913181813-007df8e322eb + google.golang.org/genproto/googleapis/api v0.0.0-20240701130421-f6361c86f094 gopkg.in/natefinch/lumberjack.v2 v2.2.1 ) require ( aqwari.net/xml v0.0.0-20210331023308-d9421b293817 // indirect - cloud.google.com/go/compute/metadata v0.2.3 // indirect - cloud.google.com/go/iam v1.1.2 // indirect - cloud.google.com/go/longrunning v0.5.1 // indirect + cloud.google.com/go/auth v0.7.0 // indirect + cloud.google.com/go/auth/oauth2adapt v0.2.2 // indirect + cloud.google.com/go/compute/metadata v0.4.0 // indirect + cloud.google.com/go/iam v1.1.10 // indirect + cloud.google.com/go/longrunning v0.5.9 // indirect code.cloudfoundry.org/gofileutils v0.0.0-20170111115228-4d0c80011a0f // indirect github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24 // indirect github.com/Azure/azure-amqp-common-go/v4 v4.2.0 // indirect @@ -246,7 +248,7 @@ require ( github.com/JohnCGriffin/overflow v0.0.0-20211019200055-46fa312c352c // indirect github.com/andybalholm/brotli v1.0.5 // indirect github.com/antlr4-go/antlr/v4 v4.13.0 // indirect - github.com/apache/arrow/go/v12 v12.0.0 // indirect + github.com/apache/arrow/go/v15 v15.0.2 // indirect github.com/apache/thrift v0.19.0 // indirect github.com/armon/go-radix v1.0.0 // indirect github.com/aws/aws-sdk-go v1.38.60 // indirect @@ -278,7 +280,7 @@ require ( github.com/emicklei/go-restful/v3 v3.11.0 // indirect github.com/evanphx/json-patch v4.12.0+incompatible // indirect github.com/fearful-symmetry/gomsr v0.0.1 // indirect - github.com/felixge/httpsnoop v1.0.1 // indirect + github.com/felixge/httpsnoop v1.0.4 // indirect github.com/go-asn1-ber/asn1-ber v1.5.5 // indirect github.com/go-logfmt/logfmt v0.5.1 // indirect github.com/go-logr/logr v1.4.1 // indirect @@ -299,9 +301,9 @@ require ( github.com/golang/protobuf v1.5.4 // indirect github.com/google/gnostic-models v0.6.8 // indirect github.com/google/licenseclassifier v0.0.0-20221004142553-c1ed8fcf4bab // indirect - github.com/google/s2a-go v0.1.4 // indirect + github.com/google/s2a-go v0.1.7 // indirect github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 // indirect - github.com/googleapis/enterprise-certificate-proxy v0.2.4 // indirect + github.com/googleapis/enterprise-certificate-proxy v0.3.2 // indirect github.com/hashicorp/cronexpr v1.1.0 // indirect github.com/hashicorp/go-cleanhttp v0.5.2 // indirect github.com/hashicorp/go-rootcerts v1.0.2 // indirect @@ -360,14 +362,15 @@ require ( github.com/zeebo/xxh3 v1.0.2 // indirect go.elastic.co/fastjson v1.1.0 // indirect go.opencensus.io v0.24.0 // indirect + go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0 // indirect + go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 // indirect go.opentelemetry.io/otel v1.24.0 // indirect go.opentelemetry.io/otel/metric v1.24.0 // indirect go.opentelemetry.io/otel/trace v1.24.0 // indirect golang.org/x/exp v0.0.0-20231127185646-65229373498e // indirect golang.org/x/term v0.22.0 // indirect - golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect - google.golang.org/appengine v1.6.7 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20231002182017-d307bd883b97 // indirect + golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20240708141625-4ad9e859172b // indirect gopkg.in/yaml.v3 v3.0.1 // indirect k8s.io/klog/v2 v2.110.1 // indirect k8s.io/kube-openapi v0.0.0-20231010175941-2dd684a91f00 // indirect @@ -380,7 +383,7 @@ require ( ) require ( - cloud.google.com/go/storage v1.30.1 + cloud.google.com/go/storage v1.42.0 github.com/dlclark/regexp2 v1.4.0 // indirect github.com/docker/distribution v2.8.2+incompatible // indirect github.com/google/gofuzz v1.2.0 // indirect diff --git a/go.sum b/go.sum index ebfeadc231b..b9c443f75c2 100644 --- a/go.sum +++ b/go.sum @@ -23,49 +23,53 @@ cloud.google.com/go v0.78.0/go.mod h1:QjdrLG0uq+YwhjoVOLsS1t7TW8fs36kLs4XO5R5ECH cloud.google.com/go v0.79.0/go.mod h1:3bzgcEeQlzbuEAYu4mrWhKqWjmpprinYgKJLgKHnbb8= cloud.google.com/go v0.81.0/go.mod h1:mk/AM35KwGk/Nm2YSeZbxXdrNK3KZOYHmLkOqC2V6E0= cloud.google.com/go v0.83.0/go.mod h1:Z7MJUsANfY0pYPdw0lbnivPx4/vhy/e2FEkSkF7vAVY= -cloud.google.com/go v0.110.8 h1:tyNdfIxjzaWctIiLYOTalaLKZ17SI44SKFW26QbOhME= -cloud.google.com/go v0.110.8/go.mod h1:Iz8AkXJf1qmxC3Oxoep8R1T36w8B92yU29PcBhHO5fk= +cloud.google.com/go v0.115.0 h1:CnFSK6Xo3lDYRoBKEcAtia6VSC837/ZkJuRduSFnr14= +cloud.google.com/go v0.115.0/go.mod h1:8jIM5vVgoAEoiVxQ/O4BFTfHqulPZgs/ufEzMcFMdWU= +cloud.google.com/go/auth v0.7.0 h1:kf/x9B3WTbBUHkC+1VS8wwwli9TzhSt0vSTVBmMR8Ts= +cloud.google.com/go/auth v0.7.0/go.mod h1:D+WqdrpcjmiCgWrXmLLxOVq1GACoE36chW6KXoEvuIw= +cloud.google.com/go/auth/oauth2adapt v0.2.2 h1:+TTV8aXpjeChS9M+aTtN/TjdQnzJvmzKFt//oWu7HX4= +cloud.google.com/go/auth/oauth2adapt v0.2.2/go.mod h1:wcYjgpZI9+Yu7LyYBg4pqSiaRkfEK3GQcpb7C/uyF1Q= cloud.google.com/go/bigquery v1.0.1/go.mod h1:i/xbL2UlR5RvWAURpBYZTtm/cXjCha9lbfbpx4poX+o= cloud.google.com/go/bigquery v1.3.0/go.mod h1:PjpwJnslEMmckchkHFfq+HTD2DmtT67aNFKH1/VBDHE= cloud.google.com/go/bigquery v1.4.0/go.mod h1:S8dzgnTigyfTmLBfrtrhyYhwRxG72rYxvftPBK2Dvzc= cloud.google.com/go/bigquery v1.5.0/go.mod h1:snEHRnqQbz117VIFhE8bmtwIDY80NLUZUMb4Nv6dBIg= cloud.google.com/go/bigquery v1.7.0/go.mod h1://okPTzCYNXSlb24MZs83e2Do+h+VXtc4gLoIoXIAPc= cloud.google.com/go/bigquery v1.8.0/go.mod h1:J5hqkt3O0uAFnINi6JXValWIb1v0goeZM77hZzJN/fQ= -cloud.google.com/go/bigquery v1.55.0 h1:hs44Xxov3XLWQiCx2J8lK5U/ihLqnpm4RVVl5fdtLLI= -cloud.google.com/go/bigquery v1.55.0/go.mod h1:9Y5I3PN9kQWuid6183JFhOGOW3GcirA5LpsKCUn+2ec= +cloud.google.com/go/bigquery v1.62.0 h1:SYEA2f7fKqbSRRBHb7g0iHTtZvtPSPYdXfmqsjpsBwo= +cloud.google.com/go/bigquery v1.62.0/go.mod h1:5ee+ZkF1x/ntgCsFQJAQTM3QkAZOecfCmvxhkJsWRSA= cloud.google.com/go/bigtable v1.2.0/go.mod h1:JcVAOl45lrTmQfLj7T6TxyMzIN/3FGGcFm+2xVAli2o= cloud.google.com/go/bigtable v1.3.0/go.mod h1:z5EyKrPE8OQmeg4h5MNdKvuSnI9CCT49Ki3f23aBzio= -cloud.google.com/go/compute v1.23.0 h1:tP41Zoavr8ptEqaW6j+LQOnyBBhO7OkOMAGrgLopTwY= -cloud.google.com/go/compute v1.23.0/go.mod h1:4tCnrn48xsqlwSAiLf1HXMQk8CONslYbdiEZc9FEIbM= -cloud.google.com/go/compute/metadata v0.2.3 h1:mg4jlk7mCAj6xXp9UJ4fjI9VUI5rubuGBW5aJ7UnBMY= -cloud.google.com/go/compute/metadata v0.2.3/go.mod h1:VAV5nSsACxMJvgaAuX6Pk2AawlZn8kiOGuCv6gTkwuA= -cloud.google.com/go/datacatalog v1.17.1 h1:qGWrlYvWtK+8jD1jhwq5BsGoSr7S4/LOroV7LwXi00g= -cloud.google.com/go/datacatalog v1.17.1/go.mod h1:nCSYFHgtxh2MiEktWIz71s/X+7ds/UT9kp0PC7waCzE= +cloud.google.com/go/compute v1.27.2 h1:5cE5hdrwJV/92ravlwIFRGnyH9CpLGhh4N0ZDVTU+BA= +cloud.google.com/go/compute v1.27.2/go.mod h1:YQuHkNEwP3bIz4LBYQqf4DIMfFtTDtnEgnwG0mJQQ9I= +cloud.google.com/go/compute/metadata v0.4.0 h1:vHzJCWaM4g8XIcm8kopr3XmDA4Gy/lblD3EhhSux05c= +cloud.google.com/go/compute/metadata v0.4.0/go.mod h1:SIQh1Kkb4ZJ8zJ874fqVkslA29PRXuleyj6vOzlbK7M= +cloud.google.com/go/datacatalog v1.20.3 h1:lzMtWaUlaz9Bd9anvq2KBZwcFujzhVuxhIz1MsqRJv8= +cloud.google.com/go/datacatalog v1.20.3/go.mod h1:AKC6vAy5urnMg5eJK3oUjy8oa5zMbiY33h125l8lmlo= cloud.google.com/go/datastore v1.0.0/go.mod h1:LXYbyblFSglQ5pkeyhO+Qmw7ukd3C+pD7TKLgZqpHYE= cloud.google.com/go/datastore v1.1.0/go.mod h1:umbIZjpQpHh4hmRpGhH4tLFup+FVzqBi1b3c64qFpCk= -cloud.google.com/go/iam v1.1.2 h1:gacbrBdWcoVmGLozRuStX45YKvJtzIjJdAolzUs1sm4= -cloud.google.com/go/iam v1.1.2/go.mod h1:A5avdyVL2tCppe4unb0951eI9jreack+RJ0/d+KUZOU= -cloud.google.com/go/kms v1.15.2 h1:lh6qra6oC4AyWe5fUUUBe/S27k12OHAleOOOw6KakdE= -cloud.google.com/go/kms v1.15.2/go.mod h1:3hopT4+7ooWRCjc2DxgnpESFxhIraaI2IpAVUEhbT/w= -cloud.google.com/go/longrunning v0.5.1 h1:Fr7TXftcqTudoyRJa113hyaqlGdiBQkp0Gq7tErFDWI= -cloud.google.com/go/longrunning v0.5.1/go.mod h1:spvimkwdz6SPWKEt/XBij79E9fiTkHSQl/fRUUQJYJc= -cloud.google.com/go/monitoring v1.16.0 h1:rlndy4K8yknMY9JuGe2aK4SbCh21FXoCdX7SAGHmRgI= -cloud.google.com/go/monitoring v1.16.0/go.mod h1:Ptp15HgAyM1fNICAojDMoNc/wUmn67mLHQfyqbw+poY= +cloud.google.com/go/iam v1.1.10 h1:ZSAr64oEhQSClwBL670MsJAW5/RLiC6kfw3Bqmd5ZDI= +cloud.google.com/go/iam v1.1.10/go.mod h1:iEgMq62sg8zx446GCaijmA2Miwg5o3UbO+nI47WHJps= +cloud.google.com/go/kms v1.18.2 h1:EGgD0B9k9tOOkbPhYW1PHo2W0teamAUYMOUIcDRMfPk= +cloud.google.com/go/kms v1.18.2/go.mod h1:YFz1LYrnGsXARuRePL729oINmN5J/5e7nYijgvfiIeY= +cloud.google.com/go/longrunning v0.5.9 h1:haH9pAuXdPAMqHvzX0zlWQigXT7B0+CL4/2nXXdBo5k= +cloud.google.com/go/longrunning v0.5.9/go.mod h1:HD+0l9/OOW0za6UWdKJtXoFAX/BGg/3Wj8p10NeWF7c= +cloud.google.com/go/monitoring v1.20.1 h1:XmM6uk4+mI2ZhWdI2n/2GNhJdpeQN+1VdG2UWEDhX48= +cloud.google.com/go/monitoring v1.20.1/go.mod h1:FYSe/brgfuaXiEzOQFhTjsEsJv+WePyK71X7Y8qo6uQ= cloud.google.com/go/pubsub v1.0.1/go.mod h1:R0Gpsv3s54REJCy4fxDixWD93lHJMoZTyQ2kNxGRt3I= cloud.google.com/go/pubsub v1.1.0/go.mod h1:EwwdRX2sKPjnvnqCa270oGRyludottCI76h+R3AArQw= cloud.google.com/go/pubsub v1.2.0/go.mod h1:jhfEVHT8odbXTkndysNHCcx0awwzvfOlguIAii9o8iA= cloud.google.com/go/pubsub v1.3.1/go.mod h1:i+ucay31+CNRpDW4Lu78I4xXG+O1r/MAHgjpRVR+TSU= -cloud.google.com/go/pubsub v1.33.0 h1:6SPCPvWav64tj0sVX/+npCBKhUi/UjJehy9op/V3p2g= -cloud.google.com/go/pubsub v1.33.0/go.mod h1:f+w71I33OMyxf9VpMVcZbnG5KSUkCOUHYpFd5U1GdRc= -cloud.google.com/go/redis v1.13.1 h1:YrjQnCC7ydk+k30op7DSjSHw1yAYhqYXFcOq1bSXRYA= -cloud.google.com/go/redis v1.13.1/go.mod h1:VP7DGLpE91M6bcsDdMuyCm2hIpB6Vp2hI090Mfd1tcg= +cloud.google.com/go/pubsub v1.40.0 h1:0LdP+zj5XaPAGtWr2V6r88VXJlmtaB/+fde1q3TU8M0= +cloud.google.com/go/pubsub v1.40.0/go.mod h1:BVJI4sI2FyXp36KFKvFwcfDRDfR8MiLT8mMhmIhdAeA= +cloud.google.com/go/redis v1.16.2 h1:QbarPMu22tuUOqi3ynNKk2mQWl7xitMTxAaAUaBUFsE= +cloud.google.com/go/redis v1.16.2/go.mod h1:bn/4nXSZkoH4QTXRjqWR2AZ0WA1b13ct354nul2SSiU= cloud.google.com/go/storage v1.0.0/go.mod h1:IhtSnM/ZTZV8YYJWCY8RULGVqBDmpoyjwiyrjsg+URw= cloud.google.com/go/storage v1.5.0/go.mod h1:tpKbwo567HUNpVclU5sGELwQWBDZ8gh0ZeosJ0Rtdos= cloud.google.com/go/storage v1.6.0/go.mod h1:N7U0C8pVQ/+NIKOBQyamJIeKQKkZ+mxpohlUTyfDhBk= cloud.google.com/go/storage v1.8.0/go.mod h1:Wv1Oy7z6Yz3DshWRJFhqM/UCfaWIRTdp0RXyy7KQOVs= cloud.google.com/go/storage v1.10.0/go.mod h1:FLPqc6j+Ki4BU591ie1oL6qBQGu2Bl/tZ9ullr3+Kg0= -cloud.google.com/go/storage v1.30.1 h1:uOdMxAs8HExqBlnLtnQyP0YkvbiDpdGShGKtx6U/oNM= -cloud.google.com/go/storage v1.30.1/go.mod h1:NfxhC0UJE1aXSx7CIIbCf7y9HKT7BiccwkR7+P7gN8E= +cloud.google.com/go/storage v1.42.0 h1:4QtGpplCVt1wz6g5o1ifXd656P5z+yNgzdw1tVfp0cU= +cloud.google.com/go/storage v1.42.0/go.mod h1:HjMXRFq65pGKFn6hxj6x3HCyR41uSB72Z0SO/Vn6JFQ= code.cloudfoundry.org/go-diodes v0.0.0-20190809170250-f77fb823c7ee h1:iAAPf9s7/+BIiGf+RjgcXLm3NoZaLIJsBXJuUa63Lx8= code.cloudfoundry.org/go-diodes v0.0.0-20190809170250-f77fb823c7ee/go.mod h1:Jzi+ccHgo/V/PLQUaQ6hnZcC1c4BS790gx21LRRui4g= code.cloudfoundry.org/go-loggregator v7.4.0+incompatible h1:KqZYloMQWM5Zg/BQKunOIA4OODh7djZbk48qqbowNFI= @@ -142,8 +146,8 @@ github.com/Azure/go-autorest/autorest v0.10.0/go.mod h1:/FALq9T/kS7b5J5qsQ+RSTUd github.com/Azure/go-autorest/autorest v0.10.1/go.mod h1:/FALq9T/kS7b5J5qsQ+RSTUdAmGFqi0vUdVNNx8q630= github.com/Azure/go-autorest/autorest v0.11.12/go.mod h1:eipySxLmqSyC5s5k1CLupqet0PSENBEDP93LQ9a8QYw= github.com/Azure/go-autorest/autorest v0.11.19/go.mod h1:dSiJPy22c3u0OtOKDNttNgqpNFY/GeWa7GH/Pz56QRA= -github.com/Azure/go-autorest/autorest v0.11.28 h1:ndAExarwr5Y+GaHE6VCaY1kyS/HwwGGyuimVhWsHOEM= -github.com/Azure/go-autorest/autorest v0.11.28/go.mod h1:MrkzG3Y3AH668QyF9KRk5neJnGgmhQ6krbhR8Q5eMvA= +github.com/Azure/go-autorest/autorest v0.11.29 h1:I4+HL/JDvErx2LjyzaVxllw2lRDB5/BT2Bm4g20iqYw= +github.com/Azure/go-autorest/autorest v0.11.29/go.mod h1:ZtEzC4Jy2JDrZLxvWs8LrBWEBycl1hbT1eknI8MtfAs= github.com/Azure/go-autorest/autorest/adal v0.5.0/go.mod h1:8Z9fGy2MpX0PvDjB1pEgQTmVqjGhiHBW7RJJEciWzS0= github.com/Azure/go-autorest/autorest/adal v0.8.0/go.mod h1:Z6vX6WXXuyieHAXwMj0S6HY6e6wcHn37qQMBQlvY3lc= github.com/Azure/go-autorest/autorest/adal v0.8.1/go.mod h1:ZjhuQClTqx435SRJ2iMlOxPYt3d2C/T/7TiQCVZSn3Q= @@ -152,9 +156,8 @@ github.com/Azure/go-autorest/autorest/adal v0.8.3/go.mod h1:ZjhuQClTqx435SRJ2iMl github.com/Azure/go-autorest/autorest/adal v0.9.5/go.mod h1:B7KF7jKIeC9Mct5spmyCB/A8CG/sEz1vwIRGv/bbw7A= github.com/Azure/go-autorest/autorest/adal v0.9.13/go.mod h1:W/MM4U6nLxnIskrw4UwWzlHfGjwUS50aOsc/I3yuU8M= github.com/Azure/go-autorest/autorest/adal v0.9.14/go.mod h1:W/MM4U6nLxnIskrw4UwWzlHfGjwUS50aOsc/I3yuU8M= -github.com/Azure/go-autorest/autorest/adal v0.9.18/go.mod h1:XVVeme+LZwABT8K5Lc3hA4nAe8LDBVle26gTrguhhPQ= -github.com/Azure/go-autorest/autorest/adal v0.9.21 h1:jjQnVFXPfekaqb8vIsv2G1lxshoW+oGv4MDlhRtnYZk= -github.com/Azure/go-autorest/autorest/adal v0.9.21/go.mod h1:zua7mBUaCc5YnSLKYgGJR/w5ePdMDA6H56upLsHzA9U= +github.com/Azure/go-autorest/autorest/adal v0.9.22 h1:/GblQdIudfEM3AWWZ0mrYJQSd7JS4S/Mbzh6F0ov0Xc= +github.com/Azure/go-autorest/autorest/adal v0.9.22/go.mod h1:XuAbAEUv2Tta//+voMI038TrJBqjKam0me7qR+L8Cmk= github.com/Azure/go-autorest/autorest/azure/auth v0.4.2 h1:iM6UAvjR97ZIeR93qTcwpKNMpV+/FTWjwEbuPD495Tk= github.com/Azure/go-autorest/autorest/azure/auth v0.4.2/go.mod h1:90gmfKdlmKgfjUpnCEpOJzsUEjrWDSLwHIG73tSXddM= github.com/Azure/go-autorest/autorest/azure/cli v0.3.1 h1:LXl088ZQlP0SBppGFsRZonW6hSvwgL5gRByMbvUbx8U= @@ -256,10 +259,10 @@ github.com/aokoli/goutils v1.0.1/go.mod h1:SijmP0QR8LtwsmDs8Yii5Z/S4trXFGFC2oO5g github.com/apache/arrow/go/arrow v0.0.0-20191024131854-af6fa24be0db/go.mod h1:VTxUBvSJ3s3eHAg65PNgrsn5BtqCRPdmyXh6rAfdxN0= github.com/apache/arrow/go/arrow v0.0.0-20200923215132-ac86123a3f01/go.mod h1:QNYViu/X0HXDHw7m3KXzWSVXIbfUvJqBFe6Gj8/pYA0= github.com/apache/arrow/go/v10 v10.0.1/go.mod h1:YvhnlEePVnBS4+0z3fhPfUy7W1Ikj0Ih0vcRo/gZ1M0= -github.com/apache/arrow/go/v12 v12.0.0 h1:xtZE63VWl7qLdB0JObIXvvhGjoVNrQ9ciIHG2OK5cmc= -github.com/apache/arrow/go/v12 v12.0.0/go.mod h1:d+tV/eHZZ7Dz7RPrFKtPK02tpr+c9/PEd/zm8mDS9Vg= github.com/apache/arrow/go/v14 v14.0.2 h1:N8OkaJEOfI3mEZt07BIkvo4sC6XDbL+48MBPWO5IONw= github.com/apache/arrow/go/v14 v14.0.2/go.mod h1:u3fgh3EdgN/YQ8cVQRguVW3R+seMybFg8QBQ5LU+eBY= +github.com/apache/arrow/go/v15 v15.0.2 h1:60IliRbiyTWCWjERBCkO1W4Qun9svcYoZrSLcyOsMLE= +github.com/apache/arrow/go/v15 v15.0.2/go.mod h1:DGXsR3ajT524njufqf95822i+KTh+yea1jass9YXgjA= github.com/apache/thrift v0.12.0/go.mod h1:cp2SuWMxlEZw2r+iP2GNCdIi4C1qmUzdZFSVb+bacwQ= github.com/apache/thrift v0.13.0/go.mod h1:cp2SuWMxlEZw2r+iP2GNCdIi4C1qmUzdZFSVb+bacwQ= github.com/apache/thrift v0.16.0/go.mod h1:PHK3hniurgQaNMZYaCLEqXKsYK8upmhPbmdP2FXSqgU= @@ -433,7 +436,6 @@ github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGX github.com/cncf/udpa/go v0.0.0-20200629203442-efcf912fb354/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= github.com/cncf/udpa/go v0.0.0-20201120205902-5459f2c99403/go.mod h1:WmhPx2Nbnhtbo57+VJT5O0JRkEi1Wbu0z5j0R8u5Hbk= github.com/cncf/udpa/go v0.0.0-20210930031921-04548b0d99d4/go.mod h1:6pvJx4me5XPnfI9Z40ddWsdw2W/uZgQLFXToKeRcDiI= -github.com/cncf/xds/go v0.0.0-20210805033703-aa0b78936158/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= github.com/cncf/xds/go v0.0.0-20210922020428-25de7278fc84/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= github.com/cncf/xds/go v0.0.0-20211001041855-01bcc9b48dfe/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= github.com/cncf/xds/go v0.0.0-20211011173535-cb28da3451f1/go.mod h1:eXthEFrGJvWHgFFCl3hGmgk+/aYT6PnTQLykKQRLhEs= @@ -543,12 +545,12 @@ github.com/elastic/ebpfevents v0.6.0 h1:BrL3m7JFK7U6h2jkbk3xAWWs//IZnugCHEDds5u2 github.com/elastic/ebpfevents v0.6.0/go.mod h1:ESG9gw7N+n5yCCMgdg1IIJENKWSmX7+X0Fi9GUs9nvU= github.com/elastic/elastic-agent-autodiscover v0.7.0 h1:FCrHXh5AZGrPlpAx8kBu/s/guw9d/EXt+GKlFCnrgsc= github.com/elastic/elastic-agent-autodiscover v0.7.0/go.mod h1:zLf0SDdQXisVZxzXPxKXdj3Fa+H4bsu4HHbTEQImDz8= -github.com/elastic/elastic-agent-client/v7 v7.14.0 h1:X6S2RyjZNKsDCvA2igch2I5dgHrkfldVe0ZanH/DRCM= -github.com/elastic/elastic-agent-client/v7 v7.14.0/go.mod h1:6h+f9QdIr3GO2ODC0Y8+aEXRwzbA5W4eV4dd/67z7nI= -github.com/elastic/elastic-agent-libs v0.9.13 h1:D1rh1s67zlkDWmixWQaNWzn+qy6DafIDPTQnLpBNBUA= -github.com/elastic/elastic-agent-libs v0.9.13/go.mod h1:G9ljFvDE+muOOOQBf2eRituF0fE4suGkv25rfjTwY+c= -github.com/elastic/elastic-agent-system-metrics v0.10.3 h1:8pWdj8DeY8PBG/BA0DJalRpJWruDoP5QrIP/YKug5dE= -github.com/elastic/elastic-agent-system-metrics v0.10.3/go.mod h1:3JwPa3zZJjmBYN87xwdLcFpHrUkWpR863jiYdg39sSc= +github.com/elastic/elastic-agent-client/v7 v7.15.0 h1:nDB7v8TBoNuD6IIzC3z7Q0y+7bMgXoT2DsHfolO2CHE= +github.com/elastic/elastic-agent-client/v7 v7.15.0/go.mod h1:6h+f9QdIr3GO2ODC0Y8+aEXRwzbA5W4eV4dd/67z7nI= +github.com/elastic/elastic-agent-libs v0.9.15 h1:WCLtuErafUxczT/rXJa4Vr6mxwC8dgtqMbEq+qWGD4M= +github.com/elastic/elastic-agent-libs v0.9.15/go.mod h1:2VgYxHaeM+cCDBjiS2wbmTvzPGbnlXAtYrlcLefheS8= +github.com/elastic/elastic-agent-system-metrics v0.10.6-0.20240723152150-0f81a1e67528 h1:AuBoMilTnJRszbtwZQSTbzuA81TgWz+unsqRR0Brs14= +github.com/elastic/elastic-agent-system-metrics v0.10.6-0.20240723152150-0f81a1e67528/go.mod h1:cd7YgcTEjBNeLGnH/C9cEvP/YexohwS6CpmN9Ju58Mw= github.com/elastic/elastic-transport-go/v8 v8.6.0 h1:Y2S/FBjx1LlCv5m6pWAF2kDJAHoSjSRSJCApolgfthA= github.com/elastic/elastic-transport-go/v8 v8.6.0/go.mod h1:YLHer5cj0csTzNFXoNQ8qhtGY1GTvSqPnKWKaqQE3Hk= github.com/elastic/fsevents v0.0.0-20181029231046-e1d381a4d270 h1:cWPqxlPtir4RoQVCpGSRXmLqjEHpJKbR60rxh1nQZY4= @@ -610,7 +612,6 @@ github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1m github.com/envoyproxy/go-control-plane v0.9.7/go.mod h1:cwu0lG7PUMfa9snN8LXBig5ynNVH9qI8YYLbd1fK2po= github.com/envoyproxy/go-control-plane v0.9.9-0.20201210154907-fd9021fe5dad/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= github.com/envoyproxy/go-control-plane v0.9.9-0.20210217033140-668b12f5399d/go.mod h1:cXg6YxExXjJnVBQHBLXeUAgxn2UodCpnH306RInaBQk= -github.com/envoyproxy/go-control-plane v0.9.10-0.20210907150352-cf90f659a021/go.mod h1:AFq3mo9L8Lqqiid3OhADV3RfLJnjiw63cSpi+fDTRC0= github.com/envoyproxy/go-control-plane v0.10.2-0.20220325020618-49ff273808a1/go.mod h1:KJwIaB5Mv44NWtYuAOFCVOjcI94vtpEz2JU/D2v6IjE= github.com/envoyproxy/protoc-gen-validate v0.1.0/go.mod h1:iSmxcyjqTsJpI2R4NaDN7+kN2VEUnK/pcBlmesArF7c= github.com/evanphx/json-patch v4.2.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= @@ -626,8 +627,9 @@ github.com/fearful-symmetry/gomsr v0.0.1 h1:m208RzdTApWVbv8a9kf78rdPLQe+BY9AxRb/ github.com/fearful-symmetry/gomsr v0.0.1/go.mod h1:Qb/0Y7zwobP7v8Sji+M5mlL4N7Voyz5WaKXXRFPnLio= github.com/fearful-symmetry/gorapl v0.0.4 h1:TMn4fhhtIAd+C3NrAl638oaYlX1vgcKNVVdad53oyiE= github.com/fearful-symmetry/gorapl v0.0.4/go.mod h1:XoeZ+5v0tJX9WMvzqdPaaKAdX7y17mDN3pxDGemINR0= -github.com/felixge/httpsnoop v1.0.1 h1:lvB5Jl89CsZtGIWuTcDM1E/vkVs49/Ml7JJe07l8SPQ= github.com/felixge/httpsnoop v1.0.1/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= +github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2Wg= +github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= github.com/fogleman/gg v1.2.1-0.20190220221249-0403632d5b90/go.mod h1:R/bRT+9gY/C5z7JzPU0zXsXHKM4/ayA+zqcVNZzPa1k= github.com/fogleman/gg v1.3.0/go.mod h1:R/bRT+9gY/C5z7JzPU0zXsXHKM4/ayA+zqcVNZzPa1k= github.com/form3tech-oss/jwt-go v3.2.2+incompatible/go.mod h1:pbq4aXjuKjdthFRnoDwaVPLA+WlJuPGy+QneDUgJi2k= @@ -957,8 +959,8 @@ github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXi github.com/google/martian/v3 v3.0.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0= github.com/google/martian/v3 v3.1.0/go.mod h1:y5Zk1BBys9G+gd6Jrk0W3cC1+ELVxBWuIGO+w/tUAp0= github.com/google/martian/v3 v3.2.1/go.mod h1:oBOf6HBosgwRXnUGWUB05QECsc6uvmMiJ3+6W4l/CUk= -github.com/google/martian/v3 v3.3.2 h1:IqNFLAmvJOgVlpdEBiQbDc2EwKW77amAycfTuWKdfvw= -github.com/google/martian/v3 v3.3.2/go.mod h1:oBOf6HBosgwRXnUGWUB05QECsc6uvmMiJ3+6W4l/CUk= +github.com/google/martian/v3 v3.3.3 h1:DIhPTQrbPkgs2yJYdXU/eNACCG5DVQjySNRNlflZ9Fc= +github.com/google/martian/v3 v3.3.3/go.mod h1:iEPrYcgCF7jA9OtScMFQyAlZZ4YXTKEtJ1E6RWzmBA0= github.com/google/pprof v0.0.0-20181206194817-3ea8567a2e57/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= github.com/google/pprof v0.0.0-20190515194954-54271f7e092f/go.mod h1:zfwlbNMJ+OItoe0UupaVj+oy1omPYYDuagoSzA8v9mc= github.com/google/pprof v0.0.0-20191218002539-d4f498aebedc/go.mod h1:ZgVRPoUq/hfqzAqh7sHMqb3I9Rq5C59dIz2SbBwJ4eM= @@ -976,8 +978,8 @@ github.com/google/pprof v0.0.0-20210609004039-a478d1d731e9/go.mod h1:kpwsk12EmLe github.com/google/pprof v0.0.0-20230426061923-93006964c1fc h1:AGDHt781oIcL4EFk7cPnvBUYTwU8BEU6GDTO3ZMn1sE= github.com/google/pprof v0.0.0-20230426061923-93006964c1fc/go.mod h1:79YE0hCXdHag9sBkw2o+N/YnZtTkXi0UT9Nnixa5eYk= github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= -github.com/google/s2a-go v0.1.4 h1:1kZ/sQM3srePvKs3tXAvQzo66XfcReoqFpIpIccE7Oc= -github.com/google/s2a-go v0.1.4/go.mod h1:Ej+mSEMGRnqRzjc7VtF+jdBwYG5fuJfiZ8ELkjEwM0A= +github.com/google/s2a-go v0.1.7 h1:60BLSyTrOV4/haCDW4zb1guZItoSq8foHCXrAnjBo/o= +github.com/google/s2a-go v0.1.7/go.mod h1:50CgR4k1jNlWBu4UfS4AcfhVe1r6pdZPygJ3R8F0Qdw= github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 h1:El6M4kTTCOh6aBiKaUGG7oYTSPP8MxqL4YI3kZKwcP4= github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510/go.mod h1:pupxD2MaaD3pAXIBCelhxNneeOaAeabZDe5s4K6zSpQ= github.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= @@ -988,12 +990,12 @@ github.com/google/uuid v1.3.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+ github.com/google/uuid v1.3.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/googleapis/enterprise-certificate-proxy v0.2.4 h1:uGy6JWR/uMIILU8wbf+OkstIrNiMjGpEIyhx8f6W7s4= -github.com/googleapis/enterprise-certificate-proxy v0.2.4/go.mod h1:AwSRAtLfXpU5Nm3pW+v7rGDHp09LsPtGY9MduiEsR9k= +github.com/googleapis/enterprise-certificate-proxy v0.3.2 h1:Vie5ybvEvT75RniqhfFxPRy3Bf7vr3h0cechB90XaQs= +github.com/googleapis/enterprise-certificate-proxy v0.3.2/go.mod h1:VLSiSSBs/ksPL8kq3OBOQ6WRI2QnaFynd1DCjZ62+V0= github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg= github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk= -github.com/googleapis/gax-go/v2 v2.12.0 h1:A+gCJKdRfqXkr+BIRGtZLibNXf0m1f9E4HG56etFpas= -github.com/googleapis/gax-go/v2 v2.12.0/go.mod h1:y+aIqrI5eb1YGMVJfuV3185Ts/D7qKpsEkdD5+I6QGU= +github.com/googleapis/gax-go/v2 v2.12.5 h1:8gw9KZK8TiVKB6q3zHY3SBzLnrGp6HQjyfYBYGmXdxA= +github.com/googleapis/gax-go/v2 v2.12.5/go.mod h1:BUDKcWo+RaKq5SC9vVYL0wLADa3VcfswbOMMRmB9H3E= github.com/googleapis/gnostic v0.0.0-20170729233727-0c5108395e2d/go.mod h1:sJBsCZ4ayReDTBIg8b9dl28c5xFWyhBTVRp3pOg5EKY= github.com/googleapis/gnostic v0.4.0/go.mod h1:on+2t9HRStVgn95RSsFWFz+6Q0Snyqv1awfrALZdbtU= github.com/googleapis/gnostic v0.4.1/go.mod h1:LRhVm6pbyptWbWbuZ38d1eyptfvIytN3ir6b65WBswg= @@ -1597,8 +1599,9 @@ github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= -github.com/tidwall/pretty v1.0.0 h1:HsD+QiTn7sK6flMKIvNmpqz1qrpP3Ps6jOKIKMooyg4= github.com/tidwall/pretty v1.0.0/go.mod h1:XNkn88O1ChpSDQmQeStsy+sBenx6DDtFZJxhVysOjyk= +github.com/tidwall/pretty v1.2.0 h1:RWIZEg2iJ8/g6fDDYzMpobmaoGh5OLl4AXtGUGPcqCs= +github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU= github.com/tinylib/msgp v1.0.2/go.mod h1:+d+yLhGm8mzTaHzB+wgMYrodPfmZrzkirds8fDWklFE= github.com/tinylib/msgp v1.1.0/go.mod h1:+d+yLhGm8mzTaHzB+wgMYrodPfmZrzkirds8fDWklFE= github.com/tklauser/go-sysconf v0.3.10 h1:IJ1AZGZRWbY8T5Vfk04D9WOA5WSejdflXxP03OUqALw= @@ -1666,6 +1669,8 @@ github.com/zeebo/assert v1.3.0 h1:g7C04CbJuIDKNPFHmsk4hwZDO5O+kntRxzaUoNXj+IQ= github.com/zeebo/assert v1.3.0/go.mod h1:Pq9JiuJQpG8JLJdtkwrJESF0Foym2/D9XMU5ciN/wJ0= github.com/zeebo/xxh3 v1.0.2 h1:xZmwmqxHZA8AI603jOQ0tMqmBr9lPeFwGg6d+xy9DC0= github.com/zeebo/xxh3 v1.0.2/go.mod h1:5NWz9Sef7zIDm2JHfFlcQvNekmcEl9ekUZQQKCYaDcA= +go.einride.tech/aip v0.67.1 h1:d/4TW92OxXBngkSOwWS2CH5rez869KpKMaN44mdxkFI= +go.einride.tech/aip v0.67.1/go.mod h1:ZGX4/zKw8dcgzdLsrvpOOGxfxI2QSk12SlP7d6c0/XI= go.elastic.co/apm/module/apmelasticsearch/v2 v2.6.0 h1:ukMcwyMaDXsS1dRK2qRYXT2AsfwaUy74TOOYCqkWJow= go.elastic.co/apm/module/apmelasticsearch/v2 v2.6.0/go.mod h1:YpfiTTrqX5LB/CKBwX89oDCBAxuLJTFv40gcfxJyehM= go.elastic.co/apm/module/apmhttp/v2 v2.6.0 h1:s8UeNFQmVBCNd4eoz7KDD9rEFhQC0HeUFXz3z9gpAmQ= @@ -1704,12 +1709,16 @@ go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= go.opencensus.io v0.23.0/go.mod h1:XItmlyltB5F7CS4xOC1DcqMoFqwtC6OG2xF7mCv7P7E= go.opencensus.io v0.24.0 h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0= go.opencensus.io v0.24.0/go.mod h1:vNK8G9p7aAivkbmorf4v+7Hgx+Zs0yY+0fOtgBfjQKo= +go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0 h1:4Pp6oUg3+e/6M4C0A/3kJ2VYa++dsWVTtGgLVj5xtHg= +go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.49.0/go.mod h1:Mjt1i1INqiaoZOMGR1RIUJN+i3ChKoFRqzrRQhlkbs0= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0 h1:jq9TW8u3so/bN+JPT166wjOI6/vQPF6Xe7nMNIltagk= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.49.0/go.mod h1:p8pYQP+m5XfbZm9fxtSKAbM6oIllS7s2AfxrChvc7iw= go.opentelemetry.io/otel v1.24.0 h1:0LAOdjNmQeSTzGBzduGe/rU4tZhMwL5rWgtp9Ku5Jfo= go.opentelemetry.io/otel v1.24.0/go.mod h1:W7b9Ozg4nkF5tWI5zsXkaKKDjdVjpD4oAt9Qi/MArHo= go.opentelemetry.io/otel/metric v1.24.0 h1:6EhoGWWK28x1fbpA4tYTOWBkPefTDQnb8WSGXlc88kI= go.opentelemetry.io/otel/metric v1.24.0/go.mod h1:VYhLe1rFfxuTXLgj4CBiyz+9WYBA8pNGJgDcSFRKBco= -go.opentelemetry.io/otel/sdk v1.21.0 h1:FTt8qirL1EysG6sTQRZ5TokkU8d0ugCj8htOgThZXQ8= -go.opentelemetry.io/otel/sdk v1.21.0/go.mod h1:Nna6Yv7PWTdgJHVRD9hIYywQBRx7pbox6nwBnZIxl/E= +go.opentelemetry.io/otel/sdk v1.24.0 h1:YMPPDNymmQN3ZgczicBY3B6sf9n62Dlj9pWD3ucgoDw= +go.opentelemetry.io/otel/sdk v1.24.0/go.mod h1:KVrIYw6tEubO9E96HQpcmpTKDVn9gdv35HoYiQWGDFg= go.opentelemetry.io/otel/trace v1.24.0 h1:CsKnnL4dUAr/0llH9FKuc698G04IrpWV0MQA/Y1YELI= go.opentelemetry.io/otel/trace v1.24.0/go.mod h1:HPc3Xr/cOApsBI154IU0OI0HJexz+aw5uPdbs3UCjNU= go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI= @@ -1774,10 +1783,10 @@ golang.org/x/crypto v0.0.0-20201221181555-eec23a3978ad/go.mod h1:jdWPYTVW3xRLrWP golang.org/x/crypto v0.0.0-20210220033148-5ea612d1eb83/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I= golang.org/x/crypto v0.0.0-20210616213533-5ff15b29337e/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.0.0-20220314234659-1baeb1ce4c0b/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.0.0-20220511200225-c6db032c6c88/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.0.0-20220622213112-05595931fe9d/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= +golang.org/x/crypto v0.6.0/go.mod h1:OFC/31mSvZgRz0V1QTNCzfAI1aIRzbiufJtkMIlEp58= golang.org/x/crypto v0.7.0/go.mod h1:pYwdfH91IfpZVANVyUOhSIPZaFoJGxTFbZhFTx+dXZU= golang.org/x/crypto v0.13.0/go.mod h1:y6Z2r+Rw4iayiXXAIxJIDAJ1zMW4yaTpebo8fPOliYc= golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU= @@ -1935,8 +1944,8 @@ golang.org/x/oauth2 v0.0.0-20210218202405-ba52d332ba99/go.mod h1:KelEdhl1UZF7XfJ golang.org/x/oauth2 v0.0.0-20210220000619-9bb904979d93/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210313182246-cd4f82c27b84/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= golang.org/x/oauth2 v0.0.0-20210514164344-f6687ab2804c/go.mod h1:KelEdhl1UZF7XfJ4dDtk6s++YSgaE7mD/BuKKDLBl4A= -golang.org/x/oauth2 v0.10.0 h1:zHCpF2Khkwy4mMB4bv0U37YtJdTGW8jI0glAApi0Kh8= -golang.org/x/oauth2 v0.10.0/go.mod h1:kTpgurOux7LqtuxjuyZa4Gj2gdezIt/jQtGnNFfypQI= +golang.org/x/oauth2 v0.21.0 h1:tsimM75w1tF/uws5rbeHzIWxEqElMehnc+iW793zsZs= +golang.org/x/oauth2 v0.21.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= @@ -2207,8 +2216,9 @@ golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8T golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20220609144429-65e65417b02f/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8= -golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 h1:H2TDz8ibqkAF6YGhCdN3jS9O0/s90v0rJh3X/OLHEUk= golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8= +golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028 h1:+cNy6SZtPcJQH3LJVLOSmiC7MMxXNOb3PU/VUEz+EhU= +golang.org/x/xerrors v0.0.0-20231012003039-104605ab7028/go.mod h1:NDW/Ps6MPRej6fsCIbMTohpP40sJ/P/vI1MoTEGwX90= gonum.org/v1/gonum v0.0.0-20180816165407-929014505bf4/go.mod h1:Y+Yx5eoAFn32cQvJDxZx5Dpnq+c3wtXuadVZAcxbbBo= gonum.org/v1/gonum v0.0.0-20181121035319-3f7ecaa7e8ca/go.mod h1:Y+Yx5eoAFn32cQvJDxZx5Dpnq+c3wtXuadVZAcxbbBo= gonum.org/v1/gonum v0.6.0/go.mod h1:9mxDZsDKxgMAuccQkewq682L+0eCu4dCN2yonUJTCLU= @@ -2246,8 +2256,8 @@ google.golang.org/api v0.41.0/go.mod h1:RkxM5lITDfTzmyKFPt+wGrCJbVfniCr2ool8kTBz google.golang.org/api v0.43.0/go.mod h1:nQsDGjRXMo4lvh5hP0TKqF244gqhGcr/YSIykhUk/94= google.golang.org/api v0.47.0/go.mod h1:Wbvgpq1HddcWVtzsVLyfLp8lDg6AA241LmgIL59tHXo= google.golang.org/api v0.48.0/go.mod h1:71Pr1vy+TAZRPkPs/xlCf5SsU8WjuAWv1Pfjbtukyy4= -google.golang.org/api v0.128.0 h1:RjPESny5CnQRn9V6siglged+DZCgfu9l6mO9dkX9VOg= -google.golang.org/api v0.128.0/go.mod h1:Y611qgqaE92On/7g65MQgxYul3c0rEB894kniWLY750= +google.golang.org/api v0.188.0 h1:51y8fJ/b1AaaBRJr4yWm96fPcuxSo0JcegXE3DaHQHw= +google.golang.org/api v0.188.0/go.mod h1:VR0d+2SIiWOYG3r/jdm7adPW9hI2aRv9ETOSCQ9Beag= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= google.golang.org/appengine v1.2.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= @@ -2255,7 +2265,6 @@ google.golang.org/appengine v1.5.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7 google.golang.org/appengine v1.6.1/go.mod h1:i06prIuMbXzDqacNJfV5OdTW448YApPu5ww/cMBSeb0= google.golang.org/appengine v1.6.5/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= google.golang.org/appengine v1.6.6/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= -google.golang.org/appengine v1.6.7 h1:FZR1q0exgwxzPzp/aF+VccGrSfxfPpkBqjIIEq3ru6c= google.golang.org/appengine v1.6.7/go.mod h1:8WjMMxjGQR8xUklV/ARdw2HLXBOI7O7uCIDZVag1xfc= google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= google.golang.org/genproto v0.0.0-20190307195333-5fe7a883aa19/go.mod h1:VzzqZJRnGkLBvHegQrXjBqPurQTc5/KpmUdxsrq26oE= @@ -2305,12 +2314,12 @@ google.golang.org/genproto v0.0.0-20210402141018-6c239bbf2bb1/go.mod h1:9lPAdzaE google.golang.org/genproto v0.0.0-20210513213006-bf773b8c8384/go.mod h1:P3QM42oQyzQSnHPnZ/vqoCdDmzH28fzWByN9asMeM8A= google.golang.org/genproto v0.0.0-20210602131652-f16073e35f0c/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= google.golang.org/genproto v0.0.0-20210604141403-392c879c8b08/go.mod h1:UODoCrxHCcBojKKwX1terBiRUaqAsFqJiF615XL43r0= -google.golang.org/genproto v0.0.0-20230920204549-e6e6cdab5c13 h1:vlzZttNJGVqTsRFU9AmdnrcO1Znh8Ew9kCD//yjigk0= -google.golang.org/genproto v0.0.0-20230920204549-e6e6cdab5c13/go.mod h1:CCviP9RmpZ1mxVr8MUjCnSiY09IbAXZxhLE6EhHIdPU= -google.golang.org/genproto/googleapis/api v0.0.0-20230913181813-007df8e322eb h1:lK0oleSc7IQsUxO3U5TjL9DWlsxpEBemh+zpB7IqhWI= -google.golang.org/genproto/googleapis/api v0.0.0-20230913181813-007df8e322eb/go.mod h1:KjSP20unUpOx5kyQUFa7k4OJg0qeJ7DEZflGDu2p6Bk= -google.golang.org/genproto/googleapis/rpc v0.0.0-20231002182017-d307bd883b97 h1:6GQBEOdGkX6MMTLT9V+TjtIRZCw9VPD5Z+yHY9wMgS0= -google.golang.org/genproto/googleapis/rpc v0.0.0-20231002182017-d307bd883b97/go.mod h1:v7nGkzlmW8P3n/bKmWBn2WpBjpOEx8Q6gMueudAmKfY= +google.golang.org/genproto v0.0.0-20240708141625-4ad9e859172b h1:dSTjko30weBaMj3eERKc0ZVXW4GudCswM3m+P++ukU0= +google.golang.org/genproto v0.0.0-20240708141625-4ad9e859172b/go.mod h1:FfBgJBJg9GcpPvKIuHSZ/aE1g2ecGL74upMzGZjiGEY= +google.golang.org/genproto/googleapis/api v0.0.0-20240701130421-f6361c86f094 h1:0+ozOGcrp+Y8Aq8TLNN2Aliibms5LEzsq99ZZmAGYm0= +google.golang.org/genproto/googleapis/api v0.0.0-20240701130421-f6361c86f094/go.mod h1:fJ/e3If/Q67Mj99hin0hMhiNyCRmt6BQ2aWIJshUSJw= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240708141625-4ad9e859172b h1:04+jVzTs2XBnOZcPsLnmrTGqltqJbZQ1Ey26hjYdQQ0= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240708141625-4ad9e859172b/go.mod h1:Ue6ibwXGpU+dqIcODieyLOcgj7z8+IcskoNIgZxtrFY= google.golang.org/grpc v1.17.0/go.mod h1:6QZJwpn2B+Zp71q/5VxRsJ6NXXVCE5NRUHRo+f3cWCs= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.20.0/go.mod h1:chYK+tFQF0nDUGJgXMSgLCQk3phJEuONr2DCgLDdAQM= @@ -2340,10 +2349,9 @@ google.golang.org/grpc v1.36.1/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAG google.golang.org/grpc v1.37.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= google.golang.org/grpc v1.37.1/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= google.golang.org/grpc v1.38.0/go.mod h1:NREThFqKR1f3iQ6oBuvc5LadQuXVGo9rkm5ZGrQdJfM= -google.golang.org/grpc v1.45.0/go.mod h1:lN7owxKUQEqMfSyQikvvk5tf/6zMPsrK+ONuO11+0rQ= google.golang.org/grpc v1.49.0/go.mod h1:ZgQEeidpAuNRZ8iRrlBKXZQP1ghovWIVhdJRyCDK+GI= -google.golang.org/grpc v1.58.3 h1:BjnpXut1btbtgN/6sp+brB2Kbm2LjNXnidYujAVbSoQ= -google.golang.org/grpc v1.58.3/go.mod h1:tgX3ZQDlNJGU96V6yHh1T/JeoBQ2TXdr43YbYSsCJk0= +google.golang.org/grpc v1.64.1 h1:LKtvyfbX3UGVPFcGqJ9ItpVWW6oN/2XqTxfAnwRRXiA= +google.golang.org/grpc v1.64.1/go.mod h1:hiQF4LFZelK2WKaP6W0L92zGHtiQdZxk8CrSdvyjeP0= google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.1.0/go.mod h1:6Kw0yEErY5E/yWrBtf03jp27GLLJujG4z/JK95pnjjw= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= @@ -2359,8 +2367,8 @@ google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp0 google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.27.1/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= google.golang.org/protobuf v1.28.1/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= -google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGmI= -google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= +google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg= +google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw= gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= diff --git a/libbeat/cmd/instance/beat.go b/libbeat/cmd/instance/beat.go index c15d9b8c200..aa987803637 100644 --- a/libbeat/cmd/instance/beat.go +++ b/libbeat/cmd/instance/beat.go @@ -275,7 +275,7 @@ func NewBeat(name, indexPrefix, v string, elasticLicensed bool, initFuncs []func ID: id, FirstStart: time.Now(), StartTime: time.Now(), - EphemeralID: metricreport.EphemeralID(), + EphemeralID: uuid.UUID(metricreport.EphemeralID()), }, Fields: fields, } diff --git a/metricbeat/docs/fields.asciidoc b/metricbeat/docs/fields.asciidoc index 08bb77cc8ac..1564bb64718 100644 --- a/metricbeat/docs/fields.asciidoc +++ b/metricbeat/docs/fields.asciidoc @@ -44450,13 +44450,73 @@ alias to: service.version *`kibana.status.status.overall.state`*:: + -- -Kibana overall state. +Kibana overall state (v7 format). type: keyword -- +*`kibana.status.status.overall.level`*:: ++ +-- +Kibana overall level (v8 format). + + +type: keyword + +-- + +*`kibana.status.status.overall.summary`*:: ++ +-- +Kibana overall state in a human-readable format. + + +type: text + +-- + +*`kibana.status.status.core.elasticsearch.level`*:: ++ +-- +Kibana Elasticsearch client's status + + +type: keyword + +-- + +*`kibana.status.status.core.elasticsearch.summary`*:: ++ +-- +Kibana Elasticsearch client's status in a human-readable format. + + +type: text + +-- + +*`kibana.status.status.core.savedObjects.level`*:: ++ +-- +Kibana Saved Objects client's status + + +type: keyword + +-- + +*`kibana.status.status.core.savedObjects.summary`*:: ++ +-- +Kibana Saved Objects client's status in a human-readable format. + + +type: text + +-- + [float] === metrics diff --git a/metricbeat/module/kibana/fields.go b/metricbeat/module/kibana/fields.go index 670132dd90e..2a1db1d08e3 100644 --- a/metricbeat/module/kibana/fields.go +++ b/metricbeat/module/kibana/fields.go @@ -32,5 +32,5 @@ func init() { // AssetKibana returns asset data. // This is the base64 encoded zlib format compressed contents of module/kibana. func AssetKibana() string { - return "eJzsWk+v27gRv79PMfAll0ToO+SwPhQtsgu0KBIU6QY9FIVAS2OLDUVqOaTzvJ++oP7YskRKtCzvPiziw8ODpPnNjzPDmeGfd/AVT1v4yndMsicAw43ALWz+UT/YPAHkSJnmleFKbuHPTwAAzUsoVW4FPgFQobRJMyX3/LCFPRPknmoUyAi3cHDAhMZweaAt/GdDJDZvYVMYU23++wSw5yhy2tbY70CyEjtGKRlmqH4BYE6VQ9PKVu2TvmBf2PASybCyOr/ppJngjHpPK2aKLWz+cpbYjMAaJolGqpQkTN2nScleIrFb8XogY5CkpJBCJ2FpiRY/QAevKCmxVPqU7DViymW6OxlcpGgOqlNZaZUhUWIrN273XcmF4It0XmP57Nd90VIrkFUJ8V8xFbzk5h6dfsTEP+hMycxqjbKeGhIzN4UWDXkGKTBujcRzJ0No0prtPa6eAw8YQVEiFMuT53JhfA2lh8Dv7wJ+HwZ+vg/52QPd2RCPznJCqSrNUbDTPf4YYk1NiN631nDBf2UukBKWGX7ElUhMAEfS4bl4BJkr2Egqvf8fwMiH3hHT+ItFMpQYZZhYVmpqhAHACD/n1OaURWmh0+KDuejqFT16aOkcqGJH1OywKJqu1bHjYaJSW8vzSB2E+sgzTFqBa6Cb+xwUjAzPCJnOiiQTlgzqxEPmK56+KZ2Pa1QjkrJAceqTcD9PM9j92qawRYQWEUo0mmeU9L49N4Y7NKz3fDjKoIGmOYag+nCj3mraXH1RdUSdW1yNSqasNEEmQslDUHRYPObJTBHqI1fv/+R932HvhWI+0j2EH364AWEYj9oKT5uyPBod3vdQ/B6KEQidlFQ5rpgXHdwfNynuGRdW41A4EDjn8vWCmR0aOELOlWRlTYTUlTPXSiq1K/+YGeW1+7HbRVrBi3WbB0zmoK1856hMuvMQ68xBMzht9wHRlhqXZJjMEL58+fuPXiXu71pKRlidEi5zfFmq5RMrEdS+1faGgEuDWjLhge0UFoqGmXzxqBxWcGRGM0mV0iZlea6R/BEYr9V19ajf0FlrHVdOgVf9ETVdLymXKPWhnOeJZBUVym/NnVIC2VD9lYp/F2gK1GAK7NTtLBc5cAJ2Rm+e+Qn4ctBSZzrDIhOm8MF2GoXKmIifFOfmYOikTsjF6wH1OAX1dqThFeaf11NMLF2vvZcQmcpFURxC2Xi4PIfQEv3yK/lBs8ajRo/a7gmPw8Xrj03t82ofk+zHepem/+Sxw1+hKswHjl96jehZsc74hhFHwo96bQL/N1MmWKtyjWn/zrVsNiijqpvy61+S0XNORqubMvpY/HNTlxajVIKZvdLl3QD3EmnOs4Li9+xchI5Xx1q8Wyt9qHoTfyUsS5jfAXXeLKosy7LwdtE9lsuUNFqJNIQBs+6FYR+SSiZHk+iW4dZc0geGS3fEu46X6Rur0vshL9018xn5/lE/+1LABbpgYp/Ob/G9XwXleRlM9IE/TNl6rqGy5Q61a6kywVEa6KmAkuUIRtUlrukREvikDIIpmIGdVt8INUHGJBDKHEorDK8EAnH3L5OoLF0hGtUdEfY+rpGBEaFbuRhQMsO3dQtiCjzV8BrfWUJAMmwnOBWY92ET/xKsOSaNLnAzlvpnA9etpm5aZkTebph15gCPac1O6c7u96jpTix8aRrppTDjezPRolN3Da5ByK3F88CUm/EfwE9ODzg9zbkCcAnNhSHMlMyHSj30/Af3fYb+nDVL7ecCoe5h3UysF+1uzuGFMCeQygDPBZcHR/zyvtLqyHPXiTYztS7qIRBtpeTykIw4zLV3o9scN3gmwgAAP9qmiT9boEe8YAQ7RNmyAOJu1SWYSyPIyGosUZrxoM6r0Hy0hfObU3ccbiY+FXDr8f+gysoazPvq4MiERdBYaSSUxoXdOUJbNxjVjKoec9zQBlmnQDaeLXfNpC5NO+RArp4P9noKBTLhTKvkFg/MbCEkHOGOn+sJXA+ACaEy5lxjVFfQ3Oz3o/db8d+N/d8cb8cAdqd4ysFrj78d8Y/sJQElcqCKZVgzurb/J5Vj8j/qBvU2whHBojgznAi6X2psNxt7Rg6Ws8EFrbWaIoDPbTtXH/Lf1Bxdrf09l8XWMtSlxe1upzX96zfU2FON4cX88LLcWsyaiS5H/AKe690cW+a/zy1Ec5F9obMGd9aWWOOvzf2585CaAjLdjfVKx/UdvSUEPrIXXtryBgLeq3Fps2Za5oyf+kjwoUZ6Q6NzoBiXNNs4TVFOSWVfcWIiDQ+gAvSGsdl1XgH0wY5SLh5GpOmjomj8YtFinnqn1QpMGvjxrA1u8N58pvevGqH1f+/N7cd3jz/+8S/CX+1BmSPmp9weMiSNo6PJ33TK0UbRsDte7bSjjptEuTwrRH31eH3vt+i1soD3/RVmcbfxsYEbzweIuoUYsY0GK1T1D42WnsLwXhV47s4HKYX2QyM4dV2a8xWvy86YR9zG6nSvBvM7yVF8wdMd9Vu1aYtCRO/2SKZX5P4fAAD//3pp2g4=" + return "eJzsW0uP3LgRvs+vKMzFG8AjZA5GsnMIEngXSBDYCbxr5BAEQrVU3eKaIrUssj29vz6gHj16UI9Wq3eNhftgDCTxq49VZD1Y9AN8otMTfBI7VHgHYIWV9AT3/ywf3N8BpMSJEYUVWj3BX+4AAKqXkOvUSboD4EwbGyda7cXhCfYo2T81JAmZnuDggZmsFerAT/Dfe2Z5/xruM2uL+//dAewFyZSfSuwHUJhTwyhmi5bLFwD2VHg0o11RP2kPbA+2Iie2mBfnN81olAK59bRAmz3B/V/PI+4HYBWTyBAXWjHF/tMox+eF2PXwciJDkCjnMYF+hOM1UsIADbzmKKdcm1O0N0SxUPHuZGmVoDmoRmRhdELMkSv8vP13uZBSrJLZxQrpr/mippYRFhGLXyiWIhf2GplhxCg86USrxBlDqtwaihK/hVZNeQZpZN6GWKR+DJONS7bXmHoOfEQJmiOpMY0e85Xrqz+6D/zmKuA348CP1yE/BqAbHdLRa05qXcQpSTxdY48+1tSGaH3rrJDiF/QLKcLEiiNtRGICeCEdkcpbkOnALqTS+vsGjELoDTFDPztiy5HVFuW6UFMi9AAG+Kng2qescguNlBDMi6xW0OObhs6eKDySwcOq1dQVh8fDRKR2TqQLZTCZo0goqgd0gS7Oc0giW5EwoUmyKJGOLZkoQOYTnT5rkw5jVDUkxpHg1Cbhf4FksPnVSWGNCDUi5GSNSDhqfXtODHdksfW8P8tRBU1zHINqww1yq2l1tYfqI5nU0WZUEu2UHWUitTqMDu0Hj3kyU4TayMWbPwbfN9h7qTFEuoXw7bcXIPTXo3EykKasX40e7+tS/LoUFyA0o5ROaUO/6OF+v05xj0I6Q/3BIwvnHL6eKXF9BS8Y50OydnbBqI4xt3IqpSl/nx7lS7djc4q0gRXLNA9QpWCcevBUJs15WGrMXjI4rfce0ZqaUGxRJQQfP/7ju6AQ/+9WQgZYjRChUnpeK+U95gR6X0t7xSCUJaNQBmAbgZnmvidfPSuPNToza1BxoY2NMU0NcXgFLpfqs3oyr/gstVxXXkBQ/JEMd0vKNUJDKOd9orDgTIe1udNaEvbFd0T8JyObkQGbUSNu54RMQTDgGb16FiYQ8kFrjekVSyhtFoJtJEqdoFy+Kc7JQd9IzSC/Xg9khi6odSINX6D/+XKCieNu7b2GyJQvWsRhzBv3y3MYK9Fffrk4GKwsas0g7Z6wOLxY/baufV7sbZz9UO5a9x/ddvobRIX5hRMevcXq2TDOhKaxjEQYtauC8DdTKtgqcg1p/8axbHZRLopuOix/jUdPBVujL/Low+Efqri0GqWQaPfa5FcDXEuk6meNDr/m5GKsvTqUEjxaaUOVh/gbYTmm9Aqo82FR4TBJxo+LrtFcopU1WsZjGDBrXujnIbFCNdhEl0y35BLfcLk0Ld5trMyfsYivh3zJrjGk5Otn/RhyAS/QGcp9PH/E92YTlMd1MIsb/jCl67mEyuU7Mj6lSqQgZaElAnJMCawuQ1yVI0TwXlsCm6GFndGfmQxDggqYVAq5k1YUkoCF/xMVaccdRKubFmHr4xIZkJl85WJBq4RelymIzehUwht6cExAbHEnBWeUtmGjcAlWtUkXB7gZTf27gmuqqYvKjIW3G2aN2cNDY/AU79x+T4avxKLnKpFeCzO8N7N46NRdgy4I+1o8HdlyM/YD+N7LAS+n6iuAUFBdGKJEq7QvNEAv3LhvMwz7rFlqP2YEZQ7rd2JZtPs9Ry+EBYPSFkQqhTp44i/vC6OPIvWZaLVTy6A+BmKcUkIdogGHufRucJvjAsssUADAd65K4s8aaBHPkGFHpGoWwMJXXRK9GyFkZygnZYeTOleh6eAI51en7jlcTHxqwW3H/63OC2cpbYuDI0pHYKgwxKSsX3bnFVqbwepqVuWcl02t53UywuFuuWonNW7aI4/46vnFXm6hEU84kyr54gHtE4wNXmCOH8sNXE4ApdQJetNY3QQ0v/vD6O1U/Ddj/3fP2zOA3Wk55dFrj78e8Xf4HIGWKXCBCZWMuvp/r1OKfuJmUq8XGGI0KM5MZwHdjyW2340tJY+Gs94Fra2SIoAPdTpXNvkvSo46tX/gsthWinpJcZvbaVX++pkMtUTTeDHfvyy3FbNqo6sBvxHLtW6OrbPfhxqiusi+0li9O2trtPG36v7ceUpVAJnOxlqho3tHbw2Bd/gscpdfQCB4NS6uaqZ1xvi+jQRvS6RXPOgDLTFJdYxTBeWYdfKJJjZSvwE1Qq+/NpvMawS9d6KUypsRqfKoRTR+duQojYPbagMmFfxw144e8F7c0/uhRKjt33pzefvu9u2fcBH+xTbKPLEw5brJEFWGXkz+oi5HvYr62fFm3Y5y3UTa+1kpy6vH21u/Ri+FEXxz/FOdhP0hrNYeJ0lH6sfU7TiV6PDN8c8XcWKX5zg4hq1YWXruO/o1ahIKEDKXo3owhCnuJNUUJxkm2lDUvZZ9GwV2o1LSjkojLaRxhjdR5yTBq9TLeKT0X7uffBp6I+3+4EVALeNi7XYI3kS5k/wuVm44v1xda7yr4IbREBbdQV5wiA4b5PRvKyktgeMn1RD4nzOjlMa6IQs4NTWat6Mod8+Qx7K2ynSlBvN9pEV8IVAbtQu1aY3Cgsrtlkw75P4fAAD//xNN+qo=" } diff --git a/metricbeat/module/kibana/status/_meta/fields.yml b/metricbeat/module/kibana/status/_meta/fields.yml index 8f0993e7cdf..c078ef6c46a 100644 --- a/metricbeat/module/kibana/status/_meta/fields.yml +++ b/metricbeat/module/kibana/status/_meta/fields.yml @@ -23,7 +23,31 @@ - name: status.overall.state type: keyword description: > - Kibana overall state. + Kibana overall state (v7 format). + - name: status.overall.level + type: keyword + description: > + Kibana overall level (v8 format). + - name: status.overall.summary + type: text + description: > + Kibana overall state in a human-readable format. + - name: status.core.elasticsearch.level + type: keyword + description: > + Kibana Elasticsearch client's status + - name: status.core.elasticsearch.summary + type: text + description: > + Kibana Elasticsearch client's status in a human-readable format. + - name: status.core.savedObjects.level + type: keyword + description: > + Kibana Saved Objects client's status + - name: status.core.savedObjects.summary + type: text + description: > + Kibana Saved Objects client's status in a human-readable format. - name: metrics type: group description: > diff --git a/metricbeat/module/kibana/status/_meta/testdata/8.16.0.json b/metricbeat/module/kibana/status/_meta/testdata/8.16.0.json new file mode 100644 index 00000000000..8c18a52d3ed --- /dev/null +++ b/metricbeat/module/kibana/status/_meta/testdata/8.16.0.json @@ -0,0 +1,932 @@ +{ + "name": "kibana", + "uuid": "5b2de169-2785-441b-ae8c-186a1936b17d", + "version": { + "number": "8.16.0", + "build_hash": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX", + "build_number": 9007199254740991, + "build_snapshot": false, + "build_flavor": "traditional", + "build_date": "2024-07-16T17:38:42.062Z" + }, + "status": { + "overall": { + "level": "available", + "summary": "All services and plugins are available" + }, + "core": { + "elasticsearch": { + "level": "available", + "summary": "Elasticsearch is available", + "meta": { + "warningNodes": [], + "incompatibleNodes": [] + } + }, + "savedObjects": { + "level": "available", + "summary": "SavedObjects service has completed migrations and is available", + "meta": { + "migratedIndices": { + "migrated": 0, + "skipped": 0, + "patched": 7 + } + } + } + }, + "plugins": { + "alerting": { + "level": "available", + "summary": "Alerting is (probably) ready", + "reported": true + }, + "triggersActionsUi": { + "level": "available", + "summary": "All services and plugins are available" + }, + "transform": { + "level": "available", + "summary": "All services and plugins are available" + }, + "stackConnectors": { + "level": "available", + "summary": "All services and plugins are available" + }, + "searchPlayground": { + "level": "available", + "summary": "All services and plugins are available" + }, + "stackAlerts": { + "level": "available", + "summary": "All services and plugins are available" + }, + "ruleRegistry": { + "level": "available", + "summary": "All services and plugins are available" + }, + "cases": { + "level": "available", + "summary": "All services and plugins are available" + }, + "timelines": { + "level": "available", + "summary": "All services and plugins are available" + }, + "sessionView": { + "level": "available", + "summary": "All services and plugins are available" + }, + "kubernetesSecurity": { + "level": "available", + "summary": "All services and plugins are available" + }, + "threatIntelligence": { + "level": "available", + "summary": "All services and plugins are available" + }, + "observabilityShared": { + "level": "available", + "summary": "All services and plugins are available" + }, + "metricsDataAccess": { + "level": "available", + "summary": "All services and plugins are available" + }, + "logsShared": { + "level": "available", + "summary": "All services and plugins are available" + }, + "aiops": { + "level": "available", + "summary": "All services and plugins are available" + }, + "links": { + "level": "available", + "summary": "All services and plugins are available" + }, + "discover": { + "level": "available", + "summary": "All services and plugins are available" + }, + "reporting": { + "level": "available", + "summary": "All services and plugins are available" + }, + "canvas": { + "level": "available", + "summary": "All services and plugins are available" + }, + "logsExplorer": { + "level": "available", + "summary": "All services and plugins are available" + }, + "exploratoryView": { + "level": "available", + "summary": "All services and plugins are available" + }, + "observability": { + "level": "available", + "summary": "All services and plugins are available" + }, + "slo": { + "level": "available", + "summary": "All services and plugins are available" + }, + "ml": { + "level": "available", + "summary": "All services and plugins are available" + }, + "searchInferenceEndpoints": { + "level": "available", + "summary": "All services and plugins are available" + }, + "observabilityAIAssistantApp": { + "level": "available", + "summary": "All services and plugins are available" + }, + "elasticAssistant": { + "level": "available", + "summary": "All services and plugins are available" + }, + "osquery": { + "level": "available", + "summary": "All services and plugins are available" + }, + "infra": { + "level": "available", + "summary": "All services and plugins are available" + }, + "upgradeAssistant": { + "level": "available", + "summary": "All services and plugins are available" + }, + "monitoring": { + "level": "available", + "summary": "All services and plugins are available" + }, + "logstash": { + "level": "available", + "summary": "All services and plugins are available" + }, + "uptime": { + "level": "available", + "summary": "All services and plugins are available" + }, + "synthetics": { + "level": "available", + "summary": "All services and plugins are available" + }, + "observabilityOnboarding": { + "level": "available", + "summary": "All services and plugins are available" + }, + "datasetQuality": { + "level": "available", + "summary": "All services and plugins are available" + }, + "dataQuality": { + "level": "available", + "summary": "All services and plugins are available" + }, + "observabilityLogsExplorer": { + "level": "available", + "summary": "All services and plugins are available" + }, + "apm": { + "level": "available", + "summary": "All services and plugins are available" + }, + "ux": { + "level": "available", + "summary": "All services and plugins are available" + }, + "indexManagement": { + "level": "available", + "summary": "All services and plugins are available" + }, + "rollup": { + "level": "available", + "summary": "All services and plugins are available" + }, + "remoteClusters": { + "level": "available", + "summary": "All services and plugins are available" + }, + "crossClusterReplication": { + "level": "available", + "summary": "All services and plugins are available" + }, + "indexLifecycleManagement": { + "level": "available", + "summary": "All services and plugins are available" + }, + "enterpriseSearch": { + "level": "available", + "summary": "All services and plugins are available" + }, + "observabilityAiAssistantManagement": { + "level": "available", + "summary": "All services and plugins are available" + }, + "esql": { + "level": "available", + "summary": "All services and plugins are available" + }, + "cloudSecurityPosture": { + "level": "available", + "summary": "All services and plugins are available" + }, + "cloudDefend": { + "level": "available", + "summary": "All services and plugins are available" + }, + "securitySolution": { + "level": "available", + "summary": "All services and plugins are available" + }, + "securitySolutionEss": { + "level": "available", + "summary": "All services and plugins are available" + }, + "discoverEnhanced": { + "level": "available", + "summary": "All services and plugins are available" + }, + "fleet": { + "level": "available", + "summary": "Fleet is available", + "reported": true + }, + "translations": { + "level": "available", + "summary": "All services are available" + }, + "searchConnectors": { + "level": "available", + "summary": "All services are available" + }, + "runtimeFields": { + "level": "available", + "summary": "All services are available" + }, + "assetsDataAccess": { + "level": "available", + "summary": "All services are available" + }, + "monitoringCollection": { + "level": "available", + "summary": "All services are available" + }, + "licenseApiGuard": { + "level": "available", + "summary": "All services are available" + }, + "fieldsMetadata": { + "level": "available", + "summary": "All services are available" + }, + "urlForwarding": { + "level": "available", + "summary": "All services are available" + }, + "unifiedHistogram": { + "level": "available", + "summary": "All services are available" + }, + "uiActions": { + "level": "available", + "summary": "All services are available" + }, + "share": { + "level": "available", + "summary": "All services are available" + }, + "screenshotMode": { + "level": "available", + "summary": "All services are available" + }, + "savedObjectsFinder": { + "level": "available", + "summary": "All services are available" + }, + "noDataPage": { + "level": "available", + "summary": "All services are available" + }, + "kibanaUtils": { + "level": "available", + "summary": "All services are available" + }, + "kibanaReact": { + "level": "available", + "summary": "All services are available" + }, + "ftrApis": { + "level": "available", + "summary": "All services are available" + }, + "fieldFormats": { + "level": "available", + "summary": "All services are available" + }, + "expressions": { + "level": "available", + "summary": "All services are available" + }, + "esUiShared": { + "level": "available", + "summary": "All services are available" + }, + "discoverShared": { + "level": "available", + "summary": "All services are available" + }, + "customIntegrations": { + "level": "available", + "summary": "All services are available" + }, + "contentManagement": { + "level": "available", + "summary": "All services are available" + }, + "bfetch": { + "level": "available", + "summary": "All services are available" + }, + "globalSearch": { + "level": "available", + "summary": "All services and plugins are available" + }, + "globalSearchProviders": { + "level": "available", + "summary": "All services and plugins are available" + }, + "features": { + "level": "available", + "summary": "All services and plugins are available" + }, + "mapsEms": { + "level": "available", + "summary": "All services and plugins are available" + }, + "customBranding": { + "level": "available", + "summary": "All services and plugins are available" + }, + "devTools": { + "level": "available", + "summary": "All services and plugins are available" + }, + "inspector": { + "level": "available", + "summary": "All services and plugins are available" + }, + "banners": { + "level": "available", + "summary": "All services and plugins are available" + }, + "usageCollection": { + "level": "available", + "summary": "All services and plugins are available" + }, + "cloud": { + "level": "available", + "summary": "All services and plugins are available" + }, + "guidedOnboarding": { + "level": "available", + "summary": "All services and plugins are available" + }, + "telemetryCollectionManager": { + "level": "available", + "summary": "All services and plugins are available" + }, + "telemetryCollectionXpack": { + "level": "available", + "summary": "All services and plugins are available" + }, + "kibanaUsageCollection": { + "level": "available", + "summary": "All services and plugins are available" + }, + "newsfeed": { + "level": "available", + "summary": "All services and plugins are available" + }, + "screenshotting": { + "level": "available", + "summary": "All services and plugins are available" + }, + "dataViews": { + "level": "available", + "summary": "All services and plugins are available" + }, + "cloudExperiments": { + "level": "available", + "summary": "All services and plugins are available" + }, + "home": { + "level": "available", + "summary": "All services and plugins are available" + }, + "searchprofiler": { + "level": "available", + "summary": "All services and plugins are available" + }, + "painlessLab": { + "level": "available", + "summary": "All services and plugins are available" + }, + "grokdebugger": { + "level": "available", + "summary": "All services and plugins are available" + }, + "management": { + "level": "available", + "summary": "All services and plugins are available" + }, + "spaces": { + "level": "available", + "summary": "All services and plugins are available" + }, + "security": { + "level": "available", + "summary": "All services and plugins are available" + }, + "snapshotRestore": { + "level": "available", + "summary": "All services and plugins are available" + }, + "lists": { + "level": "available", + "summary": "All services and plugins are available" + }, + "encryptedSavedObjects": { + "level": "available", + "summary": "All services and plugins are available" + }, + "entityManager": { + "level": "available", + "summary": "All services and plugins are available" + }, + "cloudLinks": { + "level": "available", + "summary": "All services and plugins are available" + }, + "telemetry": { + "level": "available", + "summary": "All services and plugins are available" + }, + "licenseManagement": { + "level": "available", + "summary": "All services and plugins are available" + }, + "files": { + "level": "available", + "summary": "All services and plugins are available" + }, + "filesManagement": { + "level": "available", + "summary": "All services and plugins are available" + }, + "eventLog": { + "level": "available", + "summary": "All services and plugins are available" + }, + "actions": { + "level": "available", + "summary": "All services and plugins are available" + }, + "observabilityAIAssistant": { + "level": "available", + "summary": "All services and plugins are available" + }, + "investigate": { + "level": "available", + "summary": "All services and plugins are available" + }, + "notifications": { + "level": "available", + "summary": "All services and plugins are available" + }, + "cloudDataMigration": { + "level": "available", + "summary": "All services and plugins are available" + }, + "aiAssistantManagementSelection": { + "level": "available", + "summary": "All services and plugins are available" + }, + "advancedSettings": { + "level": "available", + "summary": "All services and plugins are available" + }, + "telemetryManagementSection": { + "level": "available", + "summary": "All services and plugins are available" + }, + "console": { + "level": "available", + "summary": "All services and plugins are available" + }, + "searchNotebooks": { + "level": "available", + "summary": "All services and plugins are available" + }, + "searchHomepage": { + "level": "available", + "summary": "All services and plugins are available" + }, + "data": { + "level": "available", + "summary": "All services and plugins are available" + }, + "logsDataAccess": { + "level": "available", + "summary": "All services and plugins are available" + }, + "apmDataAccess": { + "level": "available", + "summary": "All services and plugins are available" + }, + "fileUpload": { + "level": "available", + "summary": "All services and plugins are available" + }, + "ingestPipelines": { + "level": "available", + "summary": "All services and plugins are available" + }, + "ecsDataQualityDashboard": { + "level": "available", + "summary": "All services and plugins are available" + }, + "unifiedDocViewer": { + "level": "available", + "summary": "All services and plugins are available" + }, + "savedObjects": { + "level": "available", + "summary": "All services and plugins are available" + }, + "savedObjectsTaggingOss": { + "level": "available", + "summary": "All services and plugins are available" + }, + "savedObjectsTagging": { + "level": "available", + "summary": "All services and plugins are available" + }, + "globalSearchBar": { + "level": "available", + "summary": "All services and plugins are available" + }, + "savedObjectsManagement": { + "level": "available", + "summary": "All services and plugins are available" + }, + "unifiedSearch": { + "level": "available", + "summary": "All services and plugins are available" + }, + "navigation": { + "level": "available", + "summary": "All services and plugins are available" + }, + "graph": { + "level": "available", + "summary": "All services and plugins are available" + }, + "presentationPanel": { + "level": "available", + "summary": "All services and plugins are available" + }, + "embeddable": { + "level": "available", + "summary": "All services and plugins are available" + }, + "uiActionsEnhanced": { + "level": "available", + "summary": "All services and plugins are available" + }, + "embeddableEnhanced": { + "level": "available", + "summary": "All services and plugins are available" + }, + "imageEmbeddable": { + "level": "available", + "summary": "All services and plugins are available" + }, + "urlDrilldown": { + "level": "available", + "summary": "All services and plugins are available" + }, + "savedSearch": { + "level": "available", + "summary": "All services and plugins are available" + }, + "presentationUtil": { + "level": "available", + "summary": "All services and plugins are available" + }, + "expressionShape": { + "level": "available", + "summary": "All services and plugins are available" + }, + "expressionRevealImage": { + "level": "available", + "summary": "All services and plugins are available" + }, + "expressionRepeatImage": { + "level": "available", + "summary": "All services and plugins are available" + }, + "expressionMetric": { + "level": "available", + "summary": "All services and plugins are available" + }, + "expressionImage": { + "level": "available", + "summary": "All services and plugins are available" + }, + "expressionError": { + "level": "available", + "summary": "All services and plugins are available" + }, + "controls": { + "level": "available", + "summary": "All services and plugins are available" + }, + "esqlDataGrid": { + "level": "available", + "summary": "All services and plugins are available" + }, + "dataViewFieldEditor": { + "level": "available", + "summary": "All services and plugins are available" + }, + "dataViewEditor": { + "level": "available", + "summary": "All services and plugins are available" + }, + "kibanaOverview": { + "level": "available", + "summary": "All services and plugins are available" + }, + "dataViewManagement": { + "level": "available", + "summary": "All services and plugins are available" + }, + "charts": { + "level": "available", + "summary": "All services and plugins are available" + }, + "watcher": { + "level": "available", + "summary": "All services and plugins are available" + }, + "visualizations": { + "level": "available", + "summary": "All services and plugins are available" + }, + "visTypeXy": { + "level": "available", + "summary": "All services and plugins are available" + }, + "visTypeVislib": { + "level": "available", + "summary": "All services and plugins are available" + }, + "visTypeVega": { + "level": "available", + "summary": "All services and plugins are available" + }, + "visTypeTimeseries": { + "level": "available", + "summary": "All services and plugins are available" + }, + "visTypeTimelion": { + "level": "available", + "summary": "All services and plugins are available" + }, + "visTypeTagcloud": { + "level": "available", + "summary": "All services and plugins are available" + }, + "visTypeTable": { + "level": "available", + "summary": "All services and plugins are available" + }, + "visTypeMetric": { + "level": "available", + "summary": "All services and plugins are available" + }, + "visTypeHeatmap": { + "level": "available", + "summary": "All services and plugins are available" + }, + "visTypeMarkdown": { + "level": "available", + "summary": "All services and plugins are available" + }, + "visDefaultEditor": { + "level": "available", + "summary": "All services and plugins are available" + }, + "inputControlVis": { + "level": "available", + "summary": "All services and plugins are available" + }, + "eventAnnotation": { + "level": "available", + "summary": "All services and plugins are available" + }, + "expressionXY": { + "level": "available", + "summary": "All services and plugins are available" + }, + "dashboard": { + "level": "available", + "summary": "All services and plugins are available" + }, + "dashboardEnhanced": { + "level": "available", + "summary": "All services and plugins are available" + }, + "expressionTagcloud": { + "level": "available", + "summary": "All services and plugins are available" + }, + "expressionPartitionVis": { + "level": "available", + "summary": "All services and plugins are available" + }, + "visTypePie": { + "level": "available", + "summary": "All services and plugins are available" + }, + "expressionMetricVis": { + "level": "available", + "summary": "All services and plugins are available" + }, + "expressionLegacyMetricVis": { + "level": "available", + "summary": "All services and plugins are available" + }, + "expressionHeatmap": { + "level": "available", + "summary": "All services and plugins are available" + }, + "expressionGauge": { + "level": "available", + "summary": "All services and plugins are available" + }, + "lens": { + "level": "available", + "summary": "All services and plugins are available" + }, + "maps": { + "level": "available", + "summary": "All services and plugins are available" + }, + "dataVisualizer": { + "level": "available", + "summary": "All services and plugins are available" + }, + "eventAnnotationListing": { + "level": "available", + "summary": "All services and plugins are available" + }, + "visTypeGauge": { + "level": "available", + "summary": "All services and plugins are available" + }, + "licensing": { + "level": "available", + "summary": "License fetched", + "reported": true + }, + "taskManager": { + "level": "available", + "summary": "Task Manager is healthy", + "reported": true + } + } + }, + "metrics": { + "last_updated": "2024-07-17T09:35:11.129Z", + "collection_interval_in_millis": 5000, + "os": { + "platform": "darwin", + "platformRelease": "darwin-23.5.0", + "load": { + "1m": 12.6708984375, + "5m": 10.1025390625, + "15m": 10.5244140625 + }, + "memory": { + "total_in_bytes": 34359738368, + "free_in_bytes": 82526208, + "used_in_bytes": 34277212160 + }, + "uptime_in_millis": 2116272000 + }, + "process": { + "memory": { + "heap": { + "total_in_bytes": 739229696, + "used_in_bytes": 613658752, + "size_limit": 4345298944 + }, + "resident_set_size_in_bytes": 763396096, + "array_buffers_in_bytes": 15459091, + "external_in_bytes": 18984913 + }, + "pid": 94536, + "event_loop_delay": 29.786111, + "event_loop_delay_histogram": { + "min": 9.09312, + "max": 29.786111, + "mean": 10.76752587473, + "exceeds": 0, + "stddev": 1.65098471681065, + "fromTimestamp": "2024-07-17T09:35:06.129Z", + "lastUpdatedAt": "2024-07-17T09:35:11.128Z", + "percentiles": { + "50": 10.387455, + "75": 10.870783, + "95": 13.459455, + "99": 17.580031 + } + }, + "event_loop_utilization": { + "active": 1574.23844694346, + "idle": 3425.01509500295, + "utilization": 0.31489470052574 + }, + "uptime_in_millis": 57391843.684875 + }, + "processes": [ + { + "memory": { + "heap": { + "total_in_bytes": 739229696, + "used_in_bytes": 613658752, + "size_limit": 4345298944 + }, + "resident_set_size_in_bytes": 763396096, + "array_buffers_in_bytes": 15459091, + "external_in_bytes": 18984913 + }, + "pid": 94536, + "event_loop_delay": 29.786111, + "event_loop_delay_histogram": { + "min": 9.09312, + "max": 29.786111, + "mean": 10.76752587473, + "exceeds": 0, + "stddev": 1.65098471681065, + "fromTimestamp": "2024-07-17T09:35:06.129Z", + "lastUpdatedAt": "2024-07-17T09:35:11.128Z", + "percentiles": { + "50": 10.387455, + "75": 10.870783, + "95": 13.459455, + "99": 17.580031 + } + }, + "event_loop_utilization": { + "active": 1574.23844694346, + "idle": 3425.01509500295, + "utilization": 0.31489470052574 + }, + "uptime_in_millis": 57391843.684875 + } + ], + "response_times": { + "avg_in_millis": 15.8129032258065, + "max_in_millis": 863 + }, + "concurrent_connections": 6, + "requests": { + "disconnects": 0, + "total": 312, + "statusCodes": { + "200": 31, + "302": 2, + "304": 277 + }, + "status_codes": { + "200": 31, + "302": 2, + "304": 277 + } + }, + "elasticsearch_client": { + "totalActiveSockets": 2, + "totalIdleSockets": 8, + "totalQueuedRequests": 0 + } + } +} diff --git a/metricbeat/module/kibana/status/_meta/testdata/8.16.0.json-expected.json b/metricbeat/module/kibana/status/_meta/testdata/8.16.0.json-expected.json new file mode 100644 index 00000000000..46821f87b51 --- /dev/null +++ b/metricbeat/module/kibana/status/_meta/testdata/8.16.0.json-expected.json @@ -0,0 +1,48 @@ +[ + { + "event": { + "dataset": "kibana.status", + "duration": 115000, + "module": "kibana" + }, + "kibana": { + "status": { + "metrics": { + "concurrent_connections": 6, + "requests": { + "disconnects": 0, + "total": 312 + } + }, + "name": "kibana", + "status": { + "overall": { + "level": "available", + "summary": "All services and plugins are available" + }, + "core": { + "elasticsearch": { + "level": "available", + "summary": "Elasticsearch is available" + }, + "savedObjects": { + "level": "available", + "summary": "SavedObjects service has completed migrations and is available" + } + } + } + } + }, + "metricset": { + "name": "status", + "period": 10000 + }, + "service": { + "address": "127.0.0.1:55555", + "id": "5b2de169-2785-441b-ae8c-186a1936b17d", + "name": "kibana", + "type": "kibana", + "version": "8.16.0" + } + } +] diff --git a/metricbeat/module/kibana/status/data.go b/metricbeat/module/kibana/status/data.go index 3f975323a9e..e033a741210 100644 --- a/metricbeat/module/kibana/status/data.go +++ b/metricbeat/module/kibana/status/data.go @@ -38,7 +38,19 @@ var ( }), "status": c.Dict("status", s.Schema{ "overall": c.Dict("overall", s.Schema{ - "state": c.Str("state"), + "state": c.Str("state"), + "level": c.Str("level"), + "summary": c.Str("summary"), + }), + "core": c.Dict("core", s.Schema{ + "elasticsearch": c.Dict("elasticsearch", s.Schema{ + "level": c.Str("level"), + "summary": c.Str("summary"), + }), + "savedObjects": c.Dict("savedObjects", s.Schema{ + "level": c.Str("level"), + "summary": c.Str("summary"), + }), }), }), "metrics": c.Dict("metrics", s.Schema{ diff --git a/metricbeat/module/system/process/process.go b/metricbeat/module/system/process/process.go index ad9fa8d5ac0..684c87059c9 100644 --- a/metricbeat/module/system/process/process.go +++ b/metricbeat/module/system/process/process.go @@ -20,6 +20,7 @@ package process import ( + "errors" "fmt" "os" "runtime" @@ -111,7 +112,8 @@ func (m *MetricSet) Fetch(r mb.ReporterV2) error { // monitor either a single PID, or the configured set of processes. if m.setpid == 0 { procs, roots, err := m.stats.Get() - if err != nil { + if err != nil && !errors.Is(err, process.NonFatalErr{}) { + // return only if the error is fatal in nature return fmt.Errorf("process stats: %w", err) } @@ -121,9 +123,10 @@ func (m *MetricSet) Fetch(r mb.ReporterV2) error { RootFields: roots[evtI], }) if !isOpen { - return nil + return err } } + return err } else { proc, root, err := m.stats.GetOneRootEvent(m.setpid) if err != nil { diff --git a/metricbeat/module/system/process/process_test.go b/metricbeat/module/system/process/process_test.go index 98b48b75d6e..78946913907 100644 --- a/metricbeat/module/system/process/process_test.go +++ b/metricbeat/module/system/process/process_test.go @@ -20,6 +20,7 @@ package process import ( + "errors" "os" "testing" "time" @@ -37,13 +38,17 @@ func TestFetch(t *testing.T) { f := mbtest.NewReportingMetricSetV2Error(t, getConfig()) events, errs := mbtest.ReportingFetchV2Error(f) - assert.Empty(t, errs) + for _, err := range errs { + assert.True(t, errors.Is(err, process.NonFatalErr{})) + } assert.NotEmpty(t, events) time.Sleep(2 * time.Second) events, errs = mbtest.ReportingFetchV2Error(f) - assert.Empty(t, errs) + for _, err := range errs { + assert.True(t, errors.Is(err, process.NonFatalErr{})) + } assert.NotEmpty(t, events) t.Logf("fetched %d events, showing events[0]:", len(events)) diff --git a/metricbeat/module/system/process_summary/process_summary.go b/metricbeat/module/system/process_summary/process_summary.go index c64a0c1d3e1..cbf1c63a2fe 100644 --- a/metricbeat/module/system/process_summary/process_summary.go +++ b/metricbeat/module/system/process_summary/process_summary.go @@ -20,8 +20,9 @@ package process_summary import ( + "errors" "fmt" - "io/ioutil" + "os" "runtime" "strconv" "strings" @@ -68,9 +69,10 @@ func New(base mb.BaseMetricSet) (mb.MetricSet, error) { // descriptive error must be returned. func (m *MetricSet) Fetch(r mb.ReporterV2) error { - procList, err := process.ListStates(m.sys) - if err != nil { - return fmt.Errorf("error fetching process list: %w", err) + procList, degradeErr := process.ListStates(m.sys) + if degradeErr != nil && !errors.Is(degradeErr, process.NonFatalErr{}) { + // return only if the error is fatal in nature + return fmt.Errorf("error fetching process list: %w", degradeErr) } procStates := map[string]int{} @@ -83,7 +85,7 @@ func (m *MetricSet) Fetch(r mb.ReporterV2) error { } outMap := mapstr.M{} - err = typeconv.Convert(&outMap, procStates) + err := typeconv.Convert(&outMap, procStates) if err != nil { return fmt.Errorf("error formatting process stats: %w", err) } @@ -101,13 +103,13 @@ func (m *MetricSet) Fetch(r mb.ReporterV2) error { MetricSetFields: outMap, }) - return nil + return degradeErr } // threadStats returns a map of state counts for running threads on a system func threadStats(sys resolve.Resolver) (mapstr.M, error) { statPath := sys.ResolveHostFS("/proc/stat") - procData, err := ioutil.ReadFile(statPath) + procData, err := os.ReadFile(statPath) if err != nil { return nil, fmt.Errorf("error reading procfs file %s: %w", statPath, err) } diff --git a/metricbeat/module/system/process_summary/process_summary_test.go b/metricbeat/module/system/process_summary/process_summary_test.go index 7ec35634e43..1349fd83b47 100644 --- a/metricbeat/module/system/process_summary/process_summary_test.go +++ b/metricbeat/module/system/process_summary/process_summary_test.go @@ -20,6 +20,7 @@ package process_summary import ( + "errors" "testing" "github.com/stretchr/testify/assert" @@ -46,7 +47,9 @@ func TestFetch(t *testing.T) { f := mbtest.NewReportingMetricSetV2Error(t, getConfig()) events, errs := mbtest.ReportingFetchV2Error(f) - require.Empty(t, errs) + for _, err := range errs { + assert.True(t, errors.Is(err, process.NonFatalErr{})) + } require.NotEmpty(t, events) event := events[0].BeatEvent("system", "process_summary").Fields t.Logf("%s/%s event: %+v", f.Module().Name(), f.Name(), @@ -62,7 +65,9 @@ func TestStateNames(t *testing.T) { f := mbtest.NewReportingMetricSetV2Error(t, getConfig()) events, errs := mbtest.ReportingFetchV2Error(f) - require.Empty(t, errs) + for _, err := range errs { + assert.True(t, errors.Is(err, process.NonFatalErr{})) + } require.NotEmpty(t, events) event := events[0].BeatEvent("system", "process_summary").Fields diff --git a/metricbeat/module/system/test_system.py b/metricbeat/module/system/test_system.py index de113e5e4b0..d93563b2403 100644 --- a/metricbeat/module/system/test_system.py +++ b/metricbeat/module/system/test_system.py @@ -388,6 +388,9 @@ def test_process_summary(self): for evt in output: self.assert_fields_are_documented(evt) + if evt.get("error", None) is not None: + # "error" is a non-fatal error logged by system/process. Ignore and proceed further + continue summary = evt["system"]["process"]["summary"] assert isinstance(summary["total"], int) @@ -420,6 +423,9 @@ def test_process(self): found_cmdline = False for evt in output: + if evt.get("error", None) is not None: + # "error" is a non-fatal error logged by system/process. Ignore and proceed further + continue process = evt["system"]["process"] # Not all process will have 'cmdline' due to permission issues, # especially on Windows. Therefore we ensure at least some of @@ -478,6 +484,9 @@ def test_process_unix(self): found_env = False found_cwd = not sys.platform.startswith("linux") for evt in output: + if evt.get("error", None) is not None: + # "error" is a non-fatal error logged by system/process. Ignore and proceed further + continue found_cwd |= "working_directory" in evt["process"] process = evt["system"]["process"] diff --git a/x-pack/filebeat/input/websocket/input.go b/x-pack/filebeat/input/websocket/input.go index 69810edd944..b4c1b840866 100644 --- a/x-pack/filebeat/input/websocket/input.go +++ b/x-pack/filebeat/input/websocket/input.go @@ -5,15 +5,18 @@ package websocket import ( + "bytes" "context" "errors" "fmt" + "io" "net/url" "reflect" "time" "github.com/google/cel-go/cel" "github.com/gorilla/websocket" + "go.uber.org/zap/zapcore" "google.golang.org/protobuf/types/known/structpb" v2 "github.com/elastic/beats/v7/filebeat/input/v2" @@ -109,7 +112,15 @@ func (i input) run(env v2.Context, src *source, cursor map[string]interface{}, p headers := formHeader(cfg) c, resp, err := websocket.DefaultDialer.DialContext(ctx, url, headers) if resp != nil && resp.Body != nil { - log.Debugw("websocket connection response", "body", resp.Body) + var buf bytes.Buffer + if log.Core().Enabled(zapcore.DebugLevel) { + const limit = 1e4 + io.CopyN(&buf, resp.Body, limit) + } + if n, _ := io.Copy(io.Discard, resp.Body); n != 0 && buf.Len() != 0 { + buf.WriteString("... truncated") + } + log.Debugw("websocket connection response", "body", &buf) resp.Body.Close() } if err != nil { @@ -119,41 +130,26 @@ func (i input) run(env v2.Context, src *source, cursor map[string]interface{}, p } defer c.Close() - done := make(chan error) - - go func() { - defer close(done) - for { - _, message, err := c.ReadMessage() - if err != nil { - metrics.errorsTotal.Inc() - if websocket.IsCloseError(err, websocket.CloseNormalClosure, websocket.CloseGoingAway) { - log.Errorw("websocket connection closed", "error", err) - } else { - log.Errorw("failed to read websocket data", "error", err) - } - done <- err - return - } - metrics.receivedBytesTotal.Add(uint64(len(message))) - state["response"] = message - log.Debugw("received websocket message", logp.Namespace("websocket"), string(message)) - err = i.processAndPublishData(ctx, metrics, prg, ast, state, cursor, pub, log) - if err != nil { - metrics.errorsTotal.Inc() - log.Errorw("failed to process and publish data", "error", err) - done <- err - return + for { + _, message, err := c.ReadMessage() + if err != nil { + metrics.errorsTotal.Inc() + if websocket.IsCloseError(err, websocket.CloseNormalClosure, websocket.CloseGoingAway) { + log.Errorw("websocket connection closed", "error", err) + } else { + log.Errorw("failed to read websocket data", "error", err) } + return err + } + metrics.receivedBytesTotal.Add(uint64(len(message))) + state["response"] = message + log.Debugw("received websocket message", logp.Namespace("websocket"), string(message)) + err = i.processAndPublishData(ctx, metrics, prg, ast, state, cursor, pub, log) + if err != nil { + metrics.errorsTotal.Inc() + log.Errorw("failed to process and publish data", "error", err) + return err } - }() - - // blocks until done is closed, context is cancelled or an error is received - select { - case err := <-done: - return err - case <-ctx.Done(): - return ctx.Err() } } diff --git a/x-pack/filebeat/processors/decode_cef/cef/cef.go b/x-pack/filebeat/processors/decode_cef/cef/cef.go index d9f65ecf658..296e0e56e9e 100644 --- a/x-pack/filebeat/processors/decode_cef/cef/cef.go +++ b/x-pack/filebeat/processors/decode_cef/cef/cef.go @@ -152,6 +152,13 @@ func (e *Event) Unpack(data string, opts ...Option) error { // Mark the data type and do the actual conversion. field.Type = mapping.Type + + if settings.removeEmptyValues && field.String == "" { + // Drop the key because the value is empty field. + delete(e.Extensions, key) + continue + } + field.Interface, err = toType(field.String, mapping.Type, &settings) if err != nil { // Drop the key because the field value is invalid. diff --git a/x-pack/filebeat/processors/decode_cef/cef/cef_test.go b/x-pack/filebeat/processors/decode_cef/cef/cef_test.go index cc4a4ed786c..ec593ddfa53 100644 --- a/x-pack/filebeat/processors/decode_cef/cef/cef_test.go +++ b/x-pack/filebeat/processors/decode_cef/cef/cef_test.go @@ -58,6 +58,8 @@ const ( truncatedHeader = "CEF:0|SentinelOne|Mgmt|activityID=1111111111111111111 activityType=3505 siteId=None siteName=None accountId=1222222222222222222 accountName=foo-bar mdr notificationScope=ACCOUNT" + noValueInExtension = `CEF:26|security|threat=manager|1.0|100|trojan successfully stopped|10|src= dst=12.121.122.82 spt=` + // Found by fuzzing but minimised by hand. fuzz0 = `CEF:0|a=\\ b|` fuzz1 = `CEF:0|\|a=|b=` @@ -84,6 +86,7 @@ var testMessages = []string{ tabMessage, escapedMessage, truncatedHeader, + noValueInExtension, fuzz0, fuzz1, fuzz2, @@ -161,6 +164,22 @@ func TestEventUnpack(t *testing.T) { }, e.Extensions) }) + t.Run("noValueInExtension", func(t *testing.T) { + var e Event + err := e.Unpack(noValueInExtension, WithRemoveEmptyValues()) + assert.NoError(t, err) + assert.Equal(t, 26, e.Version) + assert.Equal(t, "security", e.DeviceVendor) + assert.Equal(t, "threat=manager", e.DeviceProduct) + assert.Equal(t, "1.0", e.DeviceVersion) + assert.Equal(t, "100", e.DeviceEventClassID) + assert.Equal(t, "trojan successfully stopped", e.Name) + assert.Equal(t, "10", e.Severity) + assert.Equal(t, map[string]*Field{ + "dst": IPField("12.121.122.82"), + }, e.Extensions) + }) + t.Run("equalsSignInHeader", func(t *testing.T) { var e Event err := e.Unpack(equalsSignInHeader) diff --git a/x-pack/filebeat/processors/decode_cef/cef/option.go b/x-pack/filebeat/processors/decode_cef/cef/option.go index 2a2e26dcb88..8923947c4a6 100644 --- a/x-pack/filebeat/processors/decode_cef/cef/option.go +++ b/x-pack/filebeat/processors/decode_cef/cef/option.go @@ -16,8 +16,20 @@ type Option interface { // Settings for unpacking messages. type Settings struct { fullExtensionNames bool + removeEmptyValues bool + timezone *time.Location +} - timezone *time.Location +type withRemoveEmptyValues struct{} + +func (w withRemoveEmptyValues) Apply(s *Settings) { + s.removeEmptyValues = true +} + +// WithRemoveEmptyValues causes CEF extension keys without values to be +// dropped. +func WithRemoveEmptyValues() Option { + return withRemoveEmptyValues{} } type withFullExtensionNames struct{} diff --git a/x-pack/filebeat/processors/decode_cef/config.go b/x-pack/filebeat/processors/decode_cef/config.go index 00139c400e4..fe23ca12904 100644 --- a/x-pack/filebeat/processors/decode_cef/config.go +++ b/x-pack/filebeat/processors/decode_cef/config.go @@ -7,13 +7,14 @@ package decode_cef import "github.com/elastic/beats/v7/libbeat/common/cfgtype" type config struct { - Field string `config:"field"` // Source field containing the CEF message. - TargetField string `config:"target_field"` // Target field for the CEF object. - IgnoreMissing bool `config:"ignore_missing"` // Ignore missing source field. - IgnoreFailure bool `config:"ignore_failure"` // Ignore failures when the source field does not contain a CEF message. Parse errors do not cause failures, but are added to error.message. - ID string `config:"id"` // Instance ID for debugging purposes. - ECS bool `config:"ecs"` // Generate ECS fields. - Timezone *cfgtype.Timezone `config:"timezone"` // Timezone used when parsing timestamps that do not contain a time zone or offset. + Field string `config:"field"` // Source field containing the CEF message. + TargetField string `config:"target_field"` // Target field for the CEF object. + IgnoreMissing bool `config:"ignore_missing"` // Ignore missing source field. + IgnoreFailure bool `config:"ignore_failure"` // Ignore failures when the source field does not contain a CEF message. Parse errors do not cause failures, but are added to error.message. + IgnoreEmptyValues bool `config:"ignore_empty_values"` // Ignore CEF extensions with empty values + ID string `config:"id"` // Instance ID for debugging purposes. + ECS bool `config:"ecs"` // Generate ECS fields. + Timezone *cfgtype.Timezone `config:"timezone"` // Timezone used when parsing timestamps that do not contain a time zone or offset. } func defaultConfig() config { diff --git a/x-pack/filebeat/processors/decode_cef/decode_cef.go b/x-pack/filebeat/processors/decode_cef/decode_cef.go index 2e42f846eae..f07f59a44cb 100644 --- a/x-pack/filebeat/processors/decode_cef/decode_cef.go +++ b/x-pack/filebeat/processors/decode_cef/decode_cef.go @@ -88,7 +88,7 @@ func (p *processor) Run(event *beat.Event) (*beat.Event, error) { // If the version < 0 after parsing then none of the data is valid so return here. var ce cef.Event - if err = ce.Unpack(cefData, cef.WithFullExtensionNames(), cef.WithTimezone(p.Timezone.Location())); ce.Version < 0 && err != nil { + if err = ce.Unpack(cefData, cef.WithFullExtensionNames(), cef.WithTimezone(p.Timezone.Location()), cef.WithRemoveEmptyValues()); ce.Version < 0 && err != nil { if p.IgnoreFailure { return event, nil } @@ -141,7 +141,6 @@ func (p *processor) Run(event *beat.Event) (*beat.Event, error) { return event, nil } -//nolint:errcheck // All errors are from mapstr puts. func toCEFObject(cefEvent *cef.Event) mapstr.M { // Add CEF header fields. cefObject := mapstr.M{"version": strconv.Itoa(cefEvent.Version)} @@ -180,32 +179,35 @@ func toCEFObject(cefEvent *cef.Event) mapstr.M { return cefObject } -//nolint:errcheck // All errors are from mapstr puts. func writeCEFHeaderToECS(cefEvent *cef.Event, event *beat.Event) { if cefEvent.DeviceVendor != "" { + //nolint:errcheck // All errors are from mapstr puts. event.PutValue("observer.vendor", cefEvent.DeviceVendor) } if cefEvent.DeviceProduct != "" { - // TODO: observer.product is not officially part of ECS. + //nolint:errcheck // All errors are from mapstr puts. event.PutValue("observer.product", cefEvent.DeviceProduct) } if cefEvent.DeviceVersion != "" { + //nolint:errcheck // All errors are from mapstr puts. event.PutValue("observer.version", cefEvent.DeviceVersion) } if cefEvent.DeviceEventClassID != "" { + //nolint:errcheck // All errors are from mapstr puts. event.PutValue("event.code", cefEvent.DeviceEventClassID) } if cefEvent.Name != "" { + //nolint:errcheck // All errors are from mapstr puts. event.PutValue("message", cefEvent.Name) } if cefEvent.Severity != "" { if sev, ok := cefSeverityToNumber(cefEvent.Severity); ok { + //nolint:errcheck // All errors are from mapstr puts. event.PutValue("event.severity", sev) } } } -//nolint:errcheck // All errors are from mapstr puts. func appendErrorMessage(m mapstr.M, msg string) error { const field = "error.message" list, _ := m.GetValue(field) diff --git a/x-pack/filebeat/processors/decode_cef/decode_cef_test.go b/x-pack/filebeat/processors/decode_cef/decode_cef_test.go index e5db6718291..e9bade08de5 100644 --- a/x-pack/filebeat/processors/decode_cef/decode_cef_test.go +++ b/x-pack/filebeat/processors/decode_cef/decode_cef_test.go @@ -59,6 +59,33 @@ func TestProcessorRun(t *testing.T) { "source.user.name": "admin", }, }, + "empty_field_values": { + config: func() config { + c := defaultConfig() + c.TargetField = "" + c.IgnoreEmptyValues = true + return c + }, + message: "CEF:1|Trend Micro|Deep Security Manager|1.2.3|600|User Signed In|3|src= suser= target=admin msg=User signed in from 2001:db8::5", + fields: mapstr.M{ + "version": "1", + "device.event_class_id": "600", + "device.product": "Deep Security Manager", + "device.vendor": "Trend Micro", + "device.version": "1.2.3", + "name": "User Signed In", + "severity": "3", + "event.severity": 3, + "extensions.message": "User signed in from 2001:db8::5", + "extensions.target": "admin", + // ECS + "event.code": "600", + "message": "User signed in from 2001:db8::5", + "observer.product": "Deep Security Manager", + "observer.vendor": "Trend Micro", + "observer.version": "1.2.3", + }, + }, "parse_errors": { message: "CEF:0|Trend Micro|Deep Security Manager|1.2.3|600|User Signed In|Low|msg=User signed in with =xyz", fields: mapstr.M{ diff --git a/x-pack/filebeat/processors/decode_cef/docs/decode_cef.asciidoc b/x-pack/filebeat/processors/decode_cef/docs/decode_cef.asciidoc index 859d24c49c2..c80bc38d1c3 100644 --- a/x-pack/filebeat/processors/decode_cef/docs/decode_cef.asciidoc +++ b/x-pack/filebeat/processors/decode_cef/docs/decode_cef.asciidoc @@ -37,13 +37,14 @@ The `decode_cef` processor has the following configuration settings. .Decode CEF options [options="header"] |====== -| Name | Required | Default | Description | -| `field` | no | message | Source field containing the CEF message to be parsed. | -| `target_field` | no | cef | Target field where the parsed CEF object will be written. | -| `ecs` | no | true | Generate Elastic Common Schema (ECS) fields from the CEF data. - Certain CEF header and extension values will be used to populate ECS fields. | -| `timezone` | no | UTC | IANA time zone name (e.g. `America/New_York`) or fixed time offset (e.g. `+0200`) to use when parsing times that do not contain a time zone. `Local` may be specified to use the machine's local time zone.| -| `ignore_missing` | no | false | Ignore errors when the source field is missing. | -| `ignore_failure` | no | false | Ignore failures when the source field does not contain a CEF message. | -| `id` | no | | An identifier for this processor instance. Useful for debugging. | +| Name | Required | Default | Description | +| `field` | no | message | Source field containing the CEF message to be parsed. | +| `target_field` | no | cef | Target field where the parsed CEF object will be written. | +| `ecs` | no | true | Generate Elastic Common Schema (ECS) fields from the CEF data. + Certain CEF header and extension values will be used to populate ECS fields. | +| `timezone` | no | UTC | IANA time zone name (e.g. `America/New_York`) or fixed time offset (e.g. `+0200`) to use when parsing times that do not contain a time zone. `Local` may be specified to use the machine's local time zone.| +| `ignore_missing` | no | false | Ignore errors when the source field is missing. | +| `ignore_failure` | no | false | Ignore failures when the source field does not contain a CEF message. | +| `ignore_empty_values` | no | false | Ignore CEF extensions with empty values (e.g. `spt= type=1`) | +| `id` | no | | An identifier for this processor instance. Useful for debugging. | |====== diff --git a/x-pack/filebeat/tests/integration/status_reporter_test.go b/x-pack/filebeat/tests/integration/status_reporter_test.go new file mode 100644 index 00000000000..f9e31703038 --- /dev/null +++ b/x-pack/filebeat/tests/integration/status_reporter_test.go @@ -0,0 +1,205 @@ +// Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one +// or more contributor license agreements. Licensed under the Elastic License; +// you may not use this file except in compliance with the Elastic License. + +//go:build integration + +package integration + +import ( + "fmt" + "os" + "path/filepath" + "runtime" + "testing" + "time" + + "github.com/stretchr/testify/require" + "google.golang.org/grpc" + "google.golang.org/grpc/credentials/insecure" + + "github.com/elastic/elastic-agent-client/v7/pkg/client" + "github.com/elastic/elastic-agent-client/v7/pkg/client/mock" + "github.com/elastic/elastic-agent-client/v7/pkg/proto" + + "github.com/elastic/beats/v7/libbeat/common/reload" + lbmanagement "github.com/elastic/beats/v7/libbeat/management" + "github.com/elastic/beats/v7/x-pack/filebeat/cmd" + "github.com/elastic/beats/v7/x-pack/libbeat/management" + "github.com/elastic/beats/v7/x-pack/libbeat/management/tests" + + conf "github.com/elastic/elastic-agent-libs/config" +) + +func TestLogStatusReporter(t *testing.T) { + unitOneID := mock.NewID() + unitOutID := mock.NewID() + token := mock.NewID() + + tests.InitBeatsForTest(t, cmd.Filebeat()) + tmpDir := t.TempDir() + filename := fmt.Sprintf("test-%d", time.Now().Unix()) + outPath := filepath.Join(tmpDir, filename) + t.Logf("writing output to file %s", outPath) + err := os.Mkdir(outPath, 0775) + require.NoError(t, err) + + /* + * valid input stream, shouldn't raise any error. + */ + inputStream := getInputStream(unitOneID, filepath.Join(tmpDir, "*.log"), 2) + require.NoError(t, os.WriteFile(filepath.Join(tmpDir, "test.log"), []byte("Line1\nLine2\nLine3\n"), 0777)) + /* + * try to open an irregular file. + * This should throw "Tried to open non regular file:" and status to degraded + */ + nullDeviceFile := "/dev/null" + if runtime.GOOS == "windows" { + nullDeviceFile = "NUL" + } + inputStreamIrregular := getInputStream(unitOneID, nullDeviceFile, 1) + + outputExpectedStream := proto.UnitExpected{ + Id: unitOutID, + Type: proto.UnitType_OUTPUT, + ConfigStateIdx: 1, + State: proto.State_HEALTHY, + Config: &proto.UnitExpectedConfig{ + Type: "file", + Source: tests.RequireNewStruct(map[string]interface{}{ + "type": "file", + "enabled": true, + "path": outPath, + "filename": "beat-out", + "number_of_files": 7, + }), + }, + } + + observedStates := make(chan *proto.CheckinObserved) + expectedUnits := make(chan []*proto.UnitExpected) + done := make(chan struct{}) + // V2 mock server + server := &mock.StubServerV2{ + CheckinV2Impl: func(observed *proto.CheckinObserved) *proto.CheckinExpected { + select { + case observedStates <- observed: + return &proto.CheckinExpected{ + Units: <-expectedUnits, + } + case <-done: + return nil + } + }, + ActionImpl: func(response *proto.ActionResponse) error { + return nil + }, + } + require.NoError(t, server.Start()) + defer server.Stop() + + // start the client + client := client.NewV2(fmt.Sprintf(":%d", server.Port), token, client.VersionInfo{ + Name: "program", + }, client.WithGRPCDialOptions(grpc.WithTransportCredentials(insecure.NewCredentials()))) + + lbmanagement.SetManagerFactory(func(cfg *conf.C, registry *reload.Registry) (lbmanagement.Manager, error) { + c := management.DefaultConfig() + if err := cfg.Unpack(&c); err != nil { + return nil, err + } + return management.NewV2AgentManagerWithClient(c, registry, client, management.WithStopOnEmptyUnits) + }) + + go func() { + t.Logf("Running beats...") + err := cmd.Filebeat().Execute() + require.NoError(t, err) + }() + + scenarios := []struct { + expectedStatus proto.State + nextInputunit *proto.UnitExpected + }{ + { + proto.State_HEALTHY, + &inputStreamIrregular, + }, + { + proto.State_DEGRADED, + &inputStream, + }, + { + proto.State_HEALTHY, + &inputStream, + }, + // wait for one more checkin, just to be sure it's healthy + { + proto.State_HEALTHY, + &inputStream, + }, + } + + timer := time.NewTimer(2 * time.Minute) + id := 0 + for id < len(scenarios) { + select { + case observed := <-observedStates: + state := extractState(observed.GetUnits(), unitOneID) + expectedUnits <- []*proto.UnitExpected{ + scenarios[id].nextInputunit, + &outputExpectedStream, + } + if state != scenarios[id].expectedStatus { + continue + } + // always ensure that output is healthy + outputState := extractState(observed.GetUnits(), unitOutID) + require.Equal(t, outputState, proto.State_HEALTHY) + + timer.Reset(2 * time.Minute) + id++ + case <-timer.C: + t.Fatal("timeout waiting for checkin") + default: + } + } + require.Eventually(t, func() bool { + events := tests.ReadLogLines(t, outPath) + return events > 0 // wait until we see one output event + }, 15*time.Second, 1*time.Second) +} + +func extractState(units []*proto.UnitObserved, idx string) proto.State { + for _, unit := range units { + if unit.Id == idx { + return unit.GetState() + } + } + return -1 +} + +func getInputStream(id string, path string, stateIdx int) proto.UnitExpected { + return proto.UnitExpected{ + Id: id, + Type: proto.UnitType_INPUT, + ConfigStateIdx: uint64(stateIdx), + State: proto.State_HEALTHY, + Config: &proto.UnitExpectedConfig{ + Streams: []*proto.Stream{{ + Id: "filebeat/log-default-system", + Source: tests.RequireNewStruct(map[string]interface{}{ + "enabled": true, + "symlinks": true, + "type": "log", + "paths": []interface{}{path}, + "scan_frequency": "500ms", + }), + }}, + Type: "log", + Id: "log-input-test", + Name: "log-1", + Revision: 1, + }, + } +}