← Hyperdrive (Postgres & MySQL) / hyperdrive / observability
Metriky a analytika
Hyperdrive poskytuje analytiku, díky které můžete sledovat objem dotazů, latenci dotazů, poměr úspěšných zásahů do mezipaměti a metriky fondu připojení pro každou konfiguraci Hyperdrive ve vašem účtu.
Metriky
Hyperdrive v současnosti exportuje metriky prostřednictvím hyperdriveQueriesAdaptiveGroups a hyperdrivePoolSizesAdaptiveGroups datové sady GraphQL.
Metriky dotazů
hyperdriveQueriesAdaptiveGroups datová sada obsahuje následující metriky:
| Metrika | Název pole GraphQL | Popis |
|---|---|---|
| Dotazy | count |
Počet dotazů odeslaných na váš Hyperdrive za dané časové období. |
| Cache Status | cacheStatus |
Zda byl dotaz uložen do mezipaměti. Může nabývat jedné z hodnot disabled, hit, miss, uncacheable, multiplestatements, notaquery, oversizedquery, oversizedresult, parseerror, transaction, a volatile. |
| Bajty dotazů | queryBytes |
Velikost vašich dotazů v bajtech. |
| Result Bytes | resultBytes |
Velikost vašeho dotazu výsledky, v bajtech. |
| Latence připojení | connectionLatency |
Čas (v milisekundách) potřebný k navázání nových připojení z Hyperdrive k vaší databázi, měřený z fondu (fondů) připojení Hyperdrive. |
| Latence dotazů | queryLatency |
Čas (v milisekundách) potřebný k dotazování vaší databáze a získání výsledků, měřený z fondu (fondů) připojení Hyperdrive. |
| Stav události | eventStatus |
Zda dotaz proběhl úspěšně (complete) nebo neúspěšné (error). |
volatile stav mezipaměti znamená, že dotaz obsahuje funkci PostgreSQL zařazenou jako STABLE nebo VOLATILE (například NOW(), RANDOM()). Viz Ukládání dotazů do mezipaměti podrobnosti o tom, které funkce ovlivňují možnost ukládání do mezipaměti.
Metriky velikosti fondu
hyperdrivePoolSizesAdaptiveGroups datová sada obsahuje následující metriky fondu připojení:
| Metrika | Název pole GraphQL | Popis |
|---|---|---|
| Avg. open connections | avg.currentPoolSize |
Průměrný počet aktuálně otevřených připojení ve fondu. |
| Avg. available slots | avg.availablePoolSlots |
Průměrný počet připojení ve fondu dostupných k použití. |
| Avg. waiting clients | avg.waitingClients |
Průměrný počet klientů čekajících na volné připojení z fondu. |
| Maximální velikost fondu | max.maxPoolSize |
Nakonfigurovaná maximální velikost fondu připojení. |
| Nejvyšší počet otevřených připojení | max.currentPoolSize |
Nejvyšší počet otevřených připojení ve fondu. |
| Nejvyšší počet čekajících klientů | max.waitingClients |
Nejvyšší počet klientů čekajících na volné připojení z fondu. |
Soupeření o připojení se projevuje jako nárůst počtu čekajících klientů nebo jako situace, kdy se počet otevřených připojení trvale blíží maximální velikosti fondu. Pokud se vaše otevřená připojení pravidelně blíží tomuto limitu, zvažte zvýšení limitu připojení Hyperdrive.
Metriky lze dotazovat (a jsou uchovávány) po dobu posledních 31 dnů.
Zobrazit metriky v dashboardu
Analytika Hyperdrive pro jednotlivé databáze je k dispozici v Cloudflare dashboardu. Aktuální a historické metriky konfigurace Hyperdrive zobrazíte takto:
-
V dashboardu Cloudflare přejděte na Hyperdrive stránce.
Přejděte na Hyperdrive ↗ -
Vyberte existující konfiguraci Hyperdrive.
-
Vyberte Metriky kartě.
Volitelně můžete vybrat časové okno pro dotaz. Výchozí hodnota je posledních 24 hodin.
Dashboard obsahuje Připojení ve fondu graf, který zobrazuje čekající připojení, otevřená připojení a maximální velikost poolu. Pomocí výběru lokality můžete filtrovat podle konkrétních lokalit Cloudflare.
Dotazování přes GraphQL API
Analytiku svých konfigurací Hyperdrive můžete programově dotazovat prostřednictvím GraphQL Analytics API. Toto API dotazuje stejné datové sady jako dashboard Cloudflare a podporuje GraphQL introspekce.
Datové sady GraphQL služby Hyperdrive vyžadují accountTag filtr s ID vašeho účtu Cloudflare. Hyperdrive zpřístupňuje hyperdriveQueriesAdaptiveGroups a hyperdrivePoolSizesAdaptiveGroups datových sad.
Psaní dotazů GraphQL
Příklady, jak prozkoumat metriky Hyperdrive.
Získejte počet dotazů zpracovaných prostřednictvím vaší konfigurace Hyperdrive podle stavu mezipaměti
query HyperdriveQueries(
$accountTag: string!
$configId: string!
$datetimeStart: Time!
$datetimeEnd: Time!
) {
viewer {
accounts(filter: { accountTag: $accountTag }) {
hyperdriveQueriesAdaptiveGroups(
limit: 10000
filter: {
configId: $configId
datetime_geq: $datetimeStart
datetime_leq: $datetimeEnd
}
) {
count
dimensions {
cacheStatus
}
}
}
}
}Zjištění průměrné latence dotazů a připojení u dotazů zpracovaných prostřednictvím vaší konfigurace Hyperdrive za dané časové období, s výjimkou dotazů, které selhaly kvůli chybě
query AverageHyperdriveLatencies(
$accountTag: string!
$configId: string!
$datetimeStart: Time!
$datetimeEnd: Time!
) {
viewer {
accounts(filter: { accountTag: $accountTag }) {
hyperdriveQueriesAdaptiveGroups(
limit: 10000
filter: {
configId: $configId
eventStatus: "complete"
datetime_geq: $datetimeStart
datetime_leq: $datetimeEnd
}
) {
avg {
connectionLatency
queryLatency
}
}
}
}
}Získejte celkový objem bajtů dotazů a výsledků procházejících vaší konfigurací Hyperdrive
query HyperdriveQueryAndResultBytesForSuccessfulQueries(
$accountTag: string!
$configId: string!
$datetimeStart: Date!
$datetimeEnd: Date!
) {
viewer {
accounts(filter: { accountTag: $accountTag }) {
hyperdriveQueriesAdaptiveGroups(
limit: 10000
filter: {
configId: $configId
datetime_geq: $datetimeStart
datetime_leq: $datetimeEnd
}
) {
sum {
queryBytes
resultBytes
}
}
}
}
}Získejte metriky velikosti fondu připojení pro vaši konfiguraci Hyperdrive
query HyperdrivePoolSizes(
$accountTag: string!
$configId: string!
$datetimeStart: Time!
$datetimeEnd: Time!
) {
viewer {
accounts(filter: { accountTag: $accountTag }) {
hyperdrivePoolSizesAdaptiveGroups(
limit: 10000
filter: {
configId: $configId
datetime_geq: $datetimeStart
datetime_leq: $datetimeEnd
}
) {
avg {
currentPoolSize
availablePoolSlots
waitingClients
}
max {
maxPoolSize
currentPoolSize
waitingClients
}
dimensions {
coloCode
}
}
}
}
}