diff options
author | Thomas Weber <towe75@googlemail.com> | 2021-07-21 07:42:39 +0200 |
---|---|---|
committer | Thomas Weber <towe75@googlemail.com> | 2021-07-27 07:20:47 +0200 |
commit | cdbbd79155a7752843f2b420c3036ce6c390a3b6 (patch) | |
tree | 2e438fbb7626b5ffa05e140a114e9c75ccc100a9 /pkg/bindings | |
parent | 389c9b8dca942fb4977823dd504d3d351cb92acd (diff) | |
download | podman-cdbbd79155a7752843f2b420c3036ce6c390a3b6.tar.gz podman-cdbbd79155a7752843f2b420c3036ce6c390a3b6.tar.bz2 podman-cdbbd79155a7752843f2b420c3036ce6c390a3b6.zip |
stats: add a interval parameter to cli and api stream mode
podman stats polled by default in a 1 sec period.
This can put quite some load on a machine if you run many containers.
The default value is now 5 seconds.
You can change this interval with a new, optional, --interval, -i cli flag.
The api request got also a interval query parameter for the same purpose.
Additionally a unused const was removed.
Api and cli will fail the request if a 0 or negative value is passed in.
Signed-off-by: Thomas Weber <towe75@googlemail.com>
Diffstat (limited to 'pkg/bindings')
-rw-r--r-- | pkg/bindings/containers/types.go | 3 | ||||
-rw-r--r-- | pkg/bindings/containers/types_stats_options.go | 16 |
2 files changed, 18 insertions, 1 deletions
diff --git a/pkg/bindings/containers/types.go b/pkg/bindings/containers/types.go index 1058c7a48..28c644841 100644 --- a/pkg/bindings/containers/types.go +++ b/pkg/bindings/containers/types.go @@ -165,7 +165,8 @@ type StartOptions struct { //go:generate go run ../generator/generator.go StatsOptions // StatsOptions are optional options for getting stats on containers type StatsOptions struct { - Stream *bool + Stream *bool + Interval *int } //go:generate go run ../generator/generator.go TopOptions diff --git a/pkg/bindings/containers/types_stats_options.go b/pkg/bindings/containers/types_stats_options.go index 8f6a03301..604004eb6 100644 --- a/pkg/bindings/containers/types_stats_options.go +++ b/pkg/bindings/containers/types_stats_options.go @@ -35,3 +35,19 @@ func (o *StatsOptions) GetStream() bool { } return *o.Stream } + +// WithInterval +func (o *StatsOptions) WithInterval(value int) *StatsOptions { + v := &value + o.Interval = v + return o +} + +// GetInterval +func (o *StatsOptions) GetInterval() int { + var interval int + if o.Interval == nil { + return interval + } + return *o.Interval +} |