diff --git a/Bigdata/logstash/9.1.3/24.03-lts-sp1/.DS_Store b/Bigdata/logstash/9.1.3/24.03-lts-sp1/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..ac0df5cead08e3564891046a912a7f51c3aaab65 Binary files /dev/null and b/Bigdata/logstash/9.1.3/24.03-lts-sp1/.DS_Store differ diff --git a/Bigdata/logstash/9.1.3/24.03-lts-sp1/Dockerfile b/Bigdata/logstash/9.1.3/24.03-lts-sp1/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..43edc4b6450b99e9f0a96089a6448a3f976fc741 --- /dev/null +++ b/Bigdata/logstash/9.1.3/24.03-lts-sp1/Dockerfile @@ -0,0 +1,47 @@ +ARG BASE=openeuler/openeuler:24.03-lts-sp1 +FROM ${BASE} + +ARG TARGETARCH +ARG BUILDARCH +ARG VERSION=9.1.3 + +RUN yum install -y shadow procps findutils tar gzip glibc-langpack-en +RUN groupadd -g 1000 logstash && \ + useradd -u 1000 -g 1000 -d /usr/share/logstash -M logstash + +RUN if [ "$TARGETARCH" = "amd64" ]; then \ + BUILDARCH="x86_64"; \ + elif [ "$TARGETARCH" = "arm64" ]; then \ + BUILDARCH="aarch64"; \ + fi; \ + curl --retry 10 -s -L --output /tmp/logstash.tar.gz https://artifacts.elastic.co/downloads/logstash/logstash-${VERSION}-linux-${BUILDARCH}.tar.gz + +WORKDIR /usr/share/logstash +RUN tar -zxf /tmp/logstash.tar.gz -C /usr/share/logstash --strip-components=1 && \ + chown --recursive logstash:logstash /usr/share/logstash/ && \ + chown -R logstash:root /usr/share/logstash && \ + chmod -R g=u /usr/share/logstash && \ + mkdir /licenses/ && \ + mv /usr/share/logstash/NOTICE.TXT /licenses/NOTICE.TXT && \ + mv /usr/share/logstash/LICENSE.txt /licenses/LICENSE.txt && \ + find /usr/share/logstash -type d -exec chmod g+s {} \; && \ + ln -s /usr/share/logstash /opt/logstash + + +ENV ELASTIC_CONTAINER true +ENV PATH=/usr/share/logstash/bin:$PATH +ENV LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8 + +COPY entrypoint.sh /usr/local/bin/ +COPY config/logstash-full.yml config/logstash.yml +COPY config/pipelines.yml config/log4j2.properties config/log4j2.file.properties config/ +COPY config/default.conf pipeline/logstash.conf +COPY env2yaml/env2yaml-${TARGETARCH} /usr/local/bin/env2yaml + +RUN chown --recursive logstash:root config/ pipeline/ +RUN chmod 0755 /usr/local/bin/entrypoint.sh && \ + chmod 0755 /usr/local/bin/env2yaml + +USER 1000 +EXPOSE 9600 5044 +ENTRYPOINT ["/usr/local/bin/entrypoint.sh"] \ No newline at end of file diff --git a/Bigdata/logstash/9.1.3/24.03-lts-sp1/config/default.conf b/Bigdata/logstash/9.1.3/24.03-lts-sp1/config/default.conf new file mode 100644 index 0000000000000000000000000000000000000000..40785ed298617f3d0d259a6ab78e2da3bb96b5fb --- /dev/null +++ b/Bigdata/logstash/9.1.3/24.03-lts-sp1/config/default.conf @@ -0,0 +1,11 @@ +input { + beats { + port => 5044 + } +} + +output { + stdout { + codec => rubydebug + } +} diff --git a/Bigdata/logstash/9.1.3/24.03-lts-sp1/config/log4j2.file.properties b/Bigdata/logstash/9.1.3/24.03-lts-sp1/config/log4j2.file.properties new file mode 100644 index 0000000000000000000000000000000000000000..fc94a7e69e7f48939eb5c234ef0fe666f250570c --- /dev/null +++ b/Bigdata/logstash/9.1.3/24.03-lts-sp1/config/log4j2.file.properties @@ -0,0 +1,147 @@ +status = error +name = LogstashPropertiesConfig + +appender.console.type = Console +appender.console.name = plain_console +appender.console.layout.type = PatternLayout +appender.console.layout.pattern = [%d{ISO8601}][%-5p][%-25c]%notEmpty{[%X{pipeline.id}]}%notEmpty{[%X{plugin.id}]} %m%n + +appender.json_console.type = Console +appender.json_console.name = json_console +appender.json_console.layout.type = JSONLayout +appender.json_console.layout.compact = true +appender.json_console.layout.eventEol = true + +appender.rolling.type = RollingFile +appender.rolling.name = plain_rolling +appender.rolling.fileName = ${sys:ls.logs}/logstash-plain.log +appender.rolling.filePattern = ${sys:ls.logs}/logstash-plain-%d{yyyy-MM-dd}-%i.log.gz +appender.rolling.policies.type = Policies +appender.rolling.policies.time.type = TimeBasedTriggeringPolicy +appender.rolling.policies.time.interval = 1 +appender.rolling.policies.time.modulate = true +appender.rolling.layout.type = PatternLayout +appender.rolling.layout.pattern = [%d{ISO8601}][%-5p][%-25c]%notEmpty{[%X{pipeline.id}]}%notEmpty{[%X{plugin.id}]} %m%n +appender.rolling.policies.size.type = SizeBasedTriggeringPolicy +appender.rolling.policies.size.size = 100MB +appender.rolling.strategy.type = DefaultRolloverStrategy +appender.rolling.strategy.max = 30 +appender.rolling.avoid_pipelined_filter.type = PipelineRoutingFilter + +appender.json_rolling.type = RollingFile +appender.json_rolling.name = json_rolling +appender.json_rolling.fileName = ${sys:ls.logs}/logstash-json.log +appender.json_rolling.filePattern = ${sys:ls.logs}/logstash-json-%d{yyyy-MM-dd}-%i.log.gz +appender.json_rolling.policies.type = Policies +appender.json_rolling.policies.time.type = TimeBasedTriggeringPolicy +appender.json_rolling.policies.time.interval = 1 +appender.json_rolling.policies.time.modulate = true +appender.json_rolling.layout.type = JSONLayout +appender.json_rolling.layout.compact = true +appender.json_rolling.layout.eventEol = true +appender.json_rolling.policies.size.type = SizeBasedTriggeringPolicy +appender.json_rolling.policies.size.size = 100MB +appender.json_rolling.strategy.type = DefaultRolloverStrategy +appender.json_rolling.strategy.max = 30 +appender.json_rolling.avoid_pipelined_filter.type = PipelineRoutingFilter + +appender.routing.type = PipelineRouting +appender.routing.name = pipeline_routing_appender +appender.routing.pipeline.type = RollingFile +appender.routing.pipeline.name = appender-${ctx:pipeline.id} +appender.routing.pipeline.fileName = ${sys:ls.logs}/pipeline_${ctx:pipeline.id}.log +appender.routing.pipeline.filePattern = ${sys:ls.logs}/pipeline_${ctx:pipeline.id}.%i.log.gz +appender.routing.pipeline.layout.type = PatternLayout +appender.routing.pipeline.layout.pattern = [%d{ISO8601}][%-5p][%-25c] %m%n +appender.routing.pipeline.policy.type = SizeBasedTriggeringPolicy +appender.routing.pipeline.policy.size = 100MB +appender.routing.pipeline.strategy.type = DefaultRolloverStrategy +appender.routing.pipeline.strategy.max = 30 + +rootLogger.level = ${sys:ls.log.level} +rootLogger.appenderRef.console.ref = ${sys:ls.log.format}_console +rootLogger.appenderRef.rolling.ref = ${sys:ls.log.format}_rolling +rootLogger.appenderRef.routing.ref = pipeline_routing_appender + +# Slowlog + +appender.console_slowlog.type = Console +appender.console_slowlog.name = plain_console_slowlog +appender.console_slowlog.layout.type = PatternLayout +appender.console_slowlog.layout.pattern = [%d{ISO8601}][%-5p][%-25c] %m%n + +appender.json_console_slowlog.type = Console +appender.json_console_slowlog.name = json_console_slowlog +appender.json_console_slowlog.layout.type = JSONLayout +appender.json_console_slowlog.layout.compact = true +appender.json_console_slowlog.layout.eventEol = true + +appender.rolling_slowlog.type = RollingFile +appender.rolling_slowlog.name = plain_rolling_slowlog +appender.rolling_slowlog.fileName = ${sys:ls.logs}/logstash-slowlog-plain.log +appender.rolling_slowlog.filePattern = ${sys:ls.logs}/logstash-slowlog-plain-%d{yyyy-MM-dd}-%i.log.gz +appender.rolling_slowlog.policies.type = Policies +appender.rolling_slowlog.policies.time.type = TimeBasedTriggeringPolicy +appender.rolling_slowlog.policies.time.interval = 1 +appender.rolling_slowlog.policies.time.modulate = true +appender.rolling_slowlog.layout.type = PatternLayout +appender.rolling_slowlog.layout.pattern = [%d{ISO8601}][%-5p][%-25c] %m%n +appender.rolling_slowlog.policies.size.type = SizeBasedTriggeringPolicy +appender.rolling_slowlog.policies.size.size = 100MB +appender.rolling_slowlog.strategy.type = DefaultRolloverStrategy +appender.rolling_slowlog.strategy.max = 30 + +appender.json_rolling_slowlog.type = RollingFile +appender.json_rolling_slowlog.name = json_rolling_slowlog +appender.json_rolling_slowlog.fileName = ${sys:ls.logs}/logstash-slowlog-json.log +appender.json_rolling_slowlog.filePattern = ${sys:ls.logs}/logstash-slowlog-json-%d{yyyy-MM-dd}-%i.log.gz +appender.json_rolling_slowlog.policies.type = Policies +appender.json_rolling_slowlog.policies.time.type = TimeBasedTriggeringPolicy +appender.json_rolling_slowlog.policies.time.interval = 1 +appender.json_rolling_slowlog.policies.time.modulate = true +appender.json_rolling_slowlog.layout.type = JSONLayout +appender.json_rolling_slowlog.layout.compact = true +appender.json_rolling_slowlog.layout.eventEol = true +appender.json_rolling_slowlog.policies.size.type = SizeBasedTriggeringPolicy +appender.json_rolling_slowlog.policies.size.size = 100MB +appender.json_rolling_slowlog.strategy.type = DefaultRolloverStrategy +appender.json_rolling_slowlog.strategy.max = 30 + +logger.slowlog.name = slowlog +logger.slowlog.level = trace +logger.slowlog.appenderRef.console_slowlog.ref = ${sys:ls.log.format}_console_slowlog +logger.slowlog.appenderRef.rolling_slowlog.ref = ${sys:ls.log.format}_rolling_slowlog +logger.slowlog.additivity = false + +logger.licensereader.name = logstash.licensechecker.licensereader +logger.licensereader.level = error + +# Silence http-client by default +logger.apache_http_client.name = org.apache.http +logger.apache_http_client.level = fatal + +# Deprecation log +appender.deprecation_rolling.type = RollingFile +appender.deprecation_rolling.name = deprecation_plain_rolling +appender.deprecation_rolling.fileName = ${sys:ls.logs}/logstash-deprecation.log +appender.deprecation_rolling.filePattern = ${sys:ls.logs}/logstash-deprecation-%d{yyyy-MM-dd}-%i.log.gz +appender.deprecation_rolling.policies.type = Policies +appender.deprecation_rolling.policies.time.type = TimeBasedTriggeringPolicy +appender.deprecation_rolling.policies.time.interval = 1 +appender.deprecation_rolling.policies.time.modulate = true +appender.deprecation_rolling.layout.type = PatternLayout +appender.deprecation_rolling.layout.pattern = [%d{ISO8601}][%-5p][%-25c]%notEmpty{[%X{pipeline.id}]}%notEmpty{[%X{plugin.id}]} %m%n +appender.deprecation_rolling.policies.size.type = SizeBasedTriggeringPolicy +appender.deprecation_rolling.policies.size.size = 100MB +appender.deprecation_rolling.strategy.type = DefaultRolloverStrategy +appender.deprecation_rolling.strategy.max = 30 + +logger.deprecation.name = org.logstash.deprecation, deprecation +logger.deprecation.level = WARN +logger.deprecation.appenderRef.deprecation_rolling.ref = deprecation_plain_rolling +logger.deprecation.additivity = false + +logger.deprecation_root.name = deprecation +logger.deprecation_root.level = WARN +logger.deprecation_root.appenderRef.deprecation_rolling.ref = deprecation_plain_rolling +logger.deprecation_root.additivity = false \ No newline at end of file diff --git a/Bigdata/logstash/9.1.3/24.03-lts-sp1/config/log4j2.properties b/Bigdata/logstash/9.1.3/24.03-lts-sp1/config/log4j2.properties new file mode 100644 index 0000000000000000000000000000000000000000..f70d736933ebc6d92eef0dc5edf50e556b4ee041 --- /dev/null +++ b/Bigdata/logstash/9.1.3/24.03-lts-sp1/config/log4j2.properties @@ -0,0 +1,16 @@ +status = error +name = LogstashPropertiesConfig + +appender.console.type = Console +appender.console.name = plain_console +appender.console.layout.type = PatternLayout +appender.console.layout.pattern = [%d{ISO8601}][%-5p][%-25c]%notEmpty{[%X{pipeline.id}]}%notEmpty{[%X{plugin.id}]} %m%n + +appender.json_console.type = Console +appender.json_console.name = json_console +appender.json_console.layout.type = JSONLayout +appender.json_console.layout.compact = true +appender.json_console.layout.eventEol = true + +rootLogger.level = ${sys:ls.log.level} +rootLogger.appenderRef.console.ref = ${sys:ls.log.format}_console \ No newline at end of file diff --git a/Bigdata/logstash/9.1.3/24.03-lts-sp1/config/logstash-full.yml b/Bigdata/logstash/9.1.3/24.03-lts-sp1/config/logstash-full.yml new file mode 100644 index 0000000000000000000000000000000000000000..e090a093f7fa909a6e81fd12405c36a87a530158 --- /dev/null +++ b/Bigdata/logstash/9.1.3/24.03-lts-sp1/config/logstash-full.yml @@ -0,0 +1,2 @@ +http.host: "0.0.0.0" +xpack.monitoring.elasticsearch.hosts: [ "http://elasticsearch:9200" ] \ No newline at end of file diff --git a/Bigdata/logstash/9.1.3/24.03-lts-sp1/config/pipelines.yml b/Bigdata/logstash/9.1.3/24.03-lts-sp1/config/pipelines.yml new file mode 100644 index 0000000000000000000000000000000000000000..4fae603b2bbb89cdc7bb4cf0391808d76c9717f4 --- /dev/null +++ b/Bigdata/logstash/9.1.3/24.03-lts-sp1/config/pipelines.yml @@ -0,0 +1,6 @@ +# This file is where you define your pipelines. You can define multiple. +# For more information on multiple pipelines, see the documentation: +# https://www.elastic.co/guide/en/logstash/current/multiple-pipelines.html + +- pipeline.id: main + path.config: "/usr/share/logstash/pipeline" \ No newline at end of file diff --git a/Bigdata/logstash/9.1.3/24.03-lts-sp1/entrypoint.sh b/Bigdata/logstash/9.1.3/24.03-lts-sp1/entrypoint.sh new file mode 100644 index 0000000000000000000000000000000000000000..3831edd0087cdf6244a645a2a4c3ec5a6971b556 --- /dev/null +++ b/Bigdata/logstash/9.1.3/24.03-lts-sp1/entrypoint.sh @@ -0,0 +1,31 @@ +#!/bin/bash -e + +# Map environment variables to entries in logstash.yml. +# Note that this will mutate logstash.yml in place if any such settings are found. +# This may be undesirable, especially if logstash.yml is bind-mounted from the +# host system. +env2yaml /usr/share/logstash/config/logstash.yml + +if [[ -n "$LOG_STYLE" ]]; then + case "$LOG_STYLE" in + console) + # This is the default. Nothing to do. + ;; + file) + # Overwrite the default config with the stack config. Do this as a + # copy, not a move, in case the container is restarted. + cp -f /usr/share/logstash/config/log4j2.file.properties /usr/share/logstash/config/log4j2.properties + ;; + *) + echo "ERROR: LOG_STYLE set to [$LOG_STYLE]. Expected [console] or [file]" >&2 + exit 1 ;; + esac +fi + +export LS_JAVA_OPTS="-Dls.cgroup.cpuacct.path.override=/ -Dls.cgroup.cpu.path.override=/ $LS_JAVA_OPTS" + +if [[ -z $1 ]] || [[ ${1:0:1} == '-' ]] ; then + exec logstash "$@" +else + exec "$@" +fi \ No newline at end of file diff --git a/Bigdata/logstash/9.1.3/24.03-lts-sp1/env2yaml/.DS_Store b/Bigdata/logstash/9.1.3/24.03-lts-sp1/env2yaml/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..b1fcabd8dc73c29db40167751296ba8449a1b021 Binary files /dev/null and b/Bigdata/logstash/9.1.3/24.03-lts-sp1/env2yaml/.DS_Store differ diff --git a/Bigdata/logstash/9.1.3/24.03-lts-sp1/env2yaml/env2yaml-amd64 b/Bigdata/logstash/9.1.3/24.03-lts-sp1/env2yaml/env2yaml-amd64 new file mode 100644 index 0000000000000000000000000000000000000000..6e6cf6139699413532b199510e553e851620bb39 Binary files /dev/null and b/Bigdata/logstash/9.1.3/24.03-lts-sp1/env2yaml/env2yaml-amd64 differ diff --git a/Bigdata/logstash/9.1.3/24.03-lts-sp1/env2yaml/env2yaml-arm64 b/Bigdata/logstash/9.1.3/24.03-lts-sp1/env2yaml/env2yaml-arm64 new file mode 100644 index 0000000000000000000000000000000000000000..781cccf411fee19949fcc670c1050f74c1690edf Binary files /dev/null and b/Bigdata/logstash/9.1.3/24.03-lts-sp1/env2yaml/env2yaml-arm64 differ diff --git a/Bigdata/logstash/README.md b/Bigdata/logstash/README.md index 5fa3e0a514721a30f105e8baa6cc38fa504b11bc..4b3a2058973043d80c9b469ac8e766b871b98b46 100644 --- a/Bigdata/logstash/README.md +++ b/Bigdata/logstash/README.md @@ -18,6 +18,7 @@ For more information about Logstash, please visit [www.elastic.co/products/logst The tag of each logstash docker image is consist of the version of logstash and the version of basic image. The details are as follows | Tags | Currently | Architectures| |--|--|--| +|[9.1.3-oe2403sp1](https://gitee.com/openeuler/openeuler-docker-images/blob/master/Bigdata/logstash/9.1.3/24.03-lts-sp1/Dockerfile) | logstash 9.1.3 on openEuler 24.03-LTS-SP1 | amd64, arm64 | |[8.17.3-oe2403sp1](https://gitee.com/openeuler/openeuler-docker-images/blob/master/Bigdata/logstash/8.17.3/24.03-lts-sp1/Dockerfile)| Logstash 8.17.3 on openEuler 24.03-LTS-SP1 | amd64, arm64 | # Usage diff --git a/Bigdata/logstash/doc/image-info.yml b/Bigdata/logstash/doc/image-info.yml index 85e1b942e0207f6ed941e45a1fa6ccedab833f1d..8b7036c4341eb0d1b03517b28b14443fefa52d92 100644 --- a/Bigdata/logstash/doc/image-info.yml +++ b/Bigdata/logstash/doc/image-info.yml @@ -11,6 +11,7 @@ tags: | | Tags | Currently | Architectures| |------|-----------|---------------| + |[9.1.3-oe2403sp1](https://gitee.com/openeuler/openeuler-docker-images/blob/master/Bigdata/logstash/9.1.3/24.03-lts-sp1/Dockerfile) | logstash 9.1.3 on openEuler 24.03-LTS-SP1 | amd64, arm64 | |[8.17.3-oe2403sp1](https://gitee.com/openeuler/openeuler-docker-images/blob/master/Bigdata/logstash/8.17.3/24.03-lts-sp1/Dockerfile)| Logstash 8.17.3 on openEuler 24.03-LTS-SP1 | amd64, arm64 | download: | diff --git a/Bigdata/logstash/meta.yml b/Bigdata/logstash/meta.yml index 89ac3762db4652ec2e6041dfd1be2dcaf33ea76e..96f8f17d948720d8d6ee56468e3f76bb3e0beeba 100644 --- a/Bigdata/logstash/meta.yml +++ b/Bigdata/logstash/meta.yml @@ -1,4 +1,6 @@ 8.17.3-oe2403sp1: path: 8.17.3/24.03-lts-sp1/Dockerfile 9.1.2-oe2403sp1: - path: 9.1.2/24.03-lts-sp1/Dockerfile \ No newline at end of file + path: 9.1.2/24.03-lts-sp1/Dockerfile +9.1.3-oe2403sp1: + path: 9.1.3/24.03-lts-sp1/Dockerfile \ No newline at end of file