Megosztás:


Adatgyűjtési szabályminták (DCR) az Azure Monitorban

Ez a cikk az Azure Monitor gyakori adatgyűjtési forgatókönyveinek adatgyűjtési mintáit (DCR) tartalmazza. Ezeket a DCR-definíciókat szükség szerint módosíthatja a környezethez, és létrehozhatja a DCR-t az adatgyűjtési szabály létrehozása vagy szerkesztése című útmutató segítségével. Az ezekben a mintákban szereplő alapstratégiákat használhatja és kombinálhatja is, hogy dcR-eket hozzon létre más forgatókönyvekhez.

Ezekhez a mintákhoz ismerni kell a DCR szerkezetét az Azure Monitor adatgyűjtési szabályának struktúrájában leírtak szerint. Több konfigurálható az Azure Portal használatával a DCR-struktúra részletes ismerete nélkül. Ezeket a mintákat kiindulási pontként használhatja, ha az Azure Portalon kívüli módszerekkel szeretné kezelni a DCR-eket, például arm, parancssori felület és PowerShell használatával. Előfordulhat, hogy ezeket a módszereket kell használnia a meglévő DCR-ek szerkesztéséhez olyan speciális funkciók implementálásához, mint az átalakítások.

Ezek a minták egy adott adatforrásra összpontosítanak, bár egyetlen DCR-ben több különböző típusú adatforrást is kombinálhat. Adjon meg egy adatfolyamot mindegyikhez, hogy az adatokat a megfelelő célhelyre küldje. Nincs funkcionális különbség a több adatforrás egyetlen DCR-ben való kombinálása vagy az egyes adatforrások különálló DCR-jének létrehozása között. A választás az adatgyűjtés kezelésével és monitorozásával kapcsolatos követelményektől függ.

Megjegyzés:

A cikkben bemutatott minták biztosítják a DCR létrehozásához szükséges forrás JSON-t. A létrehozás után a DCR további tulajdonságokkal fog rendelkezni az Azure Monitor adatgyűjtési szabályának struktúrájában leírtak szerint.

Virtuálisgép-ügyféladatok gyűjtése

Az alábbi minták az Azure Monitor-ügynök használatával különböző típusú adatok gyűjtésére szolgáló DCR-definíciókat mutatnak be a virtuális gépekről. Ezeket a DCR-eket az Azure Portalon hozhatja létre az Adatok gyűjtése virtuálisgép-ügyfélről az Azure Monitorral című cikkben leírtak szerint.

Windows-események

A Windows-események tartományvezérlői az adatforrást windowsEventLogs a bejövő adatfolyammal Microsoft-Event használják. A stream sémája ismert, ezért nem kell definiálni a dataSources szakaszban. A gyűjtendő események a xPathQueries tulajdonságban vannak megadva. Az XPaths használatával kapcsolatos további részletekért tekintse meg a Windows-események összegyűjtése az Azure Monitor-ügynökkel című témakört a gyűjtendő adatok szűréséhez. Első lépésként az ebben a cikkben található útmutatást használva létrehozhat egy DCR-t az Azure Portalon, majd a DCR-definíció útmutatásával megvizsgálhatja a JSON-t.

Hozzáadhat átalakítást a dataFlows számított oszlopok tulajdonságához és az adatok további szűréséhez, de az XPaths használatával a lehető legnagyobb mértékben szűrheti az adatokat az ügynökön a hatékonyság és a lehetséges betöltési költségek elkerülése érdekében.

A következő DCR-minta a következő műveleteket hajtja végre:

  • A Windows-alkalmazás- és rendszereseményeket a Figyelmeztetés, a Hiba vagy a Kritikus hibaszinttel gyűjti össze.
  • Adatokat küld a munkaterület eseménytáblájának.
  • Egy olyan egyszerű átalakítást source használ, amely nem módosítja a bejövő adatokat.
{
    "location": "eastus",
    "properties": {
      "dataSources": {
        "windowsEventLogs": [
          {
            "name": "eventLogsDataSource",
            "streams": [
              "Microsoft-Event"
            ],
            "xPathQueries": [
              "System!*[System[(Level = 1 or Level = 2 or Level = 3)]]",
              "Application!*[System[(Level = 1 or Level = 2 or Level = 3)]]"
            ]
          }
        ]
    },
      "destinations": {
        "logAnalytics": [
          {
            "workspaceResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/my-resource-group/providers/Microsoft.OperationalInsights/workspaces/my-workspace",
            "name": "centralWorkspace"
          }
        ]
      },
      "dataFlows": [
        {
          "streams": [
            "Microsoft-Event"
          ],
          "destinations": [
            "centralWorkspace"
          ],
            "transformKql": "source",
            "outputStream": "Microsoft-Event"
        }
      ]
    }
  }

Syslog-események

A Syslog-események tartományvezérlői az adatforrást syslog a bejövő Microsoft-Syslog adatfolyammal használják. A stream sémája ismert, ezért nem kell definiálni a dataSources szakaszban. Az összegyűjtendő eseményeket a facilityNames és logLevels tulajdonságokban kell megadni. További részletekért lásd : Syslog-események gyűjtése az Azure Monitor-ügynökkel . Első lépésként az ebben a cikkben található útmutatást használva létrehozhat egy DCR-t az Azure Portalon, majd a DCR-definíció útmutatásával megvizsgálhatja a JSON-t.

A dataFlows tulajdonsághoz átalakítást adhat hozzá a további funkcionalitásért és adatszűrésért, de a lehető legnagyobb hatékonyság érdekében a facilityNames és logLevels használatával kell szűrnie, hogy elkerülje a betöltési díjakat.

A következő DCR-minta a következő műveleteket hajtja végre:

  • Összegyűjti az összes eseményt a létesítményből cron .
  • Gyűjti a Warning és syslog létesítményekből származó daemon és magasabb eseményeket.
  • Adatokat küld a munkaterület Syslog-táblájának.
  • Egy olyan egyszerű átalakítást source használ, amely nem módosítja a bejövő adatokat.
{
    "location": "eastus",
    "properties": {
      "dataSources": {
        "syslog": [
          {
            "name": "cronSyslog",
            "streams": [
              "Microsoft-Syslog"
            ],
            "facilityNames": [
              "cron"
            ],
            "logLevels": [
              "Debug",
              "Info",
              "Notice",
              "Warning",
              "Error",
              "Critical",
              "Alert",
              "Emergency"
            ]
          },
          {
            "name": "syslogBase",
            "streams": [
              "Microsoft-Syslog"
            ],
            "facilityNames": [
              "daemon",
              "syslog"
            ],
            "logLevels": [
              "Warning",
              "Error",
              "Critical",
              "Alert",
              "Emergency"
            ]
          }
        ]
      },
      "destinations": {
        "logAnalytics": [
          {
            "workspaceResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/my-resource-group/providers/Microsoft.OperationalInsights/workspaces/my-workspace",
            "name": "centralWorkspace"
          }
        ]
      },
      "dataFlows": [
        {
          "streams": [
            "Microsoft-Syslog"
          ],
          "destinations": [
            "centralWorkspace"
          ],
            "transformKql": "source",
            "outputStream": "Microsoft-Syslog"
        }
      ]
    }
  }

Teljesítmény számlálók

A teljesítményadatok DCR-jei a performanceCounters adatforrást használják a bejövő Microsoft-InsightsMetrics és Microsoft-Perf adatfolyamokkal. Microsoft-InsightsMetrics az Adatok Azure Monitor-metrikákba való küldésére szolgál, míg Microsoft-Perf az adatok Log Analytics-munkaterületre való küldésére szolgál. Mindkét adatforrást felveheti a DCR-be, ha teljesítményadatokat küld mindkét célhelyre. Ezeknek a streameknek a sémái ismertek, ezért nem kell definiálni őket a dataSources szakaszban.

A gyűjtendő teljesítményszámlálók a counterSpecifiers tulajdonságban vannak megadva. További részletekért lásd: Teljesítményszámlálók gyűjtése az Azure Monitor-ügynökkel . Első lépésként az ebben a cikkben található útmutatást használva létrehozhat egy DCR-t az Azure Portalon, majd a DCR-definíció útmutatásával megvizsgálhatja a JSON-t.

A további funkciók és az adatok további szűrése érdekében átalakíthatja a dataFlows tulajdonságot Microsoft-Perf , de a hatékonyság érdekében csak a szükséges counterSpecifiers számlálókat kell kiválasztania a lehetséges betöltési költségek elkerülése érdekében.

A következő DCR-minta a következő műveleteket hajtja végre:

  • A teljesítményszámlálókat 60 másodpercenként, egy másikat pedig 30 másodpercenként gyűjti össze.
  • Adatokat küld az Azure Monitor-metrikáknak és egy Log Analytics-munkaterületnek.
  • Egy olyan egyszerű átalakítást source használ, amely nem módosítja a bejövő adatokat.
{
    "location": "eastus",
    "properties": {
      "dataSources": {
        "performanceCounters": [
          {
            "name": "perfCounterDataSource60",
            "streams": [
              "Microsoft-Perf",
              "Microsoft-InsightsMetrics"
            ],
            "samplingFrequencyInSeconds": 60,
            "counterSpecifiers": [
              "\\Processor(_Total)\\% Processor Time",
              "\\Memory\\Committed Bytes",
              "\\LogicalDisk(_Total)\\Free Megabytes",
              "\\PhysicalDisk(_Total)\\Avg. Disk Queue Length"
            ]
          },
          {
            "name": "perfCounterDataSource30",
            "streams": [
              "Microsoft-Perf"
            ],
            "samplingFrequencyInSeconds": 30,
            "counterSpecifiers": [
              "\\Process(_Total)\\Thread Count"
            ]
          }
        ]
      },
      "destinations": {
        "logAnalytics": [
          {
            "workspaceResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/my-resource-group/providers/Microsoft.OperationalInsights/workspaces/my-workspace",
            "name": "centralWorkspace"
          }
        ],
        "azureMonitorMetrics": 
        {
            "name": "azureMonitorMetrics-default"
        }
      },
      "dataFlows": [
        {
            "streams": [
                "Microsoft-Perf"
            ],
            "destinations": [
                "centralWorkspace"
            ],
            "transformKql": "source",
            "outputStream": "Microsoft-Perf"
        },
        {
            "streams": [
                "Microsoft-Perf"
            ],
            "destinations": [
                "azureMonitorMetrics-default"
            ],
            "outputStream": "Microsoft-InsightsMetrics"
        }
      ]
    }
}

Szöveges naplók

A szöveges naplók adatgyűjtési szabályai rendelkeznek egy logfiles adatforrással, amely tartalmazza azokat a naplófájlok részleteit, amelyeket az ügynök gyűjteni fog. Ez magában foglalja egy adatfolyam nevét, amelyet a bejövő adatok oszlopaival kell definiálni streamDeclarations . Ez jelenleg egy készletlista, amelyet az Azure Monitor-ügynökkel rendelkező szövegfájl naplóinak összegyűjtése című cikkben talál.

Adjon hozzá egy átalakítást a tulajdonsághoz, hogy kiszűrje a dataFlows nem gyűjtendő rekordokat, és formázza az adatokat a céltábla sémájának megfelelően. Gyakori forgatókönyv egy tagolt naplófájl több oszlopba történő elemzése a tagolt naplófájlokban leírtak szerint.

A következő DCR-minta a következő műveleteket hajtja végre:

  • Az ügynök számítógépének .txt mappájában található összes fájl c:\logs kiterjesztésű bejegyzéseit gyűjti össze.
  • Átalakítással a bejövő adatokat vessző (,) elválasztó alapján oszlopokra osztja fel. Ez az átalakítás a naplófájl formátumára vonatkozik, és más formátumokkal rendelkező naplófájlokhoz kell módosítani.
  • Elküldi az összegyűjtött naplókat egy egyéni, úgynevezett MyTable_CLtáblának. Ennek a táblának már léteznie kell, és az átalakítás által létrehozott oszlopokat kell tartalmaznia.
  • A FilePath és a Computer elemeket az bejövő stream leírása szerint gyűjti össze szövegnapló készítéséhez. Ezeknek az oszlopoknak a céltáblában is létezniük kell.
{
    "location": "eastus",
    "properties": {
        "dataCollectionEndpointId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/my-resource-group/providers/Microsoft.Insights/dataCollectionEndpoints/my-dce",
        "streamDeclarations": {
            "Custom-MyLogFileFormat": {
                "columns": [
                    {
                        "name": "TimeGenerated",
                        "type": "datetime"
                    },
                    {
                        "name": "RawData",
                        "type": "string"
                    },
                    {
                        "name": "FilePath",
                        "type": "string"
                    },
                    {
                        "name": "Computer",
                        "type": "string"
                    }
                ]
            }
        },
        "dataSources": {
            "logFiles": [
                {
                    "streams": [
                        "Custom-MyLogFileFormat"
                    ],
                    "filePatterns": [
                        "C:\\logs\\*.txt"
                    ],
                    "format": "text",
                    "settings": {
                        "text": {
                            "recordStartTimestampFormat": "ISO 8601"
                        }
                    },
                    "name": "myLogFileFormat-Windows"
                }
            ]
        },
        "destinations": {
            "logAnalytics": [
                {
                    "workspaceResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/my-resource-group/providers/Microsoft.OperationalInsights/workspaces/my-workspace",
                    "name": "MyDestination"
                }
            ]
        },
        "dataFlows": [
            {
                "streams": [
                    "Custom-MyLogFileFormat"
                ],
                "destinations": [
                    "MyDestination"
                ],
                "transformKql": "source | project d = split(RawData,\",\") | project TimeGenerated=todatetime(d[0]), Code=toint(d[1]), Severity=tostring(d[2]), Module=tostring(d[3]), Message=tostring(d[4])",
                "outputStream": "Custom-MyTable_CL"
            }
        ]
    }
}

JSON naplók

A Json-naplók DCR-jei olyan logfiles adatforrással rendelkeznek, amely tartalmazza az ügynök által gyűjtendő naplófájlok részleteit. Ez magában foglalja egy adatfolyam nevét, amelyet a bejövő adatok oszlopaival kell definiálni streamDeclarations . További részletekért lásd: Naplók gyűjtése egy JSON-fájlból az Azure Monitor-ügynökkel .

Adjon hozzá egy átalakítást a tulajdonsághoz, hogy kiszűrje a dataFlows nem gyűjtendő rekordokat, és formázza az adatokat a céltábla sémájának megfelelően.

A következő DCR-minta a következő műveleteket hajtja végre:

  • Az ügynök számítógépének .json mappájában található összes fájl c:\logs kiterjesztésű bejegyzéseit gyűjti össze. A fájlt json formátumban kell formázni, és az oszlopokat fel kell sorolni a streamdeklarációban.
  • Elküldi az összegyűjtött naplókat egy egyéni, úgynevezett MyTable_CLtáblának. Ennek a táblának már léteznie kell, és ugyanazokat az oszlopokat kell tartalmaznia, mint a bejövő streamnek. Ha az oszlopok nem egyeznek, módosítania kell az átalakítást a tulajdonságban transformKql a céltábla adatainak formázásához.
{
    "location": "eastus",
    "properties": {
        "dataCollectionEndpointId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/my-resource-group/providers/Microsoft.Insights/dataCollectionEndpoints/my-dce",
        "streamDeclarations": {
            "Custom-Json-stream": {
                "columns": [
                    {
                        "name": "TimeGenerated",
                        "type": "datetime"
                    },
                    {
                        "name": "FilePath",
                        "type": "string"
                    },
                    {
                        "name": "Code",
                        "type": "int"
                    },
                    {
                        "name": "Module",
                        "type": "string"
                    },
                    {
                        "name": "Message",
                        "type": "string"
                    }
                ]
            }
        },
        "dataSources": {
            "logFiles": [
                {
                    "streams": [
                        "Custom-Json-stream"
                    ],
                    "filePatterns": [
                        "C:\\logs\\*.json"
                    ],
                    "format": "json",
                    "name": "MyJsonFile"
                }
            ]
        },
        "destinations": {
            "logAnalytics": [
                {
                    "workspaceResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/my-resource-group/providers/Microsoft.OperationalInsights/workspaces/my-workspace",
                    "name": "MyDestination"
                }
            ]
        },
        "dataFlows": [
            {
                "streams": [
                    "Custom-Json-stream"
                ],
                "destinations": [
                    "MyDestination"
                ],
                "transformKql": "source",
                "outputStream": "Custom-MyTable_CL"
            }
        ]
    }
}

Adatok küldése az Event Hubsba vagy a Storage-ba

Az eseményközpontokba vagy tárfiókokba adatokat küldő DCR-ek ugyanazokat az adatforrásokat használják, mint az Azure Monitor-ügynökkel (AMA) adatokat gyűjtő más tartományvezérlők, de az alábbi célhelyek közül egy vagy több van. További részletekért lásd: Adatok küldése az Event Hubs and Storage-ba (előzetes verzió).

  • eventHubsDirect
  • storageBlobsDirect
  • storageTablesDirect

Megjegyzés:

Az adatokat eseményközpontokba vagy tárfiókokba küldő DCR-eknek rendelkezniük kell "kind": "AgentDirectToStore"

A következő DCR-minta a következő műveleteket hajtja végre:

  • Teljesítményszámlálókat és Windows-eseményeket gyűjt windowsos gépekről az Azure Monitor-ügynökkel (AMA).
  • Elküldi az adatokat az Event Hubnak, a Blob Storage-nak és a táblatárolónak.
{
    "location": "eastus",
    "kind": "AgentDirectToStore",
    "properties": {
        "dataSources": {
            "performanceCounters": [
                {
                "streams": [
                    "Microsoft-Perf"
                ],
                "samplingFrequencyInSeconds": 10,
                "counterSpecifiers": [
                    "\\Process(_Total)\\Working Set - Private",
                    "\\Memory\\% Committed Bytes In Use",
                    "\\LogicalDisk(_Total)\\% Free Space",
                    "\\Network Interface(*)\\Bytes Total/sec"
                ],
                "name": "perfCounterDataSource"
                }
            ],
            "windowsEventLogs": [
                {
                "streams": [
                    "Microsoft-Event"
                ],
                "xPathQueries": [
                    "Application!*[System[(Level=2)]]",
                    "System!*[System[(Level=2)]]"
                ],
                "name": "eventLogsDataSource"
                }
            ]
        },
        "destinations": {
            "eventHubsDirect": [
                {
                "eventHubResourceId": "/subscriptions/71b36fb6-4fe4-4664-9a7b-245dc62f2930/resourceGroups/my-resource-group/providers/Microsoft.EventHub/namespaces/my-eventhub-namespace/eventhubs/my-eventhub",
                "name": "myEh"
                }
            ],
            "storageBlobsDirect": [
                {
                "storageAccountResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/my-resource-group/providers/Microsoft.Storage/storageAccounts/mystorageaccount",
                "containerName": "myperfblob",
                "name": "PerfBlob"
                },
                {
                "storageAccountResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/my-resource-group/providers/Microsoft.Storage/storageAccounts/mystorageaccount",
                "containerName": "myeventblob",
                "name": "EventBlob"
                }
            ],
            "storageTablesDirect": [
                {
                "storageAccountResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/my-resource-group/providers/Microsoft.Storage/storageAccounts/mystorageaccount",
                "containerName": "myperftable",
                "name": "PerfTable"
                },
                {
                "storageAccountResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/my-resource-group/providers/Microsoft.Storage/storageAccounts/mystorageaccount",
                "containerName": "mymyeventtable",
                "name": "EventTable"
                }
            ]
        },
        "dataFlows": [
            {
                "streams": [
                "Microsoft-Perf"
                ],
                "destinations": [
                "myEh",
                "PerfBlob",
                "PerfTable"
                ]
            },
            {
                "streams": [
                "Microsoft-Event"
                ],
                "destinations": [
                "myEh",
                "EventBlob",
                "EventTable"
                ]
            }
        ]
    }
}

Adatnapló-beolvasási API

A naplóbetöltési API DCR-jeinek meg kell határozniuk a bejövő stream sémáját a streamDeclarations DCR-definíció szakaszában. A bejövő adatokat JSON formátumban kell formázni a definíció oszlopainak megfelelő sémával. Nincs szükség átalakításra, ha ez a séma megfelel a céltábla sémájának. Ha a sémák nem egyeznek, akkor az adatok formázásához hozzá kell adnia egy átalakítást a dataFlows tulajdonsághoz. További részletekért tekintse meg a Logs Ingestion API-t az Azure Monitorban .

Az alábbi DCR-minta a következő részleteket tartalmazza:

  • Adatokat küld a(z) MyTable_CL nevű táblába egy my-workspace nevű munkaterületen. A DCR telepítése előtt létre kell hoznia a táblázatot a következő oszlopokkal:
    • GenerálásiIdőpont
    • Számítógép
    • További kontextus
    • ExtendedColumn (az átalakításban definiálva)
  • Átalakítást alkalmaz a bejövő adatokra a céltábla adatainak formázásához.

Fontos

Ez a minta nem tartalmazza a dataCollectionEndpointId tulajdonságot, mivel ez automatikusan jön létre a DCR létrehozásakor. Szüksége van ennek a tulajdonságnak az értékére, mivel az az URL-cím, amelybe az alkalmazás adatokat küld. A tulajdonság létrehozásához a DCR-nek rendelkeznie kind:Direct kell. További részletekért tekintse meg a Tulajdonságok című témakört.

{
    "location": "eastus",
    "kind": "Direct",
    "properties": {
        "streamDeclarations": {
            "Custom-MyTable": {
                "columns": [
                    {
                        "name": "Time",
                        "type": "datetime"
                    },
                    {
                        "name": "Computer",
                        "type": "string"
                    },
                    {
                        "name": "AdditionalContext",
                        "type": "string"
                    }
                ]
            }
        },
        "destinations": {
            "logAnalytics": [
                {
                    "workspaceResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace",
                    "name": "LogAnalyticsDest"
                }
            ]
        },
        "dataFlows": [
            {
                "streams": [
                    "Custom-MyTable"
                ],
                "destinations": [
                    "LogAnalyticsDest"
                ],
                "transformKql": "source | extend jsonContext = parse_json(AdditionalContext) | project TimeGenerated = Time, Computer, AdditionalContext = jsonContext, ExtendedColumn=tostring(jsonContext.CounterName)",
                "outputStream": "Custom-MyTable_CL"
            }
        ]
    }
}

Munkaterület-átalakítás – DCR

A munkaterület-átalakítási DCR-ek üres datasources szakaszsal rendelkeznek, mivel az átalakítások a munkaterület támogatott tábláinak küldött adatokra lesznek alkalmazva. Az átalakítással rendelkező táblákhoz egy és csak egy bejegyzést workspaceResourceId kell tartalmaznia, valamint egy bejegyzést dataFlows is tartalmaznia kell. Meg is kell lennie "kind": "WorkspaceTransforms".

Az alábbi DCR-minta a következő részleteket tartalmazza:

  • LAQueryLogs A tábla átalakítása, amely kiszűri a tábla lekérdezéseit, és hozzáad egy oszlopot a munkaterület nevével.
  • Az átalakítás az Event táblához, amely kiszűri az információs eseményeket és eltávolítja az ParameterXml oszlopot. Ez csak az elavult Log Analytics-ügynöktől származó adatokra vonatkozik, nem pedig az Azure Monitor-ügynökre, ahogyan azt a Munkaterület-átalakítás DCR-ben ismertetjük.
{
    "kind": "WorkspaceTransforms",
    "location": "eastus",
    "properties": {
        "dataSources": {},
        "destinations": {
            "logAnalytics": [
                {
                    "workspaceResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/my-resource-group/providers/Microsoft.OperationalInsights/workspaces/my-workspace",
                    "name": "clv2ws1"
                }
            ]
        },
        "dataFlows": [
            {
                "streams": [
                    "Microsoft-Table-LAQueryLogs"
                ],
                "destinations": [
                    "clv2ws1"
                ],
                "transformKql": "source | where QueryText !contains 'LAQueryLogs' | extend Context = parse_json(RequestContext) | extend Workspace_CF = tostring(Context['workspaces'][0]) | project-away RequestContext, Context"
            },
            {
                "streams": [
                    "Microsoft-Table-Event"
                ],
                "destinations": [
                    "clv2ws1"
                ],
                "transformKql": "source | where EventLevelName in ('Error', 'Critical', 'Warning') | project-away ParameterXml"
            }
        ]
    }
}

Adatok küldése több táblába

Több oka is lehet annak, hogy egyetlen adatforrásból több táblába szeretne adatokat küldeni ugyanabban a Log Analytics-munkaterületen, beleértve a következőket:

  • A betöltési költségek csökkentéséhez küldje az alkalmi hibaelhárításhoz szükséges rekordokat egy alap naplótáblába.
  • Bizalmas adatokat tartalmazó rekordok vagy oszlopok küldése különböző engedélyekkel vagy adatmegőrzési beállításokkal rendelkező táblába.

Ha egyetlen adatforrásból több táblába szeretne adatokat küldeni, hozzon létre több adatfolyamot a DCR-ben egy egyedi átalakítási lekérdezéssel és kimeneti táblával az alábbi ábrán látható módon.

Fontos

A DCR tábláinak jelenleg ugyanabban a Log Analytics-munkaterületen kell lenniük. Ha több munkaterületre szeretne küldeni egyetlen adatforrásból, használjon több DCR-t, és konfigurálja az alkalmazást, hogy mindegyiknek küldje el az adatokat.

Diagram, amely az adatokat több táblába küldő átalakítást mutatja be.

Az alábbi minta az Azure Monitor-ügynök által az Esemény táblába küldött rekordokat szűri. A rendszer csak figyelmeztetéseket és hibaeseményeket küld az Esemény táblába. A rendszer más eseményeket is elküld az Event_CL nevű eseménytáblának, amely alapszintű naplókhoz van konfigurálva.

Megjegyzés:

Ehhez a mintához a Event_CL nevű munkaterületen létrehozott eseménytábla másolatára van szükség.

{
    "location": "eastus",
    "properties": {
        "dataSources": {
            "windowsEventLogs": [
              {
                "name": "eventLogsDataSource",
                "streams": [
                  "Microsoft-Event"
                ],
                "xPathQueries": [
                  "System!*[System[(Level = 1 or Level = 2 or Level = 3)]]",
                  "Application!*[System[(Level = 1 or Level = 2 or Level = 3)]]"
                ]
              }
            ]
        },
        "destinations": {
            "logAnalytics": [
                {
                    "workspaceResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/my-resource-group/providers/Microsoft.OperationalInsights/workspaces/my-workspace",
                    "name": "MyDestination"
                }
            ]
        },
        "dataFlows": [
            {
                "streams": [
                    "Microsoft-Event"
                ],
                "destinations": [
                    "MyDestination"
                ],
                "transformKql": "source | where EventLevelName in ('Error', 'Warning')",
                "outputStream": "Microsoft-Event"
            },
            {
                "streams": [
                    "Microsoft-Event"
                ],
                "destinations": [
                    "MyDestination"
                ],
                "transformKql": "source | where EventLevelName !in ('Error', 'Warning')",
                "outputStream": "Custom-Event_CL"
            }
        ]
    }
}

Következő lépések