Skip to content

[Containerapp] BREAKING CHANGE: Change default logs destination to Azure Monitor - #10473

Open
Michael Dai (michaelkira) wants to merge 3 commits into
Azure:mainfrom
michaelkira:private/michdai/containerapp-default-azure-monitor
Open

Michael Dai (michaelkira) wants to merge 3 commits into
Azure:mainfrom
michaelkira:private/michdai/containerapp-default-azure-monitor

Conversation

@michaelkira

@michaelkira Michael Dai (michaelkira) commented Oct 15, 2026 •

Copy link
Copy Markdown
Contributor

🤖 PR Validation — ❌ Action needed

Breaking Changes
❌ 1
❌Azure CLI Extensions Breaking Change Test
❌containerapp
rule cmd_name rule_message suggest_message
❌ 1010 - ParaPropUpdate containerapp env create cmd containerapp env create update parameter logs_destination: updated property default from log-analytics to azure-monitor please change property default from azure-monitor to log-analytics for parameter logs_destination of cmd containerapp env create

This checklist is used to make sure that common guidelines for a pull request are followed.

Related command

az containerapp env create

Description

Changes the default value of --logs-destination from log-analytics to azure-monitor when creating a Container Apps managed environment. Explicit --logs-destination values continue to work unchanged.

This is a breaking change because callers that omit --logs-destination will now create environments configured for Azure Monitor instead of Log Analytics. The breaking change is documented in HISTORY.rst.

Testing

  • azdev style azext_containerapp - Passed (Pylint and Flake8).
  • python scripts/ci/test_index.py -q - Passed (9 tests, 2 skipped).
  • azdev test azext_containerapp.test_containerapp_env_default_logs_destination --profile latest --series --live --discover - Passed and generated the recording.
  • azdev test azext_containerapp.test_containerapp_env_default_logs_destination azext_containerapp.test_containerapp_env_la_dynamic_json --profile latest --series - Passed in playback mode (2 tests).

Pre-announcement dependency — hold implementation merge

  • Pre-announcement PR: [Containerapp] az containerapp env create: Pre-announce future logs destination default change #10494
  • Companion core CLI pre-announcement: [Containerapp] az containerapp env create: Pre-announce future logs destination default change azure-cli#34243
  • The announcement PR only adds a runtime warning and upcoming history entry; it retains the current log-analytics default.
  • Hold this actual default-change PR until the announcement is published and the applicable notice period/release requirements are fulfilled.
  • The documented GA requirement is at least 30 days from publication of the announcement. Since Container Apps currently uses a beta extension version, maintainers should confirm the applicable beta policy and target version before merging/releasing the implementation. No exemption is assumed.
  • Announcement release version/date: not yet published. Implementation target version/date: pending maintainer confirmation.
  • Once this change takes effect, preserve the previous behavior by explicitly specifying --logs-destination log-analytics:
az containerapp env create -g myRG -n myEnv --logs-destination log-analytics

General Guidelines

  • Have you run azdev style <YOUR_EXT> locally? (pip install azdev required)
  • Have you run python scripts/ci/test_index.py -q locally? (pip install azdev required)
  • My extension version conforms to the Extension version schema

For new extensions:

About Extension Publish

There is a pipeline to automatically build, upload and publish extension wheels.
Once your pull request is merged into main branch, a new pull request will be created to update src/index.json automatically.
You only need to update the version information in file setup.py and historical information in file HISTORY.rst in your PR but do not modify src/index.json.

…ure Monitor

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot AI balanced review requested due to automatic review settings October 15, 2026 06:36
@microsoft-github-policy-service microsoft-github-policy-service Bot added the customer-reported Issues that are reported by GitHub users external to the Azure organization. label Oct 15, 2026
@microsoft-github-policy-service

Copy link
Copy Markdown
Contributor

Thank you for your contribution Michael Dai (@michaelkira)! We will review the pull request and get back to you soon.

@microsoft-github-policy-service microsoft-github-policy-service Bot added the Auto-Assign Auto assign by bot label Oct 15, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

Logging tests still assume the old default and lack coverage verifying the new default through the CLI.

1 open finding
What changed in this PR

Changes the default logging destination for Container Apps environment creation to Azure Monitor.

Changes:

  • Defaults az containerapp env create to azure-monitor while preserving explicit destination choices.
  • Documents the breaking change in release history.
File Description
src/​containerapp/​HISTORY.rst Documents the breaking logging-default change.
src/​containerapp/​azext_containerapp/​custom.py Changes the environment-create default destination.

🧠 Review effort: Balanced


💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread src/containerapp/azext_containerapp/custom.py
@x-engineering-agent

Copy link
Copy Markdown

Hi Michael Dai (@michaelkira),
Please write the description of changes which can be perceived by customers into HISTORY.rst.
If you want to release a new extension version, please update the version in pyproject.toml (or setup.py, if the extension has not migrated yet) as well.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@yonzhan

Copy link
Copy Markdown
Collaborator

Please fix CI issues

Update registry resource request URIs to API 2026-09-01-preview while preserving server-returned operation polling URLs and all recorded responses. All 18 previously failing cassette tests pass.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@michaelkira

Copy link
Copy Markdown
Contributor Author

Yong Zhang (@yonzhan) Fixed the reported CI failures in 5c490cb.

All 18 failing tests were cassette mismatches caused by the current ACR SDK using 2026-09-01-preview, while the recordings expected 2026-03-01-preview. I aligned only the registry resource request URI versions in the affected recordings. Recorded responses, request bodies, assertions, and service-returned asynchronous polling URLs are unchanged; no tests were skipped and no production behavior was changed.

Validation: reproduced the original failure locally, then replayed all 18 previously failing tests with azdev test <the 18 affected azext_containerapp test names> --profile latest --series --no-exitfirst: 18 passed (Python 3.11, 781.91 seconds). This is a request-metadata fixture update, not a live re-recording.

The fix is pushed; the hosted Python 3.10–3.14 checks still need to complete on the new commit.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Auto-Assign Auto assign by bot customer-reported Issues that are reported by GitHub users external to the Azure organization.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants