Udostępnij za pośrednictwem


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óre można wykorzystać z tymi 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 jedną lub więcej reguł zbierania danych (DCR), które są przechowywane w Twojej subskrypcji 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. DCR może również używać przekształceń do filtrowania niechcianych danych i dodawania kolumn obliczeniowych. Pojedyncza maszyna może być skojarzona z wieloma DCR-ami, a pojedynczy DCR 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

Zbiór zasad DCR można wyświetlić w subskrypcji platformy Azure na stronie Reguły zbierania danych w menu Monitor w portalu Azure. 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.

Zrzut ekranu pokazujący Zasady Zbierania Danych w portalu Azure.

Tworzenie reguł zbierania danych

Istnieje wiele metod tworzenia DCR 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 wglądu w maszynę wirtualną program automatycznie tworzy wstępnie skonfigurowany DCR. 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 DCR aby dodać funkcjonalność. Możesz na przykład użyć portalu Azure, aby utworzyć regułę zbierania danych, która gromadzi zdarzenia systemu Windows lub Syslog. Następnie chcesz dodać przekształcenie do tego DCR, aby odfiltrować kolumny w danych, których nie chcesz zbierać.

W miarę dojrzewania i wzrostu złożoności środowiska należy wdrożyć strategię organizowania swoich DCR-ów, aby ułatwić nimi zarządzanie. 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 informacji o obszarze roboczym usługi Log Analytics lub zapytań dziennika w celu określenia objętości danych według komputera, aby ustalić ilość rozliczanych danych zebranych dla każdej maszyny i odpowiednio je dostosować.

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 Azure obejmują ważne metryki hosta, takie jak wykorzystanie 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 zdrowia maszyny wirtualnej w usłudze 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 DCR w połączeniu z innymi maszynami, zamiast tworzyć nowy dla każdej maszyny wirtualnej.

  • Typowe liczniki wydajności systemu operacyjnego klienta są wysyłane do tabeli InsightsMetrics w obszarze roboczym usługi Log Analytics. Nazwy liczników są znormalizowane do używania tej samej nazwy pospolitej niezależnie od typu systemu operacyjnego.

  • Jeśli określono procesy i zależności do zebrania, zostaną wypełnione następujące tabele:

    • VMBoundPort: ruch na otwartych portach serwera na maszynie
    • VMComputer: dane inwentaryzacyjne maszyny
    • VMConnection: ruch dla połączeń przychodzących i wychodzących do i z maszyny
    • VMProcess: procesy uruchomione na maszynie

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 danych 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 DCR 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

Zapytanie 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

Zapytanie 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 Syslog według komputera
Syslog \| summarize AggregatedValue = count() by Facility Liczba rekordów dziennika systemowego według obiektu

Zbieraj liczniki 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 definicje zbierania danych, aby zebrać więcej liczników i wysłać je do różnych miejsc docelowych.

Istnieje wiele powodów, dla których warto utworzyć regułę zbierania danych w celu zbierania wydajności gości.

  • 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 VM insights nie zbiera.
  • Zbieranie liczników wydajności z innych obciążeń uruchomionych na kliencie.
  • Wyślij dane wydajności do Azure Monitor Metrics, gdzie można ich używać z eksploratorem metryk i alertami metryk.

Aby uzyskać wskazówki dotyczące tworzenia reguły zbierania danych (DCR) w celu zbierania liczników wydajności, zobacz Zbieranie zdarzeń i liczników wydajności z maszyn wirtualnych za pomocą agenta Azure Monitor. Możesz szybko utworzyć DCR, używając 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 zdecydować się na połączenie wydajności i kolekcjonowania zdarzeń w tej samej zasadzie zbierania danych.

Cel podróży opis
Metryki Metryki hosta są automatycznie wysyłane do metryk usługi Azure Monitor. Za pomocą DCR można zbierać metryki klienta, aby analizować je 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: InsightsMetrics
• Inne dane wydajności: Perf

Przykładowe zapytania dziennika

W poniższych przykładach tabela Perf jest używana z niestandardowymi danymi dotyczącymi wydajności.

Zapytanie 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 dysku w bieżącym czasie dla wszystkich instancji danego komputera
Perf \| where CounterName == "Disk Transfers/sec" \| summarize AggregatedValue = percentile(CounterValue, 95) by Computer 95. percentyl operacji dyskowych na sekundę we 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 procentowego 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, minimalne, maksymalne i 75-procentylowe użycie procesora dla określonego komputera
Perf \| where ObjectName == "MSSQL$INST2:Databases" and InstanceName == "master" Wszystkie dane wydajności z obiektu wydajności bazy danych dla głównej bazy danych 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 zużycia 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.

Zapytanie 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 IIS

Usługi IIS uruchomione na maszynach z systemem Windows zapisują dzienniki w pliku tekstowym. Skonfiguruj zbieranie dzienników usług IIS za pomocą Agenta 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

Zapytanie opis
W3CIISLog \| where csHost=="www.contoso.com" \| summarize count() by csUriStem Zlicz wpisy dziennika usług IIS według adresu URL dla hosta www.contoso.com.
W3CIISLog \| summarize sum(csBytes) by Computer Przejrzyj łączną liczbę bajtów odebranych przez poszczególne maszyny 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 Śledzenia Zmian i Analizy różni się od Change Analysis w analizach maszyn wirtualnych. Ta funkcja jest dostępna w publicznej wersji zapoznawczej i nie jest jeszcze uwzględniona w tym scenariuszu.

Aby dowiedzieć się więcej o różnych możliwościach włączenia rozwiązania do Śledzenia zmian na maszynach wirtualnych, zobacz Włączanie Śledzenia zmian i spisu. To rozwiązanie obejmuje metody konfigurowania maszyn wirtualnych na dużą skalę. Aby obsługiwać rozwiązanie, musisz utworzyć konto usługi Azure Automation.

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

Stół opis
ZmianaKonfiguracji 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, gdy jedna z usług zostanie zatrzymana. 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 usługi VM Insights z włączoną kolekcją Procesów i zależności, możesz użyć VMConnection i VMBoundPort do analizowania połączeń i portów na tej maszynie. Tabela VMBoundPort jest aktualizowana co minutę z każdym procesem działającym na komputerze i portem, na którym nasłuchuje. Możesz utworzyć alert wyszukiwania dzienników podobny do alertu o braku sygnału, aby znaleźć procesy, które zostały zatrzymane, albo kiedy 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 trendy bajtów wysłanych i odebranych 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 Monitor połączenia usługi Network Watcher służy do testowania połączeń z portem na maszynie wirtualnej. Test sprawdza, czy maszyna nasłuchuje na danym porcie i czy jest dostępna w sieci.

Menedżer połączeń 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.

Istnieje dodatkowy koszt za Menedżer połączeń. 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ć Hybrid Runbook Worker, który jest częścią Azure Automation, aby uruchomić lokalny skrypt PowerShell. Nie są naliczane bezpośrednie opłaty za hybrydowy proces roboczy elementu Runbook, ale koszt każdego używanego elementu Runbook jest naliczany.

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, runbook powinien dodać wpis do dziennika niestandardowego. Następnie skonfiguruj ten dziennik do zbierania przez usługę Azure Monitor. Utwórz regułę alertu przeszukiwania dzienników, który uruchamia się na tym wpisie dziennika.

Następne kroki