Marko Mikulicic becbe8f7b8 fix: Use influx-debug-id header (#338)
Influxdata cloud2 uses a different mechanism to enable tracing.
You need to pass a `influx-debug-id` header (the value is ignored) and if the response contains
`trace-sampled: true` then the response's `trace-id` header contains a valid trace ID that can be
used to jump to the trace in jaeger.

If the request has been sampled, we print the trace-id to stderr.

Since modern terminals allow to click on hyperlinks, we could avoid a copy&paste of the trace id
if the `influx` binary wrote a the link to the jeager trace.
However, we don't want to hardcode the URL of the internal jaeger endpoint in the binary.

I tried adding a wrapper script on my machine that would just capture the trace-id and render it, but it's
hard to do without messing with the ordering of the stderr and stdout lines.
Thus I preferred adding a secret env var that controls the formatting of the trace-id and can be used
by our devs to generate links to our internal jaeger instance.

```console
$ export INFLUX_CLI_TRACE_PRINT_PREFIX="Trace: https://jaeger.my.cloud/trace/"
$ influx query --trace-debug-id 123 -f query.flux
Trace: https://jaeger.my.cloud/trace/f39a69354a3acca6
Result: _result
Table: keys: [_measurement]
...
```
2021-12-03 17:54:47 +01:00
2021-11-10 09:35:35 -05:00
2021-10-18 13:22:54 -05:00
2021-10-18 13:22:54 -05:00
2021-04-09 14:21:16 -04:00

influx-cli

CLI for managing resources in InfluxDB v2

Motivation

This repository decouples the influx CLI from the OSS influxdb codebase. Our goals are to:

  1. Make it easier to keep the CLI up-to-date with InfluxDB Cloud API changes
  2. Enable faster turn-around on fixes/features that only affect the CLI
  3. Allow the CLI to be built & released for a wider range of platforms than the server can support

Building

Run make or make influx to build the CLI. The output binary will be written to bin/$(GOOS)/influx.

Regenerating OpenAPI client

We use OpenAPITools/openapi-generator to generate the underlying HTTP client used by the CLI. Run make openapi to re-generate the code. You'll need Docker running locally for the script to work.

Running

After building, use influx -h to see the list of available commands.

Enabling Completions

The CLI supports generating completions for bash, zsh, and powershell. To enable completions for a single shell session, run one of these commands:

# For bash:
source <(influx completion bash)
# For zsh:
source <(influx completion zsh)
# For pwsh:
Invoke-Expression ((influx completion powershell) -join "`n`")

To enable completions across sessions, add the appropriate line to your shell's login profile (i.e. ~/.bash_profile).

Testing

Run make test to run unit tests.

Description
No description provided
Readme 1.8 MiB
Languages
Go 92%
Mustache 6.1%
Shell 1.6%
Makefile 0.3%