Sdílet prostřednictvím


Protokoly v Azure Cosmos DB for PostgreSQL

Důležité

Azure Cosmos DB for PostgreSQL se už pro nové projekty nepodporuje. Tuto službu nepoužívejte pro nové projekty. Místo toho použijte jednu z těchto dvou služeb:

  • Azure Cosmos DB for NoSQL můžete použít pro distribuované databázové řešení navržené pro vysoce škálovatelné scénáře s 99,999% smlouvou o úrovni služeb (SLA), okamžitým automatickým škálováním a automatickým převzetím služeb při selhání napříč několika oblastmi.

  • Použijte funkci Elastic Clusters služby Azure Database for PostgreSQL pro horizontálně dělené PostgreSQL pomocí opensourcového rozšíření Citus.

Protokoly databázového serveru PostgreSQL jsou k dispozici pro každý uzel clusteru. Protokoly můžete odesílat na server úložiště nebo do analytické služby. Pomocí protokolů je možné identifikovat a opravovat chyby konfigurace a neoptimální výkon a řešit související potíže.

Zachytávání protokolů

Pokud chcete získat přístup k protokolům PostgreSQL pro koordinační nebo pracovní uzel, musíte povolit nastavení diagnostiky protokolů serveru PostgreSQL. Na stránce vašeho clusteru na webu Azure Portal vyberte nastavení diagnostiky v nabídce vlevo a pak vyberte Přidat nastavení diagnostiky.

Snímek obrazovky, který ukazuje možnost přidání diagnostického nastavení.

Zadejte název nového nastavení diagnostiky, zaškrtněte políčko Protokoly serveru PostgreSQL a zaškrtněte políčko Odeslat do pracovního prostoru služby Log Analytics. Pak vyberte Uložit.

Snímek obrazovky znázorňující nastavení diagnostiky

Zobrazení protokolů

K zobrazení a filtrování protokolů se používají dotazy Kusto. Na stránce vašeho clusteru na webu Azure Portal v levé nabídce vyberte Protokoly. Zavřete úvodní obrazovku a obrazovku pro výběr dotazu.

Snímek obrazovky znázorňující zavření úvodní obrazovky výběru dotazu

Do vstupního pole dotazu vložte následující dotaz a pak vyberte Spustit.

AzureDiagnostics
| project TimeGenerated, Message, errorLevel_s, LogicalServerName_s

Snímek obrazovky znázorňující vstupní pole dotazu

Předchozí dotaz uvádí zprávy protokolu ze všech uzlů spolu se závažností a časovým razítkem. Můžete přidat where klauzule pro filtrování výsledků. Pokud například chcete zobrazit pouze chyby z koordinačního uzlu, vyfiltrujte úroveň chyb a název serveru, jako je v následujícím dotazu. Nahraďte název serveru názvem vašeho serveru.

AzureDiagnostics
| project TimeGenerated, Message, errorLevel_s, LogicalServerName_s
| where LogicalServerName_s == 'example-cluster-c'
| where errorLevel_s == 'ERROR'

Název koordinačního uzlu má příponu -c a pracovní uzly jsou pojmenovány příponou -w0, -w1atd.

Protokoly Azure je možné filtrovat různými způsoby. Tady je postup, jak najít protokoly za poslední den, jejichž zprávy odpovídají regulárnímu výrazu.

AzureDiagnostics
| where TimeGenerated > ago(24h)
| order by TimeGenerated desc
| where Message matches regex ".*error.*"

Další kroky