Skip to main content

Pipeline Diagnosis

When something goes wrong with a pipeline, you have two ways to figure out why: dig into the job run logs directly, or let Melty AI read the failure and explain it in plain language.


Diagnosing pipeline runs and logs

Every pipeline in your workspace can be inspected directly from the Pipelines view, without needing Melty AI. Each pipeline card lists its recent job runs, and expanding any run shows the full logs for that execution.

View a pipeline's job runs

  1. Open the Pipelines view from the left navigation bar.
  2. Find the pipeline you want to inspect. Each pipeline is shown as a card with its name and latest run status.
  3. Click the chevron () on the pipeline card to expand it and reveal its recent job runs.

View logs for a specific run

  1. With the pipeline card expanded, locate the job run you want to inspect.
  2. Click on that run to open its logs.
  3. Use the logs to see exactly what happened during that run - useful for spotting errors, warnings, or unexpected behaviour before reaching for a deeper diagnosis.

If a run failed and you want more than raw logs - for example, a plain language explanation of what went wrong and how to fix it - see Diagnosing Pipelines with Melty AI below.

Diagnosing Pipelines with Melty AI

When a pipeline fails, Melty AI reads the failure and explains what went wrong in plain language, along with suggested steps to fix it. This section walks through how to use the feature, what it looks at, and how that data is handled.

Before you start

Melty AI runs on your own Claude API key, so there's a one-time setup step before you can use it.

  1. Go to Settings > Advanced Settings > Claude
  2. Add your Claude API key
  3. If you don't have one yet, generate one from the Anthropic Console

You only need to do this once. Once a key is added, Diagnose is available on any failing pipeline.

How to use Diagnose

1. Find a failing pipeline

Open the Pipelines view. Any pipeline whose latest run has failed shows a Diagnose button next to it.

2. Click Diagnose

If this is your first time using the feature, you'll see an introduction explaining what Melty AI does and what data it uses, with a prompt to add your Claude API key if you haven't already. Once a key is on file, clicking Diagnose goes straight to generating a diagnosis.

3. Read the diagnosis

Melty AI gathers the failure logs, recent run history, pipeline code, and pipeline configuration, and sends that context to Claude. The result appears in a popup with:

  • A short title summarizing the failure
  • A plain language explanation of what went wrong
  • Suggested steps to resolve it

4. Close the popup

Click Close when you're done. Your diagnosis isn't lost - it's saved against that run, so you can come back to it later without generating it again.

Diagnosis caching

Once a diagnosis is generated for a failed run, it's cached in your workspace. Reopening that failure shows the cached diagnosis instead of generating a new one, so you're not spending API tokens asking the same question twice.

A new diagnosis is only generated when:

  • You're viewing a failure for the first time, or
  • The pipeline fails again on a subsequent run

Only the diagnosis itself is cached, not the raw logs, code, or context that was sent to Claude to produce it.

Data handling and privacy

Because Melty AI sends pipeline logs and code to Claude to generate a diagnosis, this section explains exactly what's sent, what's protected, and where it goes.

What Melty AI looks at

Four things, and only these four:

  • Failure logs for the run that triggered the diagnosis
  • Recent run history for that pipeline, so Claude can tell whether this is a new failure or a recurring one
  • Pipeline code, the configuration hosted in your pipeline's git repository
  • Pipeline metadata, such as which plugins and triggers are configured

Melty AI does not look at data from other pipelines, other workspaces, or anything outside what's needed to diagnose the specific failure you clicked into.

What's removed before anything is sent

Before any of the above leaves Meltano, it passes through an automatic redaction step. This uses URL and key-pattern scrubbing, combined with Meltano's secret-setting flags, to strip out:

  • Credentials, tokens, and API keys that may appear in logs or configuration
  • Connection strings and secrets referenced in pipeline code
  • Any other values Meltano's redaction system is configured to treat as sensitive

This happens automatically and applies the same way everywhere a pipeline's logs are surfaced. There's no setting to turn it off.

What Meltano stores, and what it doesn't

Meltano stores the generated diagnosis in your workspace, so reopening a failure doesn't require regenerating it or spending tokens again. Meltano also records token usage for accounting purposes.

Meltano does not persist the raw context, logs, code, or configuration that was sent to Claude to produce a diagnosis. That data exists only for the duration of the request.

Where the request goes

Melty AI runs on your own Claude API key, so each request is made under your own Anthropic account rather than a shared Meltano-owned key. The redacted context is sent directly to Claude via Anthropic's API. Because the request is made under your account, Anthropic's handling of that data is governed by Anthropic's privacy and data usage policies, not Meltano's.

Your control over this

  • Melty AI only runs when you click Diagnose. It never runs automatically on a failure.
  • If you haven't added a Claude API key, no data is sent anywhere - you'll be prompted to add one first.
  • You can remove your Claude API key at any time from Settings > Advanced Settings > Claude, which disables Melty AI until a new key is added.

Questions

If you have questions about this feature or want to report something that looks wrong in a diagnosis, contact Meltano support or reach out through your usual support channel.