Az Azure Monitor költségei jelentősen eltérhetnek a Log Analytics-munkaterületen gyűjtött adatok mennyiségétől függően. Ezt a kötetet a munkaterületet használó megoldások és az egyes megoldások által gyűjtött adatok mennyisége befolyásolja. Ez a cikk útmutatást nyújt az összegyűjtött adatok elemzéséhez az adatbetöltési költségek szabályozásához. Segít meghatározni a vártnál magasabb használat okát. Emellett segít előrejelezni a költségeket, miközben további erőforrásokat figyel, és különböző Azure Monitor-funkciókat konfigurál.
Minden Log Analytics-munkaterület külön szolgáltatásként kerül felszámításra, és hozzájárul az Azure-előfizetés számlájához. Az adatbetöltés mennyisége a következőtől függően jelentős lehet:
Az engedélyezett elemzések és szolgáltatások és azok konfigurációja.
A figyelt erőforrások száma és típusa.
Az egyes figyelt erőforrásokból gyűjtött adatok mennyisége.
Ezen tényezők váratlan növekedése megnövelheti az adatmegőrzési díjakat. A cikk további része módszereket biztosít az ilyen helyzet észlelésére, majd az összegyűjtött adatok elemzésére a megnövekedett használat forrásának azonosításához és csökkentéséhez.
Riasztás küldése magas adatgyűjtés esetén
A váratlan számlák elkerülése érdekében proaktív értesítést kell kapnia, amikor túlzott használatot tapasztal. Az értesítés lehetővé teszi, hogy a számlázási időszak vége előtt elhárítsa a lehetséges rendellenességeket.
Az alábbi példa egy naplókeresési riasztási szabály , amely riasztást küld, ha az elmúlt 24 órában betöltött számlázható adatmennyiség nagyobb volt, mint 50 GB. Módosítsa a Riasztási logika beállítást úgy, hogy a környezetében várható használattól függően eltérő küszöbértéket használjon. A használat napi többszöri ellenőrzésének gyakoriságát is növelheti, de ez a beállítás magasabb díjat eredményez a riasztási szabályért.
Mérték: DataGB Összesítés típusa: Összeg Összesítés részletessége: 1 nap
Riasztási logika
Operátor: Nagyobb, mint Küszöbérték: 50 Az értékelés gyakorisága: 1 nap
Műveletek
Jelöljön ki vagy vegyen fel egy műveletcsoportot, amely értesíti Önt a küszöbérték túllépésének időpontjáról.
Részletek
Súlyosság
Figyelmeztetés
Riasztási szabály neve
A számlázható adatmennyiség 24 óra alatt meghaladja az 50 GB-ot.
Használatelemzés az Azure Monitorban
Kezdje el az elemzést az Azure Monitor meglévő eszközeivel. Ezek az eszközök nem igényelnek konfigurációt, és gyakran minimális erőfeszítéssel biztosítják a szükséges információkat. Ha mélyebb elemzésre van szüksége az összegyűjtött adatokban, mint a meglévő Azure Monitor-funkciók, használja az alábbi napló lekérdezéseket a Log Analyticsben.
Log Analytics-munkaterület elemzései
A Log Analytics Workspace Insights segítségével gyorsan megismerheti a munkaterületen lévő adatokat. Meghatározhatja például a következőt:
A főtáblában a legtöbb adatkötetet betöltő adattáblák.
A legfontosabb erőforrások, amelyek adatokat adnak hozzá.
Az adatbetöltés trendje.
A betöltés megoldás és táblázat szerinti bontását a Használat lapon találja. Ezek az információk segítenek gyorsan azonosítani azokat a táblákat, amelyek hozzájárulnak az adatmennyiség nagy részének létrehozásához. A lapon az adatgyűjtés időbeli trendje is látható. Megadhatja, hogy az adatgyűjtés folyamatosan növekedett-e az idő során, vagy hirtelen növekedett-e a konfigurációváltozásra válaszul.
Válassza a További lekérdezések lehetőséget az előre összeállított lekérdezésekhez, amelyek segítenek az adatminták további megértésében.
Felhasználás és becsült költségek
Az egyes munkaterületek Használat és becsült költségek lapján a megoldásdiagramonkéntiadatbetöltés az elküldött adatok teljes mennyiségét és az egyes megoldások által az előző 31 nap során küldött összegeket jeleníti meg. Ezek az információk segítenek meghatározni a trendeket, például azt, hogy egy adott megoldás növeli-e a teljes adathasználatot vagy a használatot.
Adatkötetek lekérdezése a Használati táblából
Elemezze egy adott szolgáltatás vagy megoldás által gyűjtött számlázható adatok mennyiségét. Ezek a lekérdezések a Usage táblát használják, amely a munkaterület minden táblájának használati adatait gyűjti.
Megjegyzés
A záradék TimeGenerated csak annak biztosítására vonatkozik, hogy az Azure Portal lekérdezési felülete az alapértelmezett 24 órán túlra is visszatekintsen. Ha a Használati adattípust használja, és EndTime azokat az időgyűjtőket jelöli, StartTime amelyeken az eredmények megjelennek.
Számlázható adatmennyiség típus szerint az elmúlt hónapban
Usage
| where TimeGenerated > ago(32d)
| where StartTime >= startofday(ago(31d)) and EndTime < startofday(now())
| where IsBillable == true
| summarize BillableDataGB = sum(Quantity) / 1000. by bin(StartTime, 1d), DataType
| render columnchart
Számlázható adatmennyiség megoldás szerint, és az elmúlt hónap beírása
Usage
| where TimeGenerated > ago(32d)
| where StartTime >= startofday(ago(31d)) and EndTime < startofday(now())
| where IsBillable == true
| summarize BillableDataGB = sum(Quantity) / 1000 by Solution, DataType
| sort by Solution asc, DataType asc
Adatkötet lekérdezése közvetlenül az eseményekből
A Log Analyticsbennapló lekérdezéseket is használhat, ha mélyebb elemzésre van szüksége az összegyűjtött adatokban. A Log Analytics-munkaterület minden táblája a következő szabványos oszlopokkal rendelkezik, amelyek segíthetnek a számlázható adatok elemzésében:
_IsBillable azonosítja azokat a rekordokat, amelyekért betöltési díj van. Ezzel az oszloppal kiszűrheti a nem számlázható adatokat.
_BilledSize a rekord méretét bájtban adja meg.
Számlázható adatmennyiség adott eseményekhez
Ha azt tapasztalja, hogy egy adott adattípus túl sok adatot gyűjt, érdemes lehet elemezni a táblában lévő adatokat a növekvő rekordok meghatározásához. Ez a példa szűri a Event tábla adott eseményazonosítóit, majd megadja az egyes azonosítók számát. Ezt a lekérdezést más táblák oszlopai alapján módosíthatja.
Event
| where TimeGenerated > startofday(ago(31d)) and TimeGenerated < startofday(now())
| where EventID == 5145 or EventID == 5156
| where _IsBillable == true
| summarize count(), Bytes=sum(_BilledSize) by EventID, bin(TimeGenerated, 1d)
Adatmennyiség Azure-erőforrás, erőforráscsoport vagy előfizetés szerint
Számlázható adatmennyiség előfizetés szerint az utolsó teljes napra
find where TimeGenerated between(startofday(ago(1d))..startofday(now())) project _BilledSize, _IsBillable, _SubscriptionId
| where _IsBillable == true
| summarize BillableDataBytes = sum(_BilledSize) by _SubscriptionId
| sort by BillableDataBytes nulls last
Tipp.
A nagy adatkötetekkel rendelkező munkaterületek esetében előfordulhat, hogy a nagy mennyiségű nyers adatot lekérdező lekérdezéseket egyetlen napra kell korlátozni. A trendek időbeli nyomon követéséhez érdemes lehet beállítani egy Power BI-jelentést, és növekményes frissítéssel naponta egyszer összegyűjteni az erőforrásonkénti adatmennyiségeket.
Adatkötet számítógép szerint
Elemezheti a virtuális gépekről vagy virtuális gépek készletéből gyűjtött számlázható adatok mennyiségét. A Használati tábla nem rendelkezik a konkrét virtuális gépek adatköteteinek megjelenítéséhez szükséges részletességgel, ezért ezek a lekérdezések a kereső operátor használatával keresnek minden olyan táblában, amely tartalmazza a számítógép nevét. A használat típusa nincs megadva, mert ez a lekérdezés csak az adattrendek elemzésére használható.
Számlázható adatmennyiség számítógépenként az utolsó teljes napra
find where TimeGenerated between(startofday(ago(1d))..startofday(now())) project _BilledSize, _IsBillable, Computer, Type
| where _IsBillable == true and Type != "Usage"
| extend computerName = tolower(tostring(split(Computer, '.')[0]))
| summarize BillableDataBytes = sum(_BilledSize) by computerName
| sort by BillableDataBytes desc nulls last
Számlázható események száma számítógépenként az utolsó teljes napra vonatkozóan
find where TimeGenerated between(startofday(ago(1d))..startofday(now())) project _IsBillable, Computer, Type
| where _IsBillable == true and Type != "Usage"
| extend computerName = tolower(tostring(split(Computer, '.')[0]))
| summarize eventCount = count() by computerName
| sort by eventCount desc nulls last
Gyakori adattípusok lekérdezése
Ha azt tapasztalja, hogy egy adott adattípushoz túl sok számlázható adat áll rendelkezésére, előfordulhat, hogy egy lekérdezést kell végrehajtania az adott táblában lévő adatok elemzéséhez. A következő lekérdezések néhány gyakori adattípushoz nyújtanak példákat:
Biztonsági megoldás
SecurityEvent
| summarize AggregatedValue = count() by EventID
| order by AggregatedValue desc nulls last
Naplókezelési megoldás
Usage
| where Solution == "LogManagement" and iff(isnotnull(toint(IsBillable)), IsBillable == true, IsBillable == "true") == true
| summarize AggregatedValue = count() by DataType
| order by AggregatedValue desc nulls last
Perf adattípus
Perf
| summarize AggregatedValue = count() by CounterPath
Perf
| summarize AggregatedValue = count() by CounterName
Esemény adattípus
Event
| summarize AggregatedValue = count() by EventID
Event
| summarize AggregatedValue = count() by EventLog, EventLevelName
Rendszernapló adattípus
Syslog
| summarize AggregatedValue = count() by Facility, SeverityLevel
Syslog
| summarize AggregatedValue = count() by ProcessName
AzureDiagnostics adattípus
AzureDiagnostics
| summarize AggregatedValue = count() by ResourceProvider, ResourceId
Application Insights-adatok
Az Application Insightshoz gyűjtött adatok mennyiségének vizsgálatára két módszer létezik, attól függően, hogy klasszikus vagy munkaterület-alapú alkalmazással rendelkezik-e. Használja az _BilledSize egyes betöltési eseményeken elérhető tulajdonságot a munkaterület-alapú és a klasszikus erőforrásokhoz is. A systemEvents táblában összesített információkat is használhat a klasszikus erőforrásokhoz.
Megjegyzés
Az Application Insights-táblák lekérdezései, kivéve SystemEvents, munkaterület-alapú és klasszikus Application Insights-erőforrások esetében is működnek. A visszamenőleges kompatibilitás lehetővé teszi, hogy továbbra is régi táblaneveket használjon. Munkaterület-alapú erőforrás esetén nyissa meg a Naplókat a Log Analytics-munkaterület menüjében. Klasszikus erőforrás esetén nyissa meg a Naplókat az Application Insights menüben.
A függőségi műveletek az elmúlt 30 nap legtöbb adatkötetét generálják (munkaterület-alapú vagy klasszikus)
dependencies
| where timestamp >= startofday(ago(30d))
| summarize sum(_BilledSize) by operation_Name
| render barchart
Napi adatmennyiség típus szerint ehhez az Application Insights-erőforráshoz az elmúlt 7 napban (csak klasszikus)
systemEvents
| where timestamp >= startofday(ago(7d)) and timestamp < startofday(now())
| where type == "Billing"
| extend BillingTelemetryType = tostring(dimensions["BillingTelemetryType"])
| extend BillingTelemetrySizeInBytes = todouble(measurements["BillingTelemetrySize"])
| summarize sum(BillingTelemetrySizeInBytes) by BillingTelemetryType, bin(timestamp, 1d)
A munkaterület-alapú Application Insights-erőforrások adatmennyiség-trendjeinek megtekintéséhez használjon egy lekérdezést, amely tartalmazza az Összes Application Insights-táblát. Az alábbi lekérdezések a munkaterület-alapú erőforrásokra jellemző táblaneveket használják.
Napi adatmennyiség típus szerint a munkaterület összes Application Insights-erőforrásához 7 napig
union AppAvailabilityResults,
AppBrowserTimings,
AppDependencies,
AppExceptions,
AppEvents,
AppMetrics,
AppPageViews,
AppPerformanceCounters,
AppRequests,
AppSystemEvents,
AppTraces
| where TimeGenerated >= startofday(ago(7d)) and TimeGenerated < startofday(now())
| summarize sum(_BilledSize) by _ResourceId, bin(TimeGenerated, 1d)
Ha csak egyetlen Application Insights-erőforrás adatköteti trendjeit szeretné áttekinteni, adja hozzá a következő sort az előző lekérdezéshez summarize :
| where _ResourceId contains "<myAppInsightsResourceName>"
Tipp.
A nagy adatkötetekkel rendelkező munkaterületek esetében előfordulhat, hogy a nagy mennyiségű nyers adatot lekérdező lekérdezéseket egyetlen napra kell korlátozni. A trendek időbeli nyomon követéséhez érdemes lehet beállítani egy Power BI-jelentést, és növekményes frissítéssel naponta egyszer összegyűjteni az erőforrásonkénti adatmennyiségeket.
Az adatokat küldő csomópontok ismertetése
Ha nem rendelkezik túlzott adatokkal egy adott forrásból, előfordulhat, hogy túl sok ügynök küld adatokat.
Azon ügynökcsomópontok száma, amelyek az elmúlt hónapban naponta szívverést küldenek
Heartbeat
| where TimeGenerated > startofday(ago(31d))
| summarize nodes = dcount(Computer) by bin(TimeGenerated, 1d)
| render timechart
Az egyes csomópontok által az elmúlt 24 órában küldött adatmennyiség
find where TimeGenerated > ago(24h) project _BilledSize, Computer
| extend computerName = tolower(tostring(split(Computer, '.')[0]))
| where computerName != ""
| summarize TotalVolumeBytes=sum(_BilledSize) by computerName
Az örökölt csomópontonkénti tarifacsomag által számlázott csomópontok
Az örökölt csomópontonkénti tarifacsomag óránkénti részletességgel számlálja a csomópontokat. Azokat a csomópontokat sem számolja, amelyek csak biztonsági adattípusokat küldenek. A csomópontokként számlázott számítógépek listájának lekéréséhez, ha a munkaterület az örökölt csomópontonkénti tarifacsomagban található, keresse meg azokat a csomópontokat, amelyek számlázott adattípusokat küldenek, mert egyes adattípusok ingyenesek. Ebben az esetben használja a teljes tartománynév bal szélső mezőjét.
Az alábbi lekérdezések az óránként számlázott adatokat tartalmazó számítógépek számát adja vissza. A számlán szereplő egységek száma csomóponti hónapokban van, amelyet a lekérdezés jelöl billableNodeMonthsPerDay . Ha a munkaterületen telepítve van az Update Management megoldás, adja hozzá az Update and UpdateSummary adattípusokat a where záradékban szereplő listához.
find where TimeGenerated >= startofday(ago(7d)) and TimeGenerated < startofday(now()) project Computer, _IsBillable, Type, TimeGenerated
| where Type !in ("SecurityAlert", "SecurityBaseline", "SecurityBaselineSummary", "SecurityDetection", "SecurityEvent", "WindowsFirewall", "MaliciousIPCommunication", "LinuxAuditLog", "SysmonEvent", "ProtectionStatus", "WindowsEvent")
| extend computerName = tolower(tostring(split(Computer, '.')[0]))
| where computerName != ""
| where _IsBillable == true
| summarize billableNodesPerHour=dcount(computerName) by bin(TimeGenerated, 1h)
| summarize billableNodesPerDay = sum(billableNodesPerHour)/24., billableNodeMonthsPerDay = sum(billableNodesPerHour)/24./31. by day=bin(TimeGenerated, 1d)
| sort by day asc
Megjegyzés
Az előző lekérdezésben nem jelenik meg bizonyos összetettség a tényleges számlázási algoritmusban a megoldáscélzás használatakor.
Későn érkező adatok
Ha a rekordokkal Usage jelentett magas adatbetöltést észleli, de nem figyeli meg ugyanazokat az eredményeket, amelyek közvetlenül az adattípuson vannak összegezve _BilledSize , előfordulhat, hogy késői adatokkal rendelkezik. Ez a helyzet akkor fordul elő, ha az adatok régi időbélyegekkel vannak betöltve.
Előfordulhat például, hogy egy ügynök csatlakozási problémát tapasztal, és újracsatlakozáskor halmozott adatokat küld. Vagy előfordulhat, hogy egy gazdagépnek helytelen az ideje. Bármelyik példa látszólagos eltérést eredményezhet a Használati adattípus által jelentett betöltési adatok és a TimeGenerated által megadott egy adott napra _BilledSize összegző lekérdezés között, amely az esemény létrejöttének időbélyege.
A késedelmes adatproblémák diagnosztizálásához használja a _TimeReceived oszlopot és a TimeGenerated oszlopot . A _TimeReceived tulajdonság az az idő, amikor a rekordot az Azure Monitor betöltési pontja fogadta az Azure-felhőben.
Az alábbi példa a W3CIISLog-adatok 2021. május 2-i nagy mennyiségű adatmennyiségére válaszul jelenik meg, hogy azonosítsa a betöltött adatok időbélyegeit. Az where TimeGenerated > datetime(1970-01-01) utasítás tartalmazza a Log Analytics felhasználói felületének nyomát az összes adat áttekintéséhez.
W3CIISLog
| where TimeGenerated > datetime(1970-01-01)
| where _TimeReceived >= datetime(2021-05-02) and _TimeReceived < datetime(2021-05-03)
| where _IsBillable == true
| summarize BillableDataMB = sum(_BilledSize)/1.E6 by bin(TimeGenerated, 1d)
| sort by TimeGenerated asc
Következő lépések
A díjak csökkentéséhez tekintse meg az Azure Monitor Naplók díjszabásának részleteit a Log Analytics-munkaterületen lévő adatok díjainak kiszámításáról, valamint a díjak csökkentésére szolgáló különböző konfigurációs lehetőségekről.
Az Azure Monitor ajánlott eljárásai – A költségek minimalizálása érdekében tekintse meg az Azure Monitor konfigurálásával és kezelésével kapcsolatos ajánlott eljárásokat.
Napló lekérdezéseket írhat, hogy betekintést nyerjen vállalkozásába, informatikai műveleteibe és teljesítményébe. A Kusto lekérdezésnyelv (KQL) használatával kinyerheti a naplóadatokat az Azure Monitor Log Analyticsben.