-
Notifications
You must be signed in to change notification settings - Fork 147
Description
- Logstash -oss version 7.16-8.1
- Docker
- K8s - Openshift 4.7
- Included in image
Hello. Trouble in S3 input plugin with private S3 like AWS Minio.
Logstash normally read object and send to output, but backup or delete is not working.
Object staying in source bucket with no changes, objects are small json access log files, average size is 1-2 kB.
Input config:
input {
s3 {
access_key_id => "${S3_ACCESS_KEY}"
secret_access_key => "${S3_SECRET_KEY}"
endpoint => {{ $.Values.s3_connect_endpoint | quote }}
bucket => "test-bucket"
prefix => "prefix"
backup_to_bucket => "backup-bucket"
backup_add_prefix => "processed"
delete => true
}
}
IAM role is allowed to any actions, checked that by delete object with mcli tool.
In S3 access logs i see only success (200) GET and HEAD, and no one PUT, POST or DELETE.
In logstash log i see only success logs like below
{"level":"INFO","loggerName":"logstash.inputs.s3","timeMillis":1646814827669,"thread":"[main]<s3","logEvent":{"message":"epaas-caasv3-backups/2022-03-05-09-20-02-312 is updated at 2022-03-05 06:20:02 +0000 and will process in the next cycle"}}
{"level":"INFO","loggerName":"logstash.inputs.s3","timeMillis":1646814827800,"thread":"[main]<s3","logEvent":{"message":"epaas-caasv3-backups/2022-03-05-09-20-02-396 is updated at 2022-03-05 06:20:02 +0000 and will process in the next cycle"}}
{"level":"INFO","loggerName":"logstash.inputs.s3","timeMillis":1646814827932,"thread":"[main]<s3","logEvent":{"message":"epaas-caasv3-backups/2022-03-05-09-20-03-185 is updated at 2022-03-05 06:20:03 +0000 and will process in the next cycle"}}
33
Found some interesting code
https://github.com/logstash-plugins/logstash-input-s3/blob/main/lib/logstash/inputs/s3.rb#L383
As i understand - plugin compare last_modified of object and log, and according to my log - postpone object processing to next cycle, and after default 60 seconds it repeating again.
Also trying to set sincedb_path => "/tmp/logstash/since.db" , but it is not creating.
Objects from bucket downloaded in /tmp/logstash/ and staying there.