Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
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.
- Aby uzyskać więcej informacji na temat analizowania telemetrii zebranej z maszyn wirtualnych, zobacz Monitorowanie maszyn wirtualnych za pomocą usługi Azure Monitor: analizowanie danych.
- Aby uzyskać więcej informacji na temat używania danych telemetrycznych zebranych z maszyn wirtualnych do tworzenia alertów w usłudze Azure Monitor, zobacz Monitorowanie maszyn wirtualnych za pomocą usługi Azure Monitor: alerty.
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.
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ć:
- Wyświetlono na stronie przeglądu.
- Analizowane za pomocą analizatora metryk dla maszyny w portalu Azure.
- Służy do obsługi alertów dotyczących metryk.
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.