| Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Co-authored-by: Gaurav <[email protected]>
Co-authored-by: Aryan Sawant <[email protected]>
Co-authored-by: neo.alienson <[email protected]>
|
|
|
|
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
|
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: N. Taylor Mullen <[email protected]>
|
|
|
|
|
|
Co-authored-by: Scott Densmore <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Co-authored-by: Scott Densmore <[email protected]>
|
|
## TLDR
Introduces the `concurrently` package to simplify the dev startup process with GCP telemetry enabled.
## Dive Deeper
Previously, developers had to run the telemetry script and the main application start script in separate terminals. This change updates the `start:gcp` script to use `concurrently`, allowing both processes to be launched and managed with a single command. This improves the developer experience and reduces the chance of forgetting to start one of the required processes.
## Reviewer Test Plan
Set the required environment variable:
```shell
export OTLP_GOOGLE_CLOUD_PROJECT=<your-project-id>
```
Run the following command:
```shell
npm run start:gcp
```
#750
cc @teeler
|
|
|
|
Co-authored-by: Tommaso Sciortino <[email protected]>
Co-authored-by: N. Taylor Mullen <[email protected]>
|
|
|
|
|
|
This command enables starting the application with GCP telemetry:
```shell
npm run start:gcp
```
|
|
#750
### Telemetry Settings
Refactors telemetry configuration to use a nested `telemetry` object in `settings.json`, for example:
```json
{
"telemetry": {
"enabled": true,
"target": "gcp"
"log-prompts": "true"
},
"sandbox": false
}
```
The above includes
- Centralized telemetry settings under a `telemetry` object in `settings.json`.
- CLI flags for the `gemini` command to override all telemetry sub-settings:
- `--telemetry` / `--no-telemetry`
- `--telemetry-target <local|gcp>`
- `--telemetry-otlp-endpoint <URL>`
- `--telemetry-log-prompts` / `--no-telemetry-log-prompts`
- Updates `packages/cli/src/config/config.ts` and `packages/core/src/config/config.ts` to read from the new settings structure and respect the new CLI flags.
- Modifies `scripts/handle-telemetry.js`, `scripts/local_telemetry.js`, and `scripts/telemetry_utils.js` to align with the new settings structure.
- Updates `docs/core/telemetry.md` to reflect the new settings structure, CLI flags, and order of precedence.
- Renames `logUserPromptsEnabled` to `logPrompts` for brevity.
### `npm run telemetry`
Add a new `npm run telemetry` command that uses `scripts/telemetry.js`, automates the entire process of setting up a local and GCP telemetry pipelines, including configuring the necessary settings in the `.gemini/settings.json` workspace file and installing required binaries (e.g. `otelcol-contrib`).
---
```shell
$ npm run telemetry -- --target=gcp
> [email protected] telemetry
> node scripts/telemetry.js --target=gcp
βοΈ Using command-line target: gcp
π Running telemetry script for target: gcp.
β¨ Starting Local Telemetry Exporter for Google Cloud β¨
βοΈ Enabled telemetry in workspace settings.
π§ Set telemetry OTLP endpoint to http://localhost:4317.
π― Set telemetry target to gcp.
β
Workspace settings updated.
β
Using Google Cloud Project ID: foo-bar
π Please ensure you are authenticated with Google Cloud:
- Run `gcloud auth application-default login` OR ensure `GOOGLE_APPLICATION_CREDENTIALS` environment variable points to a valid service account key.
- The account needs "Cloud Trace Agent", "Monitoring Metric Writer", and "Logs Writer" roles.
β
otelcol-contrib already exists at /Users/jerop/github/gemini-cli/.gemini/otel/bin/otelcol-contrib
π§Ή Cleaning up old processes and logs...
β
Deleted old GCP collector log.
π Wrote OTEL collector config to /Users/jerop/github/gemini-cli/.gemini/otel/collector-gcp.yaml
π Starting OTEL collector for GCP... Logs: /Users/jerop/github/gemini-cli/.gemini/otel/collector-gcp.log
β³ Waiting for OTEL collector to start (PID: 17013)...
β
OTEL collector started successfully on port 4317.
β¨ Local OTEL collector for GCP is running.
π To send telemetry, run the Gemini CLI in a separate terminal window.
π Collector logs are being written to: /Users/jerop/github/gemini-cli/.gemini/otel/collector-gcp.log
π View your telemetry data in Google Cloud Console:
- Logs: https://console.cloud.google.com/logs/query;query=logName%3D%22projects%2Ffoo-bar%2Flogs%2Fgemini_cli%22?project=foo-bar
- Metrics: https://console.cloud.google.com/monitoring/metrics-explorer?project=foo-bar
- Traces: https://console.cloud.google.com/traces/list?project=foo-bar
Press Ctrl+C to exit.
^C
π Shutting down...
βοΈ Disabled telemetry in workspace settings.
π§ Cleared telemetry OTLP endpoint.
π― Cleared telemetry target.
β
Workspace settings updated.
π Stopping otelcol-contrib (PID: 17013)...
β
otelcol-contrib stopped.
```
|
|
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
|
(#784)
|
|
|
|
via npm run build:all (#858)
|
|
Submitting without approval to fix broken deployment on main. But also, we should lock this down.
|
|
|
|
|
|
|
|
Co-authored-by: N. Taylor Mullen <[email protected]>
|
|
|