Dela via


Felsöka prestandaproblem för Microsoft Defender för Endpoint i Linux

Gäller för:

Vill du uppleva Microsoft Defender för Endpoint? Registrera dig för en kostnadsfri utvärderingsversion.

Den här artikeln beskriver hur du begränsar prestandaproblem som rör Defender för Endpoint i Linux. Diagnostikverktyg är tillgängliga för att hjälpa dig att förstå och minska befintliga resursbrister och processer som påverkar prestanda. Dessa diagnostikverktyg kan användas för att förbättra synligheten i Microsoft Defender-portalen också. Flaskhalsar i ett eller flera maskinvaruundersystem orsakar främst prestandaproblem, beroende på systemets resursanvändningsprofil. Ibland är program känsliga för disk-I/O-resurser och kan behöva mer processorkapacitet, och ibland är vissa konfigurationer inte hållbara, och kan utlösa för många nya processer och öppna för många filbeskrivningar.

Beroende på vilka program du kör och dina enhetsegenskaper kan du uppleva icke-optimala prestanda när du kör Defender för Endpoint på Linux. I synnerhet kan program eller systemprocesser som har åtkomst till många resurser, till exempel cpu, disk och minne under en kort tidsintervall, leda till prestandaproblem i Defender för Endpoint i Linux.

Varning

Kontrollera att andra säkerhetsprodukter inte körs på enheten innan du börjar. Flera säkerhetsprodukter kan vara i konflikt med och påverka värdprestandan.

Det finns tre olika sätt att felsöka bullriga processer och kataloger med hjälp av diagnostikverktygen från Microsoft Defender för Endpoint i Linux:

  • Använda realtidsskyddsstatistik
  • Använda frekventa händelsekällor
  • Använda eBPF-statistik

Felsöka prestandaproblem med hjälp av realtidsskyddsstatistik

Gäller för:

  • Endast prestandaproblem som rör antivirusprogram

Realtidsskydd (RTP) är en funktion i Defender för Endpoint i Linux som kontinuerligt övervakar och skyddar din enhet mot hot. Den består av fil- och processövervakning och andra heuristiker.

Följande steg kan användas för att felsöka och åtgärda dessa problem:

  1. Inaktivera realtidsskydd med någon av följande metoder och se om prestandan förbättras. Den här metoden hjälper till att begränsa om Defender för Endpoint i Linux bidrar till prestandaproblemen. Om enheten inte hanteras av din organisation kan realtidsskydd inaktiveras från kommandoraden:

    mdatp config real-time-protection --value disabled
    
    Configuration property updated
    

    Om din organisation hanterar enheten kan administratören inaktivera realtidsskydd med hjälp av anvisningarna i Ange inställningar för Defender för Endpoint på Linux.

    Obs!

    Om prestandaproblemet kvarstår när realtidsskyddet är inaktiverat kan problemets ursprung även vara komponenten för slutpunktsidentifiering och svar (EDR). I det här fallet måste du lägga till globala undantag från Antivirus och EDR. I det här fallet följer du stegen i avsnittet Felsöka prestandaproblem med hjälp av frekventa händelsekällor.

  2. Om du vill hitta de program som utlöser flest genomsökningar kan du använda realtidsstatistik som samlats in av Defender för Endpoint i Linux.

    Obs!

    Den här funktionen är tillgänglig i version 100.90.70 eller senare.

    Den här funktionen är aktiverad som standard på kanalerna Dogfood och InsiderFast . Om du använder en annan uppdateringskanal kan den här funktionen aktiveras från kommandoraden:

    mdatp config real-time-protection-statistics --value enabled
    

    Den här funktionen kräver att realtidsskydd aktiveras. Kör följande kommando för att kontrollera statusen för realtidsskydd:

    mdatp health --field real_time_protection_enabled
    

    Kontrollera att posten real_time_protection_enabled är true. Annars kör du följande kommando för att aktivera det:

    mdatp config real-time-protection --value enabled
    
    Configuration property updated
    

    Om du vill samla in aktuell statistik kör du:

    mdatp diagnostic real-time-protection-statistics --output json
    

    Obs!

    Genom att använda --output json (observera dubbelstreck) ser du till att utdataformatet är redo för parsning.

    Utdata från det här kommandot visar alla processer och deras associerade genomsökningsaktivitet.

  3. Skriv följande kommandon:

    mdatp diagnostic real-time-protection-statistics --sort --top 4
    

    Utdata är en lista över de fyra främsta bidragande faktorerna till prestandaproblem. Kommandots utdata ser till exempel ut ungefär så här:

    =====================================
    Process id: 560
    Name: NetworkManager
    Path: "/usr/sbin/NetworkManager"
    Total files scanned: 261
    Scan time (ns): "3070788919"
    Status: Active
    =====================================
    Process id: 1709561
    Name: snapd
    Path: "/snap/snapd/23545/usr/lib/snapd/snapd"
    Total files scanned: 247
    Scan time (ns): "19926516003"
    Status: Active
    =====================================
    Process id: 596
    Name: systemd-logind
    Path: "/usr/lib/systemd/systemd-logind"
    Total files scanned: 29
    Scan time (ns): "716836547"
    Status: Active
    =====================================
    Process id: 1977683
    Name: cupsd
    Path: "/usr/sbin/cupsd"
    Total files scanned: 20
    Scan time (ns): "985110892"
    Status: Active
    =====================================
    

    Om du vill förbättra prestandan för Defender för Endpoint i Linux letar du upp den med högst nummer under Total files scanned raden och lägger till ett antivirusundantag för det (utvärdera noggrant om det är säkert att utesluta). Mer information finns i Konfigurera och validera undantag för Defender för Endpoint i Linux.

    Obs!

    Programmet lagrar statistik i minnet och håller bara reda på filaktiviteten sedan den startades och realtidsskyddet aktiverades. Processer som startades före eller under perioder då realtidsskydd var inaktiverat räknas inte. Dessutom räknas endast händelser som utlöste genomsökningar.

Felsöka prestandaproblem med frekventa händelsekällor

Gäller för:

  • Prestandaproblem i filer och körbara filer som förbrukar de flesta CPU-cykler i hela filsystemet.

Frekventa händelsekällor är en funktion som gör det möjligt för kunder att identifiera vilken process eller katalog som ansvarar för hög resursförbrukning. Följ dessa steg om du vill undersöka vilken process/körbar fil som genererar mest brus.

Obs!

Dessa kommandon kräver att du har rotbehörigheter. Kontrollera att sudo kan användas.

Kontrollera först loggnivån på datorn.

mdatp health --field log_level

Om den inte är på "felsökning" måste du ändra den för en detaljerad rapport om heta filer/körbara filer.

sudo mdatp log level set --level debug
Log level configured successfully

Samla in aktuell statistik (för filer)

sudo mdatp diagnostic hot-event-sources files

Utdata ser ut ungefär så här i konsolen (det här är bara ett kodfragment av hela utdata). Här visar den första raden antalet (förekomstfrekvens) och den andra visar filsökvägen.

Total Events: 11179 Time: 12s. Throughput: 75.3333 events/sec. 
=========== Top 684 Hot Event Sources ===========
count   file path
2832    /mnt/RamDisk/postgres_data/pg_wal/0000000100000014000000A5
632     /mnt/RamDisk/postgres_data/base/635594/2601
619     /mnt/RamDisk/postgres_data/base/635597/2601
618     /mnt/RamDisk/postgres_data/base/635596/2601
618     /mnt/RamDisk/postgres_data/base/635595/2601
616     /mnt/RamDisk/postgres_data/base/635597/635610
615     /mnt/RamDisk/postgres_data/base/635596/635602
614     /mnt/RamDisk/postgres_data/base/635595/635606
514     /mnt/RamDisk/postgres_data/base/635594/635598_fsm
496     /mnt/RamDisk/postgres_data/base/635597/635610_fsm

Det här kommandot genererar en rapport om frekvent händelsekälla som sparas i din lokala mapp som kan undersökas ytterligare. Utdata ser ut så här på json-filen.

{
    "startTime": "1729535104539160",
    "endTime": "1729535117570766",
    "totalEvent": "11373",
    "eventSource": [
        {
            "authCount": "2832",
            "csId": "",
            "notifyCount": "0",
            "path": "/mnt/RamDisk/postgres_data/pg_wal/0000000100000014000000A5",
            "pidCount": "1",
            "teamId": ""
        },
        {
            "authCount": "632",
            "csId": "",
            "notifyCount": "0",
            "path": "/mnt/RamDisk/postgres_data/base/635594/2601",
            "pidCount": "1",
            "teamId": ""
        }
    ]
}

I exemplet kan vi se att filen /mnt/RamDisk/postgres_data/pg_wal/0000000100000014000000A5 genererar mest aktivitet. På samma sätt för de körbara

sudo mdatp diagnostic hot-event-sources executables

Utdata ser ut ungefär så här i konsolen.

Total Events: 47382 Time: 18s. Throughput: 157 events/sec.
=========== Top 23 Hot Event Sources ===========
count    executable path
8216    /usr/lib/postgresql/12/bin/psql
5721    /usr/lib/postgresql/12/bin/postgres (deleted)
3557    /usr/bin/bash
378     /usr/bin/clamscan
88      /usr/bin/sudo
70      /usr/bin/dash
30      /usr/sbin/zabbix_agent2
10      /usr/bin/grep
8       /usr/bin/gawk
6       /opt/microsoft/mdatp/sbin/wdavdaemonclient
4       /usr/bin/sleep

Det här är utdata som sparats i rapporten för frekvent händelsekälla i json.

{
    "startTime": "1729534260988396",
    "endTime": "1729534280026883",
    "totalEvent": "48165",
    "eventSource": [
        {
            "authCount": "8126",
            "csId": "",
            "notifyCount": "0",
            "path": "/usr/lib/postgresql/12/bin/psql",
            "pidCount": "2487",
            "teamId": ""
        },
        {
            "authCount": "5127",
            "csId": "",
            "notifyCount": "0",
            "path": "/usr/lib/postgresql/12/bin/postgres",
            "pidCount": "2144",
            "teamId": ""
        }
    ]
}

I det här exemplet efter 18-talet visar kommandot att körbara filer; /usr/lib/postgresql/12/bin/psql och /usr/lib/postgresql/12/bin/postgres genererar mest aktivitet.

När du är klar med undersökningen kan du ändra tillbaka loggnivån till "info".

sudo mdatp log level set --level info
Log level configured successfully

För att förbättra prestandan för Defender för Endpoint i Linux letar du upp sökvägen med det högsta antalet i raden antal och lägger till ett globalt processundantag (om det är en körbar fil) eller ett globalt fil-/mappundantag (om det är en fil) för den (utvärdera noggrant om det är säkert att utesluta). Mer information finns i Konfigurera och validera undantag för Defender för Endpoint i Linux.

Felsöka prestandaproblem med hjälp av eBPF-statistik

Gäller för:

  • Alla fil-/processhändelser, inklusive systemanropsbaserade prestandaproblem.

Statistikkommandot för eBPF (utökat Berkeley-paketfilter) ger insikter om den främsta händelsen/processen som genererar flest filhändelser, tillsammans med deras syscall-ID:n. När systemanrop görs från systemet genereras en stor mängd arbetsbelastningar i systemet. eBPF-statistik kan användas för att identifiera sådana problem.

Om du vill samla in aktuell statistik med hjälp av eBPF-statistik kör du:

mdatp diagnostic ebpf-statistics

Utdata visas direkt i konsolen och skulle se ut ungefär så här (det här är bara ett kodfragment av hela utdata):

Top initiator paths:
/usr/lib/postgresql/12/bin/psql : 902
/usr/bin/clamscan : 349
/usr/sbin/zabbix_agent2 : 27
/usr/lib/postgresql/12/bin/postgres : 10

Top syscall ids:
80 : 9034
57 : 8932
60 : 8929
59 : 4942
112 : 4898
90 : 179
87 : 170
119 : 32
288 : 19
41 : 15

Det här kommandot övervakar systemet i 20 sekunder och visar resultatet. Här visar den översta initierarsökvägen (postgresql/12/bin/psql) sökvägen till den process som genererade flest systemanrop.

Om du vill förbättra prestandan för Defender för Endpoint i Linux letar du upp den med högst på countTop initiator path raden och lägger till ett globalt processundantag för det (utvärdera noggrant om det är säkert att utesluta). Mer information finns i Konfigurera och validera undantag för Defender för Endpoint i Linux.

Konfigurera globala undantag för bättre prestanda

Konfigurera Microsoft Defender för Endpoint på Linux med undantag för processer eller diskplatser som bidrar till prestandaproblemen. Mer information finns i Konfigurera och validera undantag för Microsoft Defender för Endpoint på Linux. Om du fortfarande har prestandaproblem kontaktar du supporten för ytterligare instruktioner och åtgärder.

Se även

Tips

Vill du veta mer? Engage med Microsofts säkerhetscommunity i vår Tech Community: Microsoft Defender för Endpoint Tech Community.