Trage querylogboeken van een Server inschakelen en downloaden van een Azure Database for PostgreSQL - Flexible Server-exemplaar met behulp van Azure CLI
VAN TOEPASSING OP: Azure Database for PostgreSQL - Flexibele server
Met dit CLI-voorbeeldscript kunt u de logboeken voor langzame query's van één flexibele Azure Database for PostgreSQL-serverinstantie inschakelen en downloaden.
Als u geen Azure-abonnement hebt, kunt u een gratis Azure-account maken voordat u begint.
Vereisten
Gebruik de Bash-omgeving in Azure Cloud Shell. Zie quickstart voor Bash in Azure Cloud Shell voor meer informatie.
Installeer de Azure CLI, indien gewenst, om CLI-referentieopdrachten uit te voeren. Als u in Windows of macOS werkt, kunt u Azure CLI uitvoeren in een Docker-container. Zie De Azure CLI uitvoeren in een Docker-container voor meer informatie.
Als u een lokale installatie gebruikt, meldt u zich aan bij Azure CLI met behulp van de opdracht az login. Volg de stappen die worden weergegeven in de terminal, om het verificatieproces te voltooien. Raadpleeg Aanmelden bij Azure CLI voor aanvullende aanmeldingsopties.
Installeer de Azure CLI-extensie bij het eerste gebruik, wanneer u hierom wordt gevraagd. Raadpleeg Extensies gebruiken met Azure CLI voor meer informatie over extensies.
Voer az version uit om de geïnstalleerde versie en afhankelijke bibliotheken te vinden. Voer az upgrade uit om te upgraden naar de nieuwste versie.
Voorbeeldscript
Azure Cloud Shell starten
Azure Cloud Shell is een gratis interactieve shell waarmee u de stappen in dit artikel kunt uitvoeren. In deze shell zijn algemene Azure-hulpprogramma's vooraf geïnstalleerd en geconfigureerd voor gebruik met uw account.
Als u Cloud Shell wilt openen, selecteert u Proberen in de rechterbovenhoek van een codeblok. U kunt Cloud Shell ook openen in een afzonderlijk browsertabblad door naar https://shell.azure.com te gaan.
Wanneer Cloud Shell wordt geopend, controleert u of Bash is geselecteerd voor uw omgeving. Volgende sessies gebruiken Azure CLI in een Bash-omgeving, selecteer Kopiëren om de codeblokken te kopiëren, plak deze in Cloud Shell en druk op Enter om deze uit te voeren.
Aanmelden bij Azure
Cloud Shell wordt automatisch geverifieerd onder het eerste account waarmee is aangemeld. Gebruik het volgende script om u aan te melden met een ander abonnement, waarbij u subscriptionId vervangt door uw Azure-abonnements-id.
Als u geen Azure-abonnement hebt, kunt u een gratis Azure-account maken voordat u begint.
subscription="subscriptionId" # Set Azure subscription ID here
az account set -s $subscription # ...or use 'az login'
Zie Het actieve abonnement instellen of interactief aanmelden voor meer informatie.
Het script uitvoeren
# Enable and download server slow query logs of an Azure Database for PostgreSQL server
# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
resourceGroup="msdocs-postgresql-rg-$randomIdentifier"
tag="server-logs-postgresql"
server="msdocs-postgresql-server-$randomIdentifier"
sku="GP_Gen5_2"
login="azureuser"
password="Pa$$w0rD-$randomIdentifier"
configurationParameter="slow_query_log"
logValue="On"
durationStatementLog="durationStatementLog-$randomIdentifier"
logDuration="10000"
logFileList="logFileList"
echo "Using resource group $resourceGroup with login: $login, password: $password..."
# Create a resource group
echo "Creating $resourceGroup in $location..."
az group create --name $resourceGroup --location "$location" --tags $tag
# Create a PostgreSQL server in the resource group
# Name of a server maps to DNS name and is thus required to be globally unique in Azure.
echo "Creating $server in $location..."
az postgres server create --name $server --resource-group $resourceGroup --location "$location" --admin-user $login --admin-password $password --sku-name $sku
# List the configuration options for review
echo "Returning the configuration options on $server"
az postgres server configuration list --resource-group $resourceGroup --server $server
# Turn on statement level log
echo "Enable the statement level log"
az postgres server configuration set --name log_statement --resource-group $resourceGroup --server $server --value all
# Set log_min_duration_statement time to 10 sec
echo "Setting log_min_duration_statement to 10 sec"
az postgres server configuration set --name log_min_duration_statement --resource-group $resourceGroup --server $server --value 10000
# List the available log files
echo "Returning the list of available log files on $server"
az postgres server-logs list --resource-group $resourceGroup --server $server
# To download log file from Azure, direct the output of the previous comment to a text file
# "> log_files_list.txt"
# Review the text file to find the server log file name for the desired timeframe
# Substitute the <log_file_name> in the script below with your server log file name
# Creates the log file in the current command line path
# az postgres server-logs download --name <log_file_name> $resourceGroup --server $server
Opschonen van implementatie
Gebruik de volgende opdracht om de resourcegroep en alle bijbehorende resources te verwijderen met behulp van de opdracht az group delete - tenzij u deze resources voortdurend nodig hebt. Het kan even duren voordat sommige van deze resources zijn gemaakt en dat deze kunnen worden verwijderd.
az group delete --name $resourceGroup
Voorbeeldverwijzing
Dit script maakt gebruik van de opdrachten die in de volgende tabel worden weergegeven:
Command | Notes |
---|---|
az group create | Hiermee wordt een resourcegroep gemaakt waarin alle resources worden opgeslagen. |
az postgres server create | Hiermee maakt u een azure Database for PostgreSQL Flexible Server-exemplaar dat als host fungeert voor de databases. |
az postgres server configuration list | Geeft een lijst van de configuratiewaarden voor een server. |
az postgres server configuration set | Hiermee wordt de configuratie van een server bijgewerkt. |
az postgres server-logs list | Een lijst met logboekbestanden voor een server. |
az postgres server-logs download | Hiermee downloadt u logboekbestanden. |
az group delete | Hiermee verwijdert u een resourcegroep met inbegrip van alle ingesloten resources. |
Volgende stappen
- Lees de documentatie van Azure CLI voor meer informatie over de Azure CLI.
- Probeer aanvullende scripts: Azure CLI-voorbeelden voor Azure Database for PostgreSQL - Flexible Server-exemplaar
- Serverlogboeken in de Azure-portal configureren en benaderen