Monitorowanie maszyn wirtualnych za pomocą usługi Azure Monitor: zbieranie danych

Ten artykuł jest częścią przewodnika Monitorowanie maszyn wirtualnych i ich obciążeń w usłudze Azure Monitor. Opisano w nim sposób konfigurowania zbierania danych po wdrożeniu agenta usługi Azure Monitor na platformie Azure i na maszynach wirtualnych hybrydowych w usłudze Azure Monitor.

Ten artykuł zawiera wskazówki dotyczące zbierania najbardziej typowych typów danych telemetrycznych z maszyn wirtualnych. Dokładna wybrana konfiguracja zależy od obciążeń uruchamianych na maszynach. W każdej sekcji znajdują się przykładowe alerty wyszukiwania dzienników, których można używać z danymi.

Uwaga

W tym scenariuszu opisano sposób implementowania pełnego monitorowania środowiska platformy Azure i hybrydowej maszyny wirtualnej. Aby rozpocząć monitorowanie pierwszej maszyny wirtualnej platformy Azure, zobacz Monitorowanie maszyn wirtualnych platformy Azure.

Reguły zbierania danych

Zbieranie danych z agenta usługi Azure Monitor jest definiowane przez co najmniej jedną regułę zbierania danych (DCR), które są przechowywane w ramach subskrypcji platformy Azure i skojarzone z maszynami wirtualnymi.

W przypadku maszyn wirtualnych kontrolery domeny definiują dane, takie jak zdarzenia i liczniki wydajności do zbierania i określania obszarów roboczych usługi Log Analytics, w których mają być wysyłane dane. Kontroler domeny może również używać przekształceń do filtrowania niechcianych danych i dodawania kolumn obliczeniowych. Pojedyncza maszyna może być skojarzona z wieloma kontrolerami dcR, a jeden kontroler domeny może być skojarzony z wieloma maszynami. Kontrolery domeny są dostarczane do wszystkich maszyn, które są skojarzone z miejscem ich przetwarzania przez agenta usługi Azure Monitor.

Wyświetlanie reguł zbierania danych

Reguły zbierania danych można wyświetlić w subskrypcji platformy Azure w menu Monitorowanie w witrynie Azure Portal. Kontrolery domeny obsługują inne scenariusze zbierania danych w usłudze Azure Monitor, więc wszystkie kontrolery domeny nie muszą być przeznaczone dla maszyn wirtualnych.

Screenshot that shows DCRs in the Azure portal.

Tworzenie reguł zbierania danych

Istnieje wiele metod tworzenia kontrolerów domeny w zależności od scenariusza zbierania danych. W niektórych przypadkach witryna Azure Portal przeprowadzi Cię przez konfigurację. Inne scenariusze wymagają bezpośredniej edycji kontrolera domeny. Podczas konfigurowania szczegółowych informacji o maszynie wirtualnej program automatycznie tworzy wstępnie skonfigurowany kontroler domeny. W poniższych sekcjach przedstawiono typowe dane do zbierania i sposobu konfigurowania zbierania danych.

W niektórych przypadkach może być konieczne zmodyfikowanie istniejącego kontrolera domeny w celu dodania funkcji. Możesz na przykład użyć witryny Azure Portal do utworzenia kontrolera domeny zbierającego zdarzenia systemu Windows lub Syslog. Następnie chcesz dodać przekształcenie do tego kontrolera domeny, aby odfiltrować kolumny w zdarzeniach, których nie chcesz zbierać.

W miarę dojrzewania i wzrostu złożoności środowiska należy wdrożyć strategię organizowania kontrolerów domeny, aby ułatwić zarządzanie nimi. Aby uzyskać wskazówki dotyczące różnych strategii, zobacz Najlepsze rozwiązania dotyczące tworzenia reguł zbierania danych i zarządzania nimi w usłudze Azure Monitor.

Kontrolowanie kosztów

Ponieważ koszt usługi Azure Monitor zależy od ilości zbieranych danych, upewnij się, że nie zbierasz więcej niż musisz spełnić wymagania dotyczące monitorowania. Konfiguracja jest równowagą między budżetem a ilością szczegółowych informacji dotyczących działania maszyn wirtualnych.

Napiwek

Aby uzyskać strategie zmniejszenia kosztów usługi Azure Monitor, zobacz Optymalizacja kosztów i Usługa Azure Monitor.

Typowa maszyna wirtualna generuje od 1 GB do 3 GB danych miesięcznie. Ten rozmiar danych zależy od konfiguracji maszyny, obciążeń uruchomionych na nim i konfiguracji kontrolerów domeny. Przed skonfigurowaniem zbierania danych w całym środowisku maszyny wirtualnej rozpocznij zbieranie na niektórych reprezentatywnych maszynach, aby lepiej przewidzieć oczekiwane koszty podczas wdrażania w całym środowisku. Użyj szczegółowych informacji o obszarze roboczym usługi Log Analytics lub zapytań dziennika w woluminie danych według komputera , aby określić ilość rozliczanych danych zebranych dla każdej maszyny i odpowiednio dostosować je.

Oceń zebrane dane i odfiltruj wszystkie, które spełniają następujące kryteria, aby zmniejszyć koszty. Każde zbierane źródło danych może mieć inną metodę filtrowania niechcianych danych. Zapoznaj się z poniższymi sekcjami, aby uzyskać szczegółowe informacje o poszczególnych typowych źródłach danych.

  • Nie jest używany do zgłaszania alertów.
  • Brak znanej wartości kryminalistycznej ani diagnostycznej.
  • Nie jest to wymagane przez organy regulacyjne.
  • Nie jest używany w żadnych pulpitach nawigacyjnych ani skoroszytach.

Można również użyć przekształceń , aby zaimplementować bardziej szczegółowe filtrowanie, a także filtrować dane z kolumn, które zapewniają niewielką wartość. Na przykład może istnieć zdarzenie systemu Windows, które jest przydatne do zgłaszania alertów, ale zawiera kolumny z nadmiarowymi lub nadmiernymi danymi. Można utworzyć przekształcenie, które umożliwia zbieranie zdarzeń, ale usuwa te nadmierne dane.

Przefiltruj dane tak bardzo, jak to możliwe przed wysłaniem ich do usługi Azure Monitor, aby uniknąć potencjalnej opłaty za filtrowanie zbyt dużej ilości danych przy użyciu przekształceń. Użyj przekształceń do filtrowania rekordów przy użyciu złożonej logiki i filtrowania kolumn z danymi, których nie potrzebujesz.

Domyślne zbieranie danych

Usługa Azure Monitor automatycznie wykonuje następujące zbieranie danych bez konieczności innej konfiguracji.

Metryki platformy

Metryki platformy dla maszyn wirtualnych platformy Azure obejmują ważne metryki hosta, takie jak użycie procesora CPU, sieci i dysku. Mogą to być:

Dziennik aktywności

Dziennik aktywności jest zbierany automatycznie. Obejmuje on ostatnie działanie maszyny, takie jak wszelkie zmiany konfiguracji i czas jego zatrzymania i uruchomienia. Metryki platformy i dziennik aktywności zebrane dla każdego hosta maszyny wirtualnej można wyświetlić w witrynie Azure Portal.

Możesz wyświetlić dziennik aktywności dla pojedynczej maszyny lub wszystkich zasobów w subskrypcji. Utwórz ustawienie diagnostyczne, aby wysłać te dane do tego samego obszaru roboczego usługi Log Analytics używanego przez agenta usługi Azure Monitor, aby przeanalizować je przy użyciu innych danych monitorowania zebranych dla maszyny wirtualnej. Pozyskiwanie lub przechowywanie danych dziennika aktywności nie są kosztowne.

Informacje o dostępności maszyny wirtualnej w usłudze Azure Resource Graph

Za pomocą usługi Azure Resource Graph można użyć tych samych język zapytań Kusto używanych w zapytaniach dzienników do wykonywania zapytań dotyczących zasobów platformy Azure na dużą skalę za pomocą złożonego filtrowania, grupowania i sortowania według właściwości zasobów. Możesz użyć adnotacji kondycji maszyny wirtualnej do usługi Resource Graph w celu uzyskania szczegółowego przypisania błędów i analizy przestojów.

Aby uzyskać informacje na temat zbieranych danych i sposobu ich wyświetlania, zobacz Monitorowanie maszyn wirtualnych za pomocą usługi Azure Monitor: analizowanie danych monitorowania.

Szczegółowe informacje o maszynie wirtualnej

Po włączeniu szczegółowych informacji o maszynie wirtualnej tworzy kontroler domeny z prefiksem MSVMI , który zbiera następujące informacje. Można użyć tego samego kontrolera DCR z innymi maszynami, w przeciwieństwie do tworzenia nowego dla każdej maszyny wirtualnej.

Domyślnie szczegółowe informacje o maszynach wirtualnych nie umożliwiają zbierania procesów i zależności w celu oszczędzania kosztów pozyskiwania danych. Te dane są wymagane dla funkcji Mapy, a także wdraża agenta zależności na maszynie. Włącz tę kolekcję , jeśli chcesz użyć tej funkcji.

Zbieranie zdarzeń systemu Windows i dziennika systemowego

System operacyjny i aplikacje na maszynach wirtualnych często zapisują się w dzienniku zdarzeń systemu Windows lub dzienniku systemu Syslog. Alert można utworzyć natychmiast po znalezieniu pojedynczego zdarzenia lub zaczekać na serię pasujących zdarzeń w określonym przedziale czasu. Możesz również zbierać zdarzenia do późniejszej analizy, takie jak identyfikowanie określonych trendów w czasie lub wykonywanie rozwiązywania problemów po wystąpieniu problemu.

Aby uzyskać wskazówki dotyczące tworzenia kontrolera domeny w celu zbierania zdarzeń systemu Windows i Syslog, zobacz Zbieranie zdarzeń i liczników wydajności z maszyn wirtualnych za pomocą agenta usługi Azure Monitor. Można szybko utworzyć kontroler domeny przy użyciu najbardziej typowych dzienników zdarzeń systemu Windows i obiektów dziennika systemowego filtrowania według poziomu zdarzeń.

Aby uzyskać bardziej szczegółowe filtrowanie według kryteriów, takich jak identyfikator zdarzenia, można utworzyć filtr niestandardowy przy użyciu zapytań XPath. Możesz dodatkowo filtrować zebrane dane, edytując kontroler domeny w celu dodania przekształcenia.

Skorzystaj z poniższych wskazówek jako zalecanego punktu wyjścia dla zbierania zdarzeń. Zmodyfikuj ustawienia dcR, aby filtrować niepotrzebne zdarzenia i dodawać inne zdarzenia w zależności od wymagań.

Źródło Strategia
Zdarzenia systemu Windows Zbieranie co najmniej zdarzeń krytycznych, błędów i ostrzeżeń dla dzienników systemu i aplikacji w celu obsługi alertów. Dodaj zdarzenia informacji , aby analizować trendy i obsługiwać rozwiązywanie problemów. Zdarzenia pełne są rzadko przydatne i zwykle nie powinny być zbierane.
Zdarzenia dziennika systemu Zbierz co najmniej LOG_WARNING zdarzenia dla każdego obiektu w celu obsługi alertów. Dodaj zdarzenia informacji , aby analizować trendy i obsługiwać rozwiązywanie problemów. LOG_DEBUG zdarzenia są rzadko przydatne i zazwyczaj nie należy ich zbierać.

Przykładowe zapytania dziennika: zdarzenia systemu Windows

Query opis
Event Wszystkie zdarzenia systemu Windows
Event | where EventLevelName == "Error" Wszystkie zdarzenia systemu Windows o ważności błędu
Event | summarize count() by Source Liczba zdarzeń systemu Windows według źródła
Event | where EventLevelName == "Error" | summarize count() by Source Liczba zdarzeń błędów systemu Windows według źródła

Przykładowe zapytania dziennika: zdarzenia dziennika systemowego

Query opis
Syslog Wszystkie dzienniki systemowe
Syslog | where SeverityLevel == "error" Wszystkie rekordy dziennika systemowego o ważności błędu
Syslog | summarize AggregatedValue = count() by Computer Liczba rekordów dziennika systemowego według komputera
Syslog | summarize AggregatedValue = count() by Facility Liczba rekordów dziennika systemowego według obiektu

Zbierania danych z liczników wydajności

Dane wydajności klienta mogą być wysyłane do metryk usługi Azure Monitor lub dzienników usługi Azure Monitor, a zazwyczaj są wysyłane do obu miejsc docelowych. Jeśli włączono szczegółowe informacje o maszynie wirtualnej, w dziennikach jest zbierany wspólny zestaw liczników wydajności w celu obsługi wykresów wydajności. Nie można zmodyfikować tego zestawu liczników, ale możesz utworzyć inne kontrolery domeny, aby zebrać więcej liczników i wysłać je do różnych miejsc docelowych.

Istnieje wiele powodów, dla których chcesz utworzyć kontroler domeny w celu zbierania wydajności gościa:

  • Nie używasz szczegółowych informacji o maszynie wirtualnej, więc dane wydajności klienta nie są jeszcze zbierane.
  • Zbierz inne liczniki wydajności, których szczegółowe informacje o maszynie wirtualnej nie zbierają.
  • Zbieranie liczników wydajności z innych obciążeń uruchomionych na kliencie.
  • Wysyłanie danych wydajności do metryk usługi Azure Monitor, gdzie można ich używać z eksploratorem metryk i alertami metryk.

Aby uzyskać wskazówki dotyczące tworzenia kontrolera domeny w celu zbierania liczników wydajności, zobacz Zbieranie zdarzeń i liczników wydajności z maszyn wirtualnych za pomocą agenta usługi Azure Monitor. Możesz szybko utworzyć kontroler domeny przy użyciu najbardziej typowych liczników. Aby uzyskać bardziej szczegółowe filtrowanie według kryteriów, takich jak identyfikator zdarzenia, można utworzyć filtr niestandardowy przy użyciu zapytań XPath.

Uwaga

Możesz połączyć wydajność i zbieranie zdarzeń w tym samym kontrolerze domeny.

Element docelowy opis
Metryki Metryki hosta są automatycznie wysyłane do metryk usługi Azure Monitor. Za pomocą kontrolera domeny można zbierać metryki klienta, aby można je było analizować razem z eksploratorem metryk lub używać z alertami metryk. Te dane są przechowywane przez 93 dni.
Dzienniki Dane wydajności przechowywane w dziennikach usługi Azure Monitor mogą być przechowywane przez dłuższy czas. Dane można analizować wraz z danymi zdarzeń przy użyciu zapytań dziennika z usługą Log Analytics lub alertów przeszukiwania dzienników. Możesz również skorelować dane przy użyciu złożonej logiki na wielu maszynach, regionach i subskrypcjach.

Dane wydajności są wysyłane do następujących tabel:
— Szczegółowe informacje o maszynach wirtualnych: Szczegółowe informacje Metrics
- Inne dane wydajności: Wydajność

Przykładowe zapytania dziennika

W poniższych przykładach użyto Perf tabeli z niestandardowymi danymi wydajności. Aby uzyskać informacje na temat danych wydajności zebranych przez szczegółowe informacje o maszynie wirtualnej, zobacz Jak wykonywać zapytania dotyczące dzienników z szczegółowych informacji o maszynie wirtualnej.

Query opis
Perf Wszystkie dane wydajności
Perf | where Computer == "MyComputer" Wszystkie dane dotyczące wydajności z określonego komputera
Perf | where CounterName == "Current Disk Queue Length" Wszystkie dane wydajności dla określonego licznika
Perf | where ObjectName == "Processor" and CounterName == "% Processor Time" and InstanceName == "_Total" | summarize AVGCPU = avg(CounterValue) by Computer Średnie wykorzystanie procesora CPU na wszystkich komputerach
Perf | where CounterName == "% Processor Time" | summarize AggregatedValue = max(CounterValue) by Computer Maksymalne wykorzystanie procesora CPU na wszystkich komputerach
Perf | where ObjectName == "LogicalDisk" and CounterName == "Current Disk Queue Length" and Computer == "MyComputerName" | summarize AggregatedValue = avg(CounterValue) by InstanceName Średnia długość kolejki bieżącego dysku we wszystkich wystąpieniach danego komputera
Perf | where CounterName == "Disk Transfers/sec" | summarize AggregatedValue = percentile(CounterValue, 95) by Computer 95. percentyl transferów dysków/s na wszystkich komputerach
Perf | where CounterName == "% Processor Time" and InstanceName == "_Total" | summarize AggregatedValue = avg(CounterValue) by bin(TimeGenerated, 1h), Computer Średnia godzinowa użycia procesora CPU na wszystkich komputerach
Perf | where Computer == "MyComputer" and CounterName startswith_cs "%" and InstanceName == "_Total" | summarize AggregatedValue = percentile(CounterValue, 70) by bin(TimeGenerated, 1h), CounterName Co godzinę 70 percentyl każdego licznika procent procent dla określonego komputera
Perf | where CounterName == "% Processor Time" and InstanceName == "_Total" and Computer == "MyComputer" | summarize ["min(CounterValue)"] = min(CounterValue), ["avg(CounterValue)"] = avg(CounterValue), ["percentile75(CounterValue)"] = percentile(CounterValue, 75), ["max(CounterValue)"] = max(CounterValue) by bin(TimeGenerated, 1h), Computer Średnia godzinowa, minimalna, maksymalna i 75-percentylowe użycie procesora CPU dla określonego komputera
Perf | where ObjectName == "MSSQL$INST2:Databases" and InstanceName == "master" Wszystkie dane wydajności z obiektu wydajności bazy danych dla bazy danych master z nazwanego wystąpienia programu SQL Server INST2.
Perf | where TimeGenerated >ago(5m) | where ObjectName == "Process" and InstanceName != "_Total" and InstanceName != "Idle" | where CounterName == "% Processor Time" | summarize cpuVal=avg(CounterValue) by Computer,InstanceName | join (Perf| where TimeGenerated >ago(5m)| where ObjectName == "Process" and CounterName == "ID Process" | summarize arg_max(TimeGenerated,*) by ProcID=CounterValue ) on Computer,InstanceName | sort by TimeGenerated desc | summarize AvgCPU = avg(cpuVal) by InstanceName,ProcID Średnia użycia procesora CPU w ciągu ostatnich 5 minut dla każdego identyfikatora procesu.

Zbieranie dzienników tekstowych

Niektóre aplikacje zapisują zdarzenia zapisywane w dzienniku tekstowym przechowywanym na maszynie wirtualnej. Utwórz tabelę niestandardową i kontroler domeny w celu zebrania tych danych. Należy zdefiniować lokalizację dziennika tekstowego, jego szczegółową konfigurację i schemat tabeli niestandardowej. W obszarze roboczym istnieje koszt pozyskiwania i przechowywania tych danych.

Przykładowe zapytania dziennika

Nazwy kolumn użyte tutaj są tylko przykładami. Nazwy kolumn dziennika będą najprawdopodobniej inne.

Query opis
MyApp_CL | summarize count() by code Zlicz liczbę zdarzeń według kodu.
MyApp_CL | where status == "Error" | summarize AggregatedValue = count() by Computer, bin(TimeGenerated, 15m) Utwórz regułę alertu dla dowolnego zdarzenia błędu.

Zbieranie dzienników usług IIS

Usługi IIS uruchomione na maszynach z systemem Windows zapisują dzienniki w pliku tekstowym. Konfigurowanie zbierania dzienników usług IIS przy użyciu funkcji Zbieranie dzienników usług IIS za pomocą agenta usługi Azure Monitor. W obszarze roboczym istnieje koszt pozyskiwania i przechowywania tych danych.

Rekordy z dziennika usług IIS są przechowywane w tabeli W3CIISLog w obszarze roboczym usługi Log Analytics. W obszarze roboczym istnieje koszt pozyskiwania i przechowywania tych danych.

Przykładowe zapytania dziennika

Query opis
W3CIISLog | where csHost=="www.contoso.com" | summarize count() by csUriStem Zlicz wpisy dziennika usług IIS według adresu URL dla www.contoso.com hosta.
W3CIISLog | summarize sum(csBytes) by Computer Przejrzyj łączną liczbę bajtów odebranych przez poszczególne maszyny usług IIS.

Monitorowanie usługi lub demona

Aby monitorować stan usługi systemu Windows lub demona systemu Linux, włącz rozwiązanie Śledzenie zmian i spis w usłudze Azure Automation.

Usługa Azure Monitor nie może samodzielnie monitorować stanu usługi lub demona. Istnieją pewne możliwe metody, takie jak wyszukiwanie zdarzeń w dzienniku zdarzeń systemu Windows, ale ta metoda jest zawodna. Możesz również wyszukać proces skojarzony z usługą uruchomioną na maszynie z tabeli VMProcess wypełnionej przez szczegółowe informacje o maszynie wirtualnej. Ta tabela aktualizuje tylko co godzinę, co zwykle nie jest wystarczające, jeśli chcesz używać tych danych do zgłaszania alertów.

Uwaga

Rozwiązanie Change Tracking and Analysis różni się od funkcji Analiza zmian w szczegółowych danych maszyn wirtualnych. Ta funkcja jest dostępna w publicznej wersji zapoznawczej i nie jest jeszcze uwzględniona w tym scenariuszu.

Aby uzyskać różne opcje włączania rozwiązania Change Tracking na maszynach wirtualnych, zobacz Włączanie Śledzenie zmian i spis. To rozwiązanie obejmuje metody konfigurowania maszyn wirtualnych na dużą skalę. Aby obsługiwać rozwiązanie, musisz utworzyć konto usługi Azure Automation.

Po włączeniu Śledzenie zmian i spis dwa nowe tabele są tworzone w obszarze roboczym usługi Log Analytics. Te tabele służą do obsługi zapytań dzienników i reguł alertów przeszukiwania dzienników.

Table opis
ConfigurationChange Zmiany w danych konfiguracji gościa
ConfigurationData Ostatni zgłoszony stan dla danych konfiguracji gościa

Przykładowe zapytania dziennika

  • Wyświetl listę wszystkich usług i demonów, które zostały niedawno uruchomione.

    ConfigurationChange
    | where ConfigChangeType == "Daemons" or ConfigChangeType == "WindowsServices"
    | where SvcState == "Running"
    | sort by Computer, SvcName
    
  • Alert po zatrzymaniu określonej usługi. Użyj tego zapytania w regule alertu przeszukiwania dzienników.

    ConfigurationData
    | where SvcName == "W3SVC" 
    | where SvcState == "Stopped"
    | where ConfigDataType == "WindowsServices"
    | where SvcStartupType == "Auto"
    | summarize AggregatedValue = count() by Computer, SvcName, SvcDisplayName, SvcState, bin(TimeGenerated, 15m)
    
  • Alert po zatrzymaniu jednego z zestawów usług. Użyj tego zapytania w regule alertu przeszukiwania dzienników.

    let services = dynamic(["omskd","cshost","schedule","wuauserv","heathservice","efs","wsusservice","SrmSvc","CertSvc","wmsvc","vpxd","winmgmt","netman","smsexec","w3svc","sms_site_vss_writer","ccmexe","spooler","eventsystem","netlogon","kdc","ntds","lsmserv","gpsvc","dns","dfsr","dfs","dhcp","DNSCache","dmserver","messenger","w32time","plugplay","rpcss","lanmanserver","lmhosts","eventlog","lanmanworkstation","wnirm","mpssvc","dhcpserver","VSS","ClusSvc","MSExchangeTransport","MSExchangeIS"]);
    ConfigurationData
    | where ConfigDataType == "WindowsServices"
    | where SvcStartupType == "Auto"
    | where SvcName in (services)
    | where SvcState == "Stopped"
    | project TimeGenerated, Computer, SvcName, SvcDisplayName, SvcState
    | summarize AggregatedValue = count() by Computer, SvcName, SvcDisplayName, SvcState, bin(TimeGenerated, 15m)
    

Monitorowanie portu

Monitorowanie portów sprawdza, czy maszyna nasłuchuje na określonym porcie. W tym miejscu opisano dwie potencjalne strategie monitorowania portów.

Tabele agenta zależności

Jeśli używasz szczegółowych informacji o maszynie wirtualnej z włączonymi procesami i kolekcjami zależności, możesz użyć maszyny wirtualnej Połączenie ion i vmBoundPort do analizowania połączeń i portów na maszynie. Tabela VMBoundPort jest aktualizowana co minutę przy każdym procesie uruchomionym na komputerze i na porcie, na którym nasłuchuje. Możesz utworzyć alert wyszukiwania dzienników podobny do brakującego alertu pulsu, aby znaleźć procesy, które zostały zatrzymane lub alerty, gdy maszyna nie nasłuchuje na określonym porcie.

  • Przejrzyj liczbę otwartych portów na maszynach wirtualnych, aby ocenić, które maszyny wirtualne mają luki w zabezpieczeniach i konfiguracji.

    VMBoundPort
    | where Ip != "127.0.0.1"
    | summarize by Computer, Machine, Port, Protocol
    | summarize OpenPorts=count() by Computer, Machine
    | order by OpenPorts desc
    
  • Wyświetl listę powiązanych portów na maszynach wirtualnych, aby ocenić, które maszyny wirtualne mają luki w zabezpieczeniach i konfiguracji.

    VMBoundPort
    | distinct Computer, Port, ProcessName
    
  • Analizowanie działań sieciowych według portów w celu określenia sposobu konfigurowania aplikacji lub usługi.

    VMBoundPort
    | where Ip != "127.0.0.1"
    | summarize BytesSent=sum(BytesSent), BytesReceived=sum(BytesReceived), LinksEstablished=sum(LinksEstablished), LinksTerminated=sum(LinksTerminated), arg_max(TimeGenerated, LinksLive) by Machine, Computer, ProcessName, Ip, Port, IsWildcardBind
    | project-away TimeGenerated
    | order by Machine, Computer, Port, Ip, ProcessName
    
  • Przejrzyj bajty wysłane i odebrane trendy dla maszyn wirtualnych.

    VMConnection
    | summarize sum(BytesSent), sum(BytesReceived) by bin(TimeGenerated,1hr), Computer
    | order by Computer desc
    | render timechart
    
  • Użyj błędów połączeń w czasie, aby określić, czy szybkość awarii jest stabilna, czy zmienia się.

    VMConnection
    | where Computer == <replace this with a computer name, e.g. 'acme-demo'>
    | extend bythehour = datetime_part("hour", TimeGenerated)
    | project bythehour, LinksFailed
    | summarize failCount = count() by bythehour
    | sort by bythehour asc
    | render timechart
    
  • Połącz trendy stanu, aby przeanalizować zachowanie i stan połączenia maszyny.

    VMConnection
    | where Computer == <replace this with a computer name, e.g. 'acme-demo'>
    | summarize  dcount(LinksEstablished), dcount(LinksLive), dcount(LinksFailed), dcount(LinksTerminated) by bin(TimeGenerated, 1h)
    | render timechart
    

Menedżer połączeń

Funkcja monitora Połączenie ion usługi Network Watcher służy do testowania połączeń z portem na maszynie wirtualnej. Test sprawdza, czy maszyna nasłuchuje na porcie i czy jest dostępna w sieci.

Połączenie ion Manager wymaga rozszerzenia Network Watcher na maszynie klienckiej inicjującej test. Nie trzeba go instalować na testowanej maszynie. Aby uzyskać więcej informacji, zobacz Samouczek: monitorowanie komunikacji sieciowej przy użyciu witryny Azure Portal.

W przypadku menedżera Połączenie ion jest dodatkowy koszt. Aby uzyskać więcej informacji, zobacz Cennik usługi Network Watcher.

Uruchamianie procesu na komputerze lokalnym

Monitorowanie niektórych obciążeń wymaga lokalnego procesu. Przykładem jest skrypt programu PowerShell uruchamiany na komputerze lokalnym w celu nawiązania połączenia z aplikacją i zbierania lub przetwarzania danych. Możesz użyć hybrydowego procesu roboczego elementu Runbook, który jest częścią usługi Azure Automation, aby uruchomić lokalny skrypt programu PowerShell. Nie są naliczane bezpośrednie opłaty za hybrydowy proces roboczy elementu Runbook, ale koszt każdego używanego elementu Runbook jest naliczany.

Element Runbook może uzyskiwać dostęp do dowolnych zasobów na komputerze lokalnym w celu zebrania wymaganych danych. Nie można wysyłać danych bezpośrednio do usługi Azure Monitor ani tworzyć alertu. Aby utworzyć alert, element Runbook zapisz wpis w dzienniku niestandardowym. Następnie skonfiguruj ten dziennik do zbierania przez usługę Azure Monitor. Utwórz regułę alertu przeszukiwania dzienników, która jest uruchamiana w tym wpisie dziennika.

Następne kroki