Heartbeat subcommands unable to run on 7.17.x and 8.0.x docker images

Hi all,

I am trying to run the heartbeat setup but I am getting the following error only on the 7.17.0, 7.17.1 and 8.0.0 docker images:

/usr/local/bin/docker-entrypoint: line 25: exec: setup: not found

It appears the issue is related the docker entrypoint as can quickly be tested / verified as a bug withn 7.17.x and 8.0.x only using the help subcommand (or any other subcommand):

docker run  docker.elastic.co/beats/heartbeat:7.17.1 help

This results in the following:

`/usr/local/bin/docker-entrypoint: line 25: exec: help: not found`

This issue does not occur on 7.16.3 or the 8.1.x releases.

We currently can't upgrade to the 8.x release at the moment so wondering whether we should stick to the stable 7.16.3 release and avoid 7.17 completely unless a patch fix can be applied to the 7.17?

Apologies, this is a known issue we're tracking here: 7.17.0 awk entrypoint broken · Issue #30435 · elastic/beats · GitHub , it looks like the fix has already been merged

Thanks for the reply and glad that’s been sorted already.

Do you know if this will be backported to make 7.x stable for those unable to upgrade to 8.x at the moment?

I can actually see it was merged into the 7.17 branch 18 days ago. Is there any indication when the 7.17.2 release will drop?

Unfortunately we don't release dates there since they are subject to change, however it may be a while since we usually wait till we have a number of bug fixes for a previous major. I'll check and see if we can bump it up, I think it may be worthwhile

Appreciate and understand that.

According to the release notes for 7.17.1 it is supposed to be fixed for all beats so not sure if this will help your discussions and accelerate a patch version but it would certainly be handy for me.

Bugfixes

Affecting all Beats

  • Fix the ability for subcommands to be ran properly from the beats containers. 30452

Just to close of this discussion a new 7.17.2 version of heartbeat has been released and the issues is now resolved.

docker run  docker.elastic.co/beats/heartbeat:7.17.2 help

Resulting the expected output:

Usage:
  heartbeat [flags]
  heartbeat [command]

Available Commands:
  export      Export current config or index template
  help        Help about any command
  keystore    Manage secrets keystore
  run         Run heartbeat
  setup       Setup Elasticsearch index template and pipelines
  test        Test config
  version     Show current version info

Flags:
  -E, --E setting=value              Configuration overwrite
  -N, --N                            Disable actual publishing for testing
  -c, --c string                     Configuration file, relative to path.config (default "heartbeat.yml")
      --cpuprofile string            Write cpu profile to file
  -d, --d string                     Enable certain debug selectors
  -e, --e                            Log to stderr and disable syslog/file output
      --environment environmentVar   set environment being ran in (default default)
  -h, --help                         help for heartbeat
      --httpprof string              Start pprof http server
      --memprofile string            Write memory profile to this file
      --path.config string           Configuration path
      --path.data string             Data path
      --path.home string             Home path
      --path.logs string             Logs path
      --plugin pluginList            Load additional plugins
      --strict.perms                 Strict permission checking on config files (default true)
      --system.hostfs string         Mount point of the host's filesystem for use in monitoring a host from within a container
  -v, --v                            Log at INFO level

Use "heartbeat [command] --help" for more information about a command.
1 Like

Thanks for bearing with us @cdavid15 !

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.