logstash-input-google_cloud_storage 0.13.0-java → 0.14.0-java
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +3 -0
- data/README.md +14 -4
- data/docs/index.asciidoc +5 -2
- data/lib/logstash/inputs/cloud_storage/client.rb +29 -12
- data/lib/logstash-input-google_cloud_storage_jars.rb +1 -1
- data/vendor/jar-dependencies/org/logstash/inputs/plugin/0.14.0/plugin-0.14.0.jar +0 -0
- data/version +1 -1
- metadata +3 -3
- data/vendor/jar-dependencies/org/logstash/inputs/plugin/0.13.0/plugin-0.13.0.jar +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d5deb7203755cea341c28b9ae42f8e62605c0c4ac3880ae1ecb58fd4f92cda63
|
4
|
+
data.tar.gz: dba78aed232fa56d67341ad5e4e3dd6a7361d42c2df2ae040f4795cc63dbcd90
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 93c2a0b32fea57e63490d67bd3ff6995d58c8f1dcceec472435d073751d5aed8bfd0202a5e42cf872562c3d9d798cc88d0cf6ebdfba3cd6652c53c18654a1786
|
7
|
+
data.tar.gz: f9edbf2e175a54ac412bff1fb6b516381875c8a72188bfbbe2c8039905c64a70238ca7a89432d090edfe09ec2fad86a0261c37da62d66d20f0c354c17cd732b8
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,6 @@
|
|
1
|
+
## 0.14.0
|
2
|
+
- Feature, update so that unauthenticated client can access public buckets [#24](https://github.com/logstash-plugins/logstash-input-google_cloud_storage/pull/24)
|
3
|
+
|
1
4
|
## 0.13.0
|
2
5
|
- Updated Google Cloud Storage client library, from `1.118.1` to `2.12.0` [#21](https://github.com/logstash-plugins/logstash-output-google_cloud_storage/pull/21)
|
3
6
|
|
data/README.md
CHANGED
@@ -26,19 +26,29 @@ Need help? Try #logstash on freenode IRC or the https://discuss.elastic.co/c/log
|
|
26
26
|
|
27
27
|
## Developing
|
28
28
|
|
29
|
-
### 1. Plugin
|
29
|
+
### 1. Plugin Development and Testing
|
30
30
|
|
31
31
|
#### Code
|
32
|
+
|
32
33
|
- To get started, you'll need JRuby with the Bundler gem installed.
|
34
|
+
- You'll also need a Logstash installation to build the plugin against.
|
33
35
|
|
34
36
|
- Create a new plugin or clone and existing from the GitHub [logstash-plugins](https://github.com/logstash-plugins) organization. We also provide [example plugins](https://github.com/logstash-plugins?query=example).
|
37
|
+
- `export LOGSTASH_SOURCE=1` and point `LOGSTASH_PATH` to a local Logstash
|
38
|
+
e.g. `export LOGSTASH_PATH=/opt/local/logstash-8.7.0`
|
35
39
|
|
36
|
-
- Install dependencies
|
40
|
+
- Install Ruby dependencies
|
37
41
|
```sh
|
38
42
|
bundle install
|
39
|
-
bundle exec rake vendor
|
40
43
|
```
|
41
44
|
|
45
|
+
- Install Java dependencies - regenerates the *lib/logstash-input-google_cloud_storage_jars.rb*
|
46
|
+
script used to load the .jar dependencies when the plugin starts.
|
47
|
+
```sh
|
48
|
+
./gradlew vendor
|
49
|
+
```
|
50
|
+
NOTE: This step is necessary whenever **build.gradle** is updated.
|
51
|
+
|
42
52
|
#### Test
|
43
53
|
|
44
54
|
- Update your dependencies
|
@@ -47,7 +57,7 @@ bundle exec rake vendor
|
|
47
57
|
bundle install
|
48
58
|
```
|
49
59
|
|
50
|
-
- Run tests
|
60
|
+
- Run Ruby tests
|
51
61
|
|
52
62
|
```sh
|
53
63
|
bundle exec rspec
|
data/docs/index.asciidoc
CHANGED
@@ -56,6 +56,8 @@ To manually install the "mimemagic" gem into Logstash use:
|
|
56
56
|
bin/ruby -S gem install mimemagic -v '>= 0.3.7'
|
57
57
|
----------------------------------
|
58
58
|
|
59
|
+
The mimemagic gem also requires the `shared-mime-info` package to be present, it can be installed using `apt-get install shared-mime-info` on Debian/Ubuntu or `yum install shared-mime-info` on Red Hat/RockyOS distributions.
|
60
|
+
|
59
61
|
Then install the plugin as usual with:
|
60
62
|
[source,bash]
|
61
63
|
----------------------------------
|
@@ -217,8 +219,9 @@ The bucket containing your log files.
|
|
217
219
|
* There is no default value for this setting.
|
218
220
|
|
219
221
|
The path to the key to authenticate your user to the bucket.
|
220
|
-
This service user _should_ have the `storage.objects.update` permission so it can
|
221
|
-
|
222
|
+
This service user _should_ have the `storage.objects.update` permission so it can create metadata on the object preventing it from being scanned multiple times.
|
223
|
+
|
224
|
+
If no key is provided the plugin will try to use the https://cloud.google.com/java/docs/reference/google-auth-library/latest/com.google.auth.oauth2.GoogleCredentials#com_google_auth_oauth2_GoogleCredentials_getApplicationDefault__[default application credentials], and if they don't exist, it falls back to unauthenticated mode.
|
222
225
|
|
223
226
|
[id="plugins-{type}s-{plugin}-interval"]
|
224
227
|
===== `interval`
|
@@ -27,24 +27,41 @@ module LogStash
|
|
27
27
|
end
|
28
28
|
|
29
29
|
private
|
30
|
-
|
30
|
+
|
31
|
+
|
31
32
|
def initialize_storage(json_key_path)
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
.getService()
|
33
|
+
builder = setup_builder_from_credentials(json_key_path)
|
34
|
+
builder.setHeaderProvider(http_headers)
|
35
|
+
.setRetrySettings(retry_settings)
|
36
|
+
.build()
|
37
|
+
.getService()
|
38
38
|
end
|
39
|
-
|
39
|
+
|
40
40
|
java_import 'com.google.auth.oauth2.GoogleCredentials'
|
41
|
-
def
|
42
|
-
|
41
|
+
def setup_builder_from_credentials(json_key_path)
|
42
|
+
# initialize the StorageOptions builder
|
43
|
+
builder = com.google.cloud.storage.StorageOptions.newBuilder()
|
43
44
|
|
44
|
-
|
45
|
-
|
45
|
+
# initialize it normally if a json_key_path is provided
|
46
|
+
if !json_key_path.empty?
|
47
|
+
key_file = java.io.FileInputStream.new(json_key_path)
|
48
|
+
builder.setCredentials(GoogleCredentials.fromStream(key_file))
|
49
|
+
else
|
50
|
+
# if a json_key_path is not provided, try using the getApplicationDefault, normally
|
51
|
+
# using GOOGLE_APPLICATION_CREDENTIALS env variable
|
52
|
+
begin
|
53
|
+
builder.setCredentials(GoogleCredentials.getApplicationDefault())
|
54
|
+
rescue Java::JavaIo::IOException => e
|
55
|
+
# an IOException is generated if no default credentials exist, trying unauthenticated
|
56
|
+
builder = com.google.cloud.storage.StorageOptions.getUnauthenticatedInstance()
|
57
|
+
.toBuilder()
|
58
|
+
end
|
59
|
+
end
|
60
|
+
return builder
|
46
61
|
end
|
47
62
|
|
63
|
+
|
64
|
+
|
48
65
|
java_import 'com.google.api.gax.rpc.FixedHeaderProvider'
|
49
66
|
def http_headers
|
50
67
|
gem_name = 'logstash-input-google_cloud_storage'
|
@@ -35,4 +35,4 @@ require_jar('com.google.protobuf', 'protobuf-java-util', '3.21.6')
|
|
35
35
|
require_jar('org.threeten', 'threetenbp', '1.6.1')
|
36
36
|
require_jar('com.fasterxml.jackson.core', 'jackson-core', '2.13.4')
|
37
37
|
require_jar('com.google.code.findbugs', 'jsr305', '3.0.2')
|
38
|
-
require_jar('org.logstash.inputs', 'plugin', '0.
|
38
|
+
require_jar('org.logstash.inputs', 'plugin', '0.14.0')
|
data/version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.14.0
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: logstash-input-google_cloud_storage
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.14.0
|
5
5
|
platform: java
|
6
6
|
authors:
|
7
7
|
- Elastic
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2023-05-02 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
@@ -182,7 +182,7 @@ files:
|
|
182
182
|
- vendor/jar-dependencies/io/opencensus/opencensus-contrib-http-util/0.31.1/opencensus-contrib-http-util-0.31.1.jar
|
183
183
|
- vendor/jar-dependencies/javax/annotation/javax.annotation-api/1.3.2/javax.annotation-api-1.3.2.jar
|
184
184
|
- vendor/jar-dependencies/org/checkerframework/checker-qual/3.25.0/checker-qual-3.25.0.jar
|
185
|
-
- vendor/jar-dependencies/org/logstash/inputs/plugin/0.
|
185
|
+
- vendor/jar-dependencies/org/logstash/inputs/plugin/0.14.0/plugin-0.14.0.jar
|
186
186
|
- vendor/jar-dependencies/org/threeten/threetenbp/1.6.1/threetenbp-1.6.1.jar
|
187
187
|
- version
|
188
188
|
homepage: http://www.elastic.co/guide/en/logstash/current/index.html
|
Binary file
|