Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Oct 10, 2025

Problem

Users deploying FinOps hubs are encountering a confusing error message in the ingestion_ETL_dataexplorer pipeline: "Failed to interpret Post-Ingest Drop Failed Error fail message or error code" with error code ErrorCodeNotString. This error message doesn't explain the actual root cause, making it difficult for users to diagnose and resolve the issue.

Based on the screenshots in the issue, the error appears as:

Activity failed because an inner activity failed: Inner activity name: Execute, 
Error: Operation on target Ingestion Failed Error failed: 
Failed to interpret Ingestion Failed Error fail message or error code

Root Cause

This is a known Azure Data Factory behavior documented in Microsoft Learn. The ErrorCodeNotString error occurs when:

  1. A Data Explorer activity (Post-Ingest Cleanup, Pre-Ingest Cleanup, or Ingest Data) fails
  2. The activity doesn't return error details in the expected JSON format
  3. The pipeline's Fail activity tries to evaluate a dynamic expression to display a helpful error message
  4. Because the activity output is null, empty, or in an unexpected format, the Fail activity itself fails with ErrorCodeNotString

This is a secondary error - the real issue is why the underlying Data Explorer activity failed (commonly capacity exhaustion, permission issues, command syntax errors, or network problems).

Solution

This PR enhances the FinOps toolkit error documentation to help users:

  1. Understand that ErrorCodeNotString is a symptom, not the root cause
  2. Learn how to find the actual error by reviewing the parent activity output in Azure Data Factory
  3. Follow step-by-step troubleshooting guides for common scenarios
  4. Access Data Explorer diagnostic queries to investigate failures
  5. Apply the appropriate solution based on the specific error type

Changes Made

1. New ErrorCodeNotString Documentation

Added a comprehensive error entry for ErrorCodeNotString with:

  • Clear explanation of when and why this error occurs
  • Common scenarios that trigger it
  • Step-by-step troubleshooting guide to identify the root cause
  • Data Explorer diagnostic queries:
    // Check recent failed operations
    .show operations | where StartedOn > ago(4h) and State == "Failed"
    
    // Check ingestion failures
    .show ingestion failures | where FailedOn > ago(4h)
    
    // Check command history
    .show commands | where StartedOn > ago(4h)
  • Related error cross-references
  • Links to authoritative Microsoft Learn sources

2. Enhanced DataExplorerPostIngestionDropFailed Documentation

Expanded the existing error entry with:

3. Enhanced DataExplorerPreIngestionDropFailed Documentation

Added troubleshooting guidance with:

  • Explanation of when this error occurs
  • Cross-reference to ErrorCodeNotString for the same error pattern
  • Common solutions and diagnostic steps
  • Reference to the more detailed DataExplorerPostIngestionDropFailed guidance

4. Updated Changelog

Documented these documentation improvements in the "Unreleased" section under "Documentation improvements".

Impact

These documentation enhancements will help users:

  • ✅ Self-diagnose ingestion pipeline failures without needing to file support requests
  • ✅ Understand the relationship between ErrorCodeNotString and the underlying Data Explorer errors
  • ✅ Access step-by-step troubleshooting guides with authoritative references
  • ✅ Use Data Explorer diagnostic queries to investigate issues
  • ✅ Resolve common issues like capacity exhaustion and permission problems

Testing

  • Verified all Microsoft Learn links are valid and point to current documentation
  • Confirmed markdown formatting renders correctly
  • Validated that error entry appears alphabetically in the errors list
  • Tested that anchor links work for cross-references between errors
  • Verified Data Explorer diagnostic queries use valid KQL syntax

References

All guidance is based on official Microsoft documentation:

Closes #[issue_number]

Original prompt

This section details on the original issue you should resolve

<issue_title>ingestion_ETL_dataexplorer Operation on target Post-Ingest Drop Failed Error failed:</issue_title>
<issue_description>Hi,
I’m new to the FinOps project and am deploying it in my development environment. I’m encountering repeated failures in the ingestion_ETL_dataexplorer pipeline. Specifically:
The pipeline fails on a few items.

🐛 Problem

TODO: Operation on target Post-Ingest Drop Failed Error failed: Failed to interpret Post-Ingest Drop Failed Error fail message or error code

Repro steps
TODO: Add repro steps below:

  1. Go to
  2. Click on
  3. Scroll down to
  4. See error

🤔 Expected
TODO:

Image

📷 Screenshots
TODO:

Image

ℹ️ Additional context
TODO:
🙋‍♀️ Ask for the community
TODO: I’ve been unable to determine the root cause or how to resolve it — any direct guidance or steps to fix this would be much appreciated.
Thanks

  1. Please vote this issue up (👍) to prioritize it.
  2. Leave comments to help us solidify the vision.
    </issue_description>

<agent_instructions>Triage the issue, research using mslearn, provide proposed solutions along with links/citations to authorative sources.</agent_instructions>

Comments on the Issue (you are @copilot in this section)

Fixes #1809


💬 Share your feedback on Copilot coding agent for the chance to win a $200 gift card! Click here to start the survey.

- Add ErrorCodeNotString error documentation with detailed troubleshooting steps
- Enhance DataExplorerPostIngestionDropFailed with common scenarios and solutions
- Enhance DataExplorerPreIngestionDropFailed with troubleshooting guidance
- Add links to authoritative Microsoft Learn documentation
- Update changelog with documentation improvements

Co-authored-by: MSBrett <[email protected]>
Copilot AI changed the title [WIP] Fix ingestion ETL dataexplorer pipeline error docs: Add comprehensive troubleshooting for Data Explorer ingestion pipeline errors Oct 10, 2025
Copilot AI requested a review from MSBrett October 10, 2025 20:39
Copilot finished work on behalf of MSBrett October 10, 2025 20:39
@MSBrett MSBrett marked this pull request as ready for review October 11, 2025 19:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Needs: Review 👀 PR that is ready to be reviewed Skill: DevOps GitHub setup and automation Skill: Documentation Documentation updates Tool: FinOps guide Implementing FinOps guide

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ingestion_ETL_dataexplorer Operation on target Post-Ingest Drop Failed Error failed:

5 participants