Backport of [NET-4107][Supportability] Log Level set to TRACE and duration set to 5m for consul-debug into release/1.16.x (#17728)

* backport of commit 9d72a262f357ef0ee6409acae7d3c24d8f87caec
* backport of commit 9b9bb8d206bd68721bc89a9cdf488e8bba38f4d2
* backport of commit ba448092974b8f0439e64e338267835a02480f73

---------

Co-authored-by: Ashesh Vidyut <ashesh.vidyut@hashicorp.com>
This commit is contained in:
hc-github-team-consul-core 2023-06-20 16:48:33 -04:00 committed by GitHub
parent 4678361234
commit 72409898bc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 8 additions and 5 deletions

3
.changelog/17596.txt Normal file
View File

@ -0,0 +1,3 @@
```release-note:improvement
debug: change default setting of consul debug command. now default duration is 5ms and default log level is 'TRACE'
```

View File

@ -35,7 +35,7 @@ const (
// debugDuration is the total duration that debug runs before being // debugDuration is the total duration that debug runs before being
// shut down // shut down
debugDuration = 2 * time.Minute debugDuration = 5 * time.Minute
// debugDurationGrace is a period of time added to the specified // debugDurationGrace is a period of time added to the specified
// duration to allow intervals to capture within that time // duration to allow intervals to capture within that time
@ -503,7 +503,7 @@ func (c *cmd) captureHeap(outputDir string) error {
} }
func (c *cmd) captureLogs(ctx context.Context) error { func (c *cmd) captureLogs(ctx context.Context) error {
logCh, err := c.client.Agent().Monitor("DEBUG", ctx.Done(), nil) logCh, err := c.client.Agent().Monitor("TRACE", ctx.Done(), nil)
if err != nil { if err != nil {
return err return err
} }

View File

@ -45,12 +45,12 @@ or otherwise.
`Usage: consul debug [options]` `Usage: consul debug [options]`
By default, the debug command will capture an archive at the current path for By default, the debug command will capture an archive at the current path for
all targets for 2 minutes. all targets for 5 minutes.
#### Command Options #### Command Options
- `-duration` - Optional, the total time to capture data for from the target agent. Must - `-duration` - Optional, the total time to capture data for from the target agent. Must
be greater than the interval and longer than 10 seconds. Defaults to 2 minutes. be greater than the interval and longer than 10 seconds. Defaults to 5 minutes.
- `-interval` - Optional, the interval at which to capture dynamic data, such as heap - `-interval` - Optional, the interval at which to capture dynamic data, such as heap
and metrics. Must be longer than 5 seconds. Defaults to 30 seconds. and metrics. Must be longer than 5 seconds. Defaults to 30 seconds.
@ -79,7 +79,7 @@ information when `debug` is running. By default, it captures all information.
| `host` | Information about resources on the host running the target agent such as CPU, memory, and disk. | | `host` | Information about resources on the host running the target agent such as CPU, memory, and disk. |
| `members` | A list of all the WAN and LAN members in the cluster. | | `members` | A list of all the WAN and LAN members in the cluster. |
| `metrics` | Metrics from the in-memory metrics endpoint in the target, captured at the interval. | | `metrics` | Metrics from the in-memory metrics endpoint in the target, captured at the interval. |
| `logs` | `DEBUG` level logs for the target agent, captured for the duration. | | `logs` | `TRACE` level logs for the target agent, captured for the duration. |
| `pprof` | Golang heap, CPU, goroutine, and trace profiling. CPU and traces are captured for `duration` in a single file while heap and goroutine are separate snapshots for each `interval`. This information is not retrieved unless [`enable_debug`](/consul/docs/agent/config/config-files#enable_debug) is set to `true` on the target agent or ACLs are enable and an ACL token with `operator:read` is provided. | | `pprof` | Golang heap, CPU, goroutine, and trace profiling. CPU and traces are captured for `duration` in a single file while heap and goroutine are separate snapshots for each `interval`. This information is not retrieved unless [`enable_debug`](/consul/docs/agent/config/config-files#enable_debug) is set to `true` on the target agent or ACLs are enable and an ACL token with `operator:read` is provided. |
## Examples ## Examples