fluent-plugins-nursery / fluent-plugin-systemd

This is a fluentd input plugin. It reads logs from the systemd journal.
Apache License 2.0
153 stars 43 forks source link

Latest 1.0.5 version is missing some gem dependencies #97

Open adriannieto-attechnest opened 2 years ago

adriannieto-attechnest commented 2 years ago

Built on top of fluent/fluentd:v1.15-debian-1, with a quite close version of this dockerfile:

FROM fluent/fluentd:v1.15-debian-1

# Plugin install step taken from https://hub.docker.com/r/fluent/fluentd  + https://docs.fluentd.org/deployment/plugin-management#if-using-td-agent,-use-/usr/sbin/td-agent-gem
USER root

# https://github.com/fluent/fluentd-docker-image/issues/307
RUN VERSION_CODENAME=`env -i bash -c '. /etc/os-release; echo $VERSION_CODENAME'` \
        && echo "deb http://deb.debian.org/debian $VERSION_CODENAME-backports main" > /etc/apt/sources.list.d/backports.list \
        && apt-get update \
        && apt install -y libsystemd-dev/$VERSION_CODENAME-backports

RUN buildDeps="sudo make gcc g++ libc-dev" \
        && apt-get update \
        && apt-get install -y --no-install-recommends $buildDeps \
        && fluent-gem install systemd-journal \
        && fluent-gem install fluent-plugin-systemd \
        && fluent-gem install fluent-plugin-elasticsearch \
        && fluent-gem install fluent-plugin-detect-exceptions \
        && fluent-gem install gelf \
        && fluent-gem install fluent-plugin-gelf-hs \
        && fluent-gem install fluent-plugin-input-gelf  \
        && fluent-gem install fluent-plugin-prometheus \
        && fluent-gem install fluent-plugin-multi-format-parser \
        && gem sources --clear-all \
        && SUDO_FORCE_REMOVE=yes \
        apt-get purge -y --auto-remove \
        -o APT::AutoRemove::RecommendsImportant=false \
        $buildDeps \
        && rm -rf /var/lib/apt/lists/* \
        && rm -rf /tmp/* /var/tmp/* /usr/lib/ruby/gems/*/cache/*.gem

#  Correct user permissions due https://github.com/GoogleCloudPlatform/fluent-plugin-detect-exceptions/issues/92
RUN chmod 644 /usr/local/bundle/gems/fluent-plugin-*/lib/**/**/*.rb

RUN mkdir -p /etc/fluent 

COPY fluent.conf /fluentd/etc/
COPY entrypoint.sh /bin/

EXPOSE 24224
2022-09-23 11:20:44 +0000 [info]: gem 'fluent-plugin-systemd' version '1.0.5'
<internal:/usr/local/lib/ruby/3.1.0/rubygems/core_ext/kernel_require.rb>:85:in `require': cannot load such file -- systemd/journal (LoadError)
        from <internal:/usr/local/lib/ruby/3.1.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
        from /usr/local/bundle/gems/fluent-plugin-systemd-1.0.5/lib/fluent/plugin/in_systemd.rb:17:in `<top (required)>'
        from <internal:/usr/local/lib/ruby/3.1.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
        from <internal:/usr/local/lib/ruby/3.1.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
        from /usr/local/bundle/gems/fluentd-1.15.2/lib/fluent/registry.rb:103:in `block in search'
        from /usr/local/bundle/gems/fluentd-1.15.2/lib/fluent/registry.rb:100:in `each'
        from /usr/local/bundle/gems/fluentd-1.15.2/lib/fluent/registry.rb:100:in `search'
        from /usr/local/bundle/gems/fluentd-1.15.2/lib/fluent/registry.rb:44:in `lookup'
        from /usr/local/bundle/gems/fluentd-1.15.2/lib/fluent/plugin.rb:169:in `new_impl'
        from /usr/local/bundle/gems/fluentd-1.15.2/lib/fluent/plugin.rb:110:in `new_input'
        from /usr/local/bundle/gems/fluentd-1.15.2/lib/fluent/root_agent.rb:315:in `add_source'
        from /usr/local/bundle/gems/fluentd-1.15.2/lib/fluent/root_agent.rb:161:in `block in configure'
        from /usr/local/bundle/gems/fluentd-1.15.2/lib/fluent/root_agent.rb:155:in `each'
        from /usr/local/bundle/gems/fluentd-1.15.2/lib/fluent/root_agent.rb:155:in `configure'
        from /usr/local/bundle/gems/fluentd-1.15.2/lib/fluent/engine.rb:105:in `configure'
        from /usr/local/bundle/gems/fluentd-1.15.2/lib/fluent/engine.rb:80:in `run_configure'
        from /usr/local/bundle/gems/fluentd-1.15.2/lib/fluent/supervisor.rb:712:in `run_supervisor'
        from /usr/local/bundle/gems/fluentd-1.15.2/lib/fluent/command/fluentd.rb:361:in `<top (required)>'
        from <internal:/usr/local/lib/ruby/3.1.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
        from <internal:/usr/local/lib/ruby/3.1.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
        from /usr/local/bundle/gems/fluentd-1.15.2/bin/fluentd:15:in `<top (required)>'
        from /usr/local/bundle/bin/fluentd:25:in `load'
        from /usr/local/bundle/bin/fluentd:25:in `<main>'