Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

[BUG] Publisher misses logger dependency in policy XML

Open
#878 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
70/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Active
Tech stack
azure, csharp
Domain
api, devops

Research direction

Start by tracing the publisher's policy XML dependency parsing and the existing handling for named values, policy fragments, and backend IDs. Add the logger reference to the dependency behavior described in the issue, then reproduce the Azure API Management publish with the supplied policy XML and verify that the logger is created before the policy.

Written by the indexing model from the issue text.

Description

Release version

v7.0.1

Describe the bug
Summary

When an API policy references a logger via log-to-eventhub logger-id="...", the publisher can attempt to PUT the policy before the logger resource exists in APIM. This results in a 400 validation error such as:

Logger not found

Root cause

The publisher builds dependency edges from parsed policy XML for things like:

  • named values
  • policy fragments
  • backend IDs

but it does not currently parse logger references used in:

  • log-to-eventhub logger-id="..."

As a result, the policy has no predecessor relationship to the logger, so parallel resource processing can PUT the policy before the logger resource has been created.

Expected behavior

When an API policy references an APIM logger in the XML policy, the publisher should create a dependency edge from that logger resource to the policy resource and publish the logger before the policy

Actual behavior

The publisher does not detect logger references in policy XML. As a result, the policy can be published in parallel with the logger, and APIM rejects the request with a validation error like:

Reproduction Steps
  • Create or include an APIM logger resource, for example azureeventhublogger.
  • Update an API policy that references that logger in XML, such as:
<policies>
  <inbound>
    <log-to-eventhub logger-id="azureeventhublogger" />
    <base />
  </inbound>
</policies>
  • Run the publisher against the target APIM environment with that logger and policy in the artifacts (last commit)
  • Observe that the publisher may PUT the policy before the logger is created.
  • APIM returns 400 Bad Request with Logger not found for the policy.
Dominant language
C#
Stars
448
Forks
247
PR merge metrics
No merged PRs in 30d

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from Azure/apiops

All issues in Azure/apiops

Similar issues

More C# issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.