# `Dagger.HealthcheckConfig`
[🔗](https://github.com/dagger/dagger/blob/v0.20.8/sdk/elixir/lib/dagger/gen/healthcheck_config.ex#L2)

Image healthcheck configuration.

# `t`

```elixir
@type t() :: %Dagger.HealthcheckConfig{client: term(), query_builder: term()}
```

# `args`

```elixir
@spec args(t()) :: {:ok, [String.t()]} | {:error, term()}
```

Healthcheck command arguments.

# `id`

```elixir
@spec id(t()) :: {:ok, Dagger.HealthcheckConfigID.t()} | {:error, term()}
```

A unique identifier for this HealthcheckConfig.

# `interval`

```elixir
@spec interval(t()) :: {:ok, String.t()} | {:error, term()}
```

Interval between running healthcheck. Example:30s

# `retries`

```elixir
@spec retries(t()) :: {:ok, integer()} | {:error, term()}
```

The maximum number of consecutive failures before the container is marked as unhealthy. Example:3

# `shell`

```elixir
@spec shell(t()) :: {:ok, boolean()} | {:error, term()}
```

Healthcheck command is a shell command.

# `start_interval`

```elixir
@spec start_interval(t()) :: {:ok, String.t()} | {:error, term()}
```

StartInterval configures the duration between checks during the startup phase. Example:5s

# `start_period`

```elixir
@spec start_period(t()) :: {:ok, String.t()} | {:error, term()}
```

StartPeriod allows for failures during this initial startup period which do not count towards maximum number of retries. Example:0s

# `timeout`

```elixir
@spec timeout(t()) :: {:ok, String.t()} | {:error, term()}
```

Healthcheck timeout. Example:3s

---

*Consult [api-reference.md](api-reference.md) for complete listing*
