|
| 1 | +--- |
| 2 | +title: Migrate from ContainerLog to ContainerLogV2 |
| 3 | +description: This article describes the transition plan from the ContainerLog to ContainerLogV2 table |
| 4 | +ms.topic: conceptual |
| 5 | +ms.date: 07/19/2023 |
| 6 | +ms.reviewer: aul |
| 7 | +--- |
| 8 | + |
| 9 | +# Migrate from ContainerLog to ContainerLogV2 |
| 10 | + |
| 11 | +With the upgraded offering of ContainerLogV2 becoming generally available, on 30th September 2026, the ContainerLog table will be retired. If you currently ingest container insights data to the ContainerLog table, please make sure to transition to using ContainerLogV2 prior to that date. |
| 12 | + |
| 13 | +>[!NOTE] |
| 14 | +> Support for ingesting the ContainerLog table will be **retired on 30th September 2026**. |
| 15 | +
|
| 16 | +## Steps to complete the transition |
| 17 | + |
| 18 | +To transition to ContainerLogV2, we recommend the following approach. |
| 19 | + |
| 20 | +1. Learn about the feature differences between ContainerLog and ContainerLogV2 |
| 21 | +2. Assess the impact migrating to ContainerLogV2 may have on your existing queries, alerts, or dashboards |
| 22 | +3. Enable the ContainerLogV2 schema through either the container insights data collection rules (DCRs) or ConfigMap |
| 23 | +4. Validate that you are now ingesting ContainerLogV2 to your Log Analytics workspace. |
| 24 | + |
| 25 | +## ContainerLog vs ContainerLogV2 schema |
| 26 | + |
| 27 | +The following table highlights the key differences between using ContainerLog and ContainerLogV2 schema. |
| 28 | + |
| 29 | +| Feature Differences | ContainerLog | ContainerLogV2 | |
| 30 | +| ------------------- | ----------------- | ------------------- | |
| 31 | +| Onboarding | Only configurable through the ConfigMap | Configurable through both the ConfigMap and DCR | |
| 32 | +| Pricing | Only compatible with full-priced analytics logs | Supports the low cost basic logs tier in addition to analytics logs | |
| 33 | +| Querying | Requires multiple join operations with inventory tables for standard queries | Includes additional pod and container metadata to reduce query complexity and join operations | |
| 34 | +| Multiline | Not supported, multiline entries are split into multiple rows | Support for multiline logging to allow consolidated, single entries for multiline output | |
| 35 | + |
| 36 | +## Assess the impact on existing alerts |
| 37 | + |
| 38 | +If you are currently using ContainerLog in your alerts, then migrating to ContainerLogV2 will require updates to your alert queries for them to continue functioning as expected. |
| 39 | + |
| 40 | +To scan for alerts that may be referencing the ContainerLog table, run the following Azure Resource Graph query: |
| 41 | + |
| 42 | +```Kusto |
| 43 | +resources |
| 44 | +| where type in~ ('microsoft.insights/scheduledqueryrules') and ['kind'] !in~ ('LogToMetric') |
| 45 | +| extend severity = strcat("Sev", properties["severity"]) |
| 46 | +| extend enabled = tobool(properties["enabled"]) |
| 47 | +| where enabled in~ ('true') |
| 48 | +| where tolower(properties["targetResourceTypes"]) matches regex 'microsoft.operationalinsights/workspaces($|/.*)?' or tolower(properties["targetResourceType"]) matches regex 'microsoft.operationalinsights/workspaces($|/.*)?' or tolower(properties["scopes"]) matches regex 'providers/microsoft.operationalinsights/workspaces($|/.*)?' |
| 49 | +| where properties contains "ContainerLog" |
| 50 | +| project id,name,type,properties,enabled,severity,subscriptionId |
| 51 | +| order by tolower(name) asc |
| 52 | +``` |
| 53 | + |
| 54 | +## Next steps |
| 55 | +- [Enable ContainerLogV2](container-insights-logging-v2.md) |
0 commit comments