Snabbstart: Skapa en Python-app med Azure App Configuration

I den här snabbstarten använder du Azure App Configuration för att centralisera lagring och hantering av programinställningar med hjälp Azure App Configuration klientbiblioteket för Python.

Förutsättningar

Skapa ett App Configuration butik

  1. Om du vill skapa ett nytt konfigurations Arkiv för appen loggar du in på Azure Portal. I det övre vänstra hörnet på Start sidan väljer du skapa en resurs. I rutan Sök på Marketplace anger du app-konfiguration och väljer RETUR.

    Sök efter App Configuration

  2. Välj app-konfiguration från Sök resultaten och välj sedan skapa.

    Välj Skapa

  3. I fönstret skapa app-konfiguration anger du följande inställningar:

    Inställning Föreslaget värde Beskrivning
    Prenumeration Din prenumeration Välj den Azure-prenumeration du vill använda för att testa App Configuration. Om ditt konto bara har en prenumeration väljs den automatiskt och ingen prenumerations lista visas.
    Resursgrupp AppConfigTestResources Välj eller skapa en resurs grupp för din app Configuration Store-resurs. Den här gruppen är användbar för att organisera flera resurser som du kanske vill ta bort samtidigt genom att ta bort resurs gruppen. Mer information finns i använda resurs grupper för att hantera dina Azure-resurser.
    Resurs namn Globalt unikt namn Ange ett unikt resurs namn som ska användas för appens konfigurations Arkiv resurs. Namnet måste vara en sträng mellan 5 och 50 tecken och får bara innehålla siffror, bokstäver och - tecknet. Namnet får inte börja eller sluta med - specialtecknet.
    Plats USA, centrala Använd Plats till att ange den geografiska plats där appkonfigurationsarkivets resurs finns. För bästa prestanda skapar du resursen i samma region som andra komponenter i ditt program.
    Prisnivå Kostnadsfri Välj önskad pris nivå. Mer information finns på sidan med prissättning för app-konfiguration.
  4. Välj Granska + skapa för att validera inställningarna.

  5. Välj Skapa. Distributionen kan ta några minuter.

  6. När distributionen är klar går du till appen konfigurations resurs. Välj Inställningar > Åtkomstnycklar. Anteckna den primära skrivskyddade nyckel anslutnings strängen. Du kommer att använda den här anslutnings strängen senare för att konfigurera programmet för att kommunicera med det app-konfigurations lager som du har skapat.

  1. Välj Configuration Explorer > Create > Key-value (Skapa nyckelvärde) för att lägga till följande nyckel/värde-par:

    Tangent Värde
    TestApp:Settings:Message Data från Azure App Configuration

    Lämna Etikett och Innehållstyp tomma för tillfället.

  2. Välj Använd.

Konfigurera Python-appen

  1. I den här självstudien skapar du en ny katalog för projektet med namnet app-configuration-quickstart.

    mkdir app-configuration-quickstart
    
  2. Växla till den nyligen skapade katalogen app-configuration-quickstart.

    cd app-configuration-quickstart
    
  3. Installera Azure App Configuration klientbiblioteket med hjälp av pip install kommandot .

    pip install azure-appconfiguration
    
  4. Skapa en ny fil med app-configuration-quickstart.py i katalogen app-configuration-quickstart och lägg till följande kod:

    import os
    from azure.appconfiguration import AzureAppConfigurationClient, ConfigurationSetting
    
    try:
        print("Azure App Configuration - Python Quickstart")
        # Quickstart code goes here
    except Exception as ex:
        print('Exception:')
        print(ex)
    

Anteckning

Kodfragmenten i den här snabbstarten hjälper dig att komma igång App Configuration klientbiblioteket för Python. För ditt program bör du även överväga att hantera undantag efter dina behov. Mer information om undantagshantering finns i vår Python SDK-dokumentation.

Konfigurera App Configuration anslutningssträng

  1. Ange en miljövariabel med AZURE_APP_CONFIG_CONNECTION_STRING och ställ in den på åtkomstnyckeln för App Configuration store. Kör följande kommando på kommandoraden:

    setx AZURE_APP_CONFIG_CONNECTION_STRING "connection-string-of-your-app-configuration-store"
    

    Om du använder Windows PowerShell kör du följande kommando:

    $Env:AZURE_APP_CONFIG_CONNECTION_STRING = "connection-string-of-your-app-configuration-store"
    

    Om du använder macOS eller Linux kör du följande kommando:

    export AZURE_APP_CONFIG_CONNECTION_STRING='connection-string-of-your-app-configuration-store'
    
  2. Starta om kommandotolken så att ändringen börjar gälla. Skriv ut värdet för miljövariabeln för att verifiera att den har angetts korrekt.

Kodexempel

Exempelkodfragmenten i det här avsnittet visar hur du utför vanliga åtgärder med App Configuration klientbibliotek för Python. Lägg till dessa kodfragment i try blocket i app-configuration-quickstart.py som du skapade tidigare.

Anteckning

Det App Configuration klientbiblioteket refererar till ett nyckel/värde-objekt som ConfigurationSetting . I den här artikeln kallas därför nyckelvärdena i App Configuration för konfigurationsinställningar.

Anslut till en App Configuration butik

Följande kodfragment skapar en instans av AzureAppConfigurationClient med hjälp av anslutningssträngen som lagras i miljövariablerna.

    connection_string = os.getenv('AZURE_APP_CONFIG_CONNECTION_STRING')
    app_config_client = AzureAppConfigurationClient.from_connection_string(connection_string)

Hämta en konfigurationsinställning

Följande kodfragment hämtar en konfigurationsinställning efter key namn.

    retrieved_config_setting = app_config_client.get_configuration_setting(key='TestApp:Settings:Message')
    print("\nRetrieved configuration setting:")
    print("Key: " + retrieved_config_setting.key + ", Value: " + retrieved_config_setting.value)

Lägga till en konfigurationsinställning

Följande kodfragment skapar ConfigurationSetting ett -objekt key med fälten och value och anropar metoden add_configuration_setting . Den här metoden kastar ett undantag om du försöker lägga till en konfigurationsinställning som redan finns i ditt arkiv. Om du vill undvika det här undantaget kan set_configuration_setting-metoden användas i stället.

    config_setting = ConfigurationSetting(
        key='TestApp:Settings:NewSetting',
        value='New setting value'
    )
    added_config_setting = app_config_client.add_configuration_setting(config_setting)
    print("\nAdded configuration setting:")
    print("Key: " + added_config_setting.key + ", Value: " + added_config_setting.value)

Hämta en lista över konfigurationsinställningar

Följande kodfragment hämtar en lista över konfigurationsinställningar. Argumenten key_filter och kan anges för att filtrera label_filter nyckelvärden baserat på respektive key label . Mer information om filtrering finns i så här frågar du konfigurationsinställningar.

    filtered_settings_list = app_config_client.list_configuration_settings(key_filter="TestApp*")
    print("\nRetrieved list of configuration settings:")
    for item in filtered_settings_list:
        print("Key: " + item.key + ", Value: " + item.value)

Låsa en konfigurationsinställning

Låsstatusen för ett nyckelvärde i App Configuration betecknas av read_only -attributet för ConfigurationSetting -objektet. Om read_only är är inställningen True låst. Metoden set_read_only kan anropas med argumentet read_only=True för att låsa konfigurationsinställningen.

    locked_config_setting = app_config_client.set_read_only(added_config_setting, read_only=True)
    print("\nRead-only status for " + locked_config_setting.key + ": " + str(locked_config_setting.read_only))

Låsa upp en konfigurationsinställning

Om read_only attributet för en ConfigurationSetting är False låses inställningen upp. Metoden set_read_only kan anropas med argumentet read_only=False för att låsa upp konfigurationsinställningen.

    unlocked_config_setting = app_config_client.set_read_only(locked_config_setting, read_only=False)
    print("\nRead-only status for " + unlocked_config_setting.key + ": " + str(unlocked_config_setting.read_only))

Uppdatera en konfigurationsinställning

Metoden set_configuration_setting kan användas för att uppdatera en befintlig inställning eller skapa en ny inställning. Följande kodfragment ändrar värdet för en befintlig konfigurationsinställning.

    added_config_setting.value = "Value has been updated!"
    updated_config_setting = app_config_client.set_configuration_setting(added_config_setting)
    print("\nUpdated configuration setting:")
    print("Key: " + updated_config_setting.key + ", Value: " + updated_config_setting.value)

Ta bort en konfigurationsinställning

Följande kodfragment tar bort en konfigurationsinställning efter key namn.

    deleted_config_setting = app_config_client.delete_configuration_setting(key="TestApp:Settings:NewSetting")
    print("\nDeleted configuration setting:")
    print("Key: " + deleted_config_setting.key + ", Value: " + deleted_config_setting.value)

Kör appen

I den här snabbstarten skapade du en Python-app som använder Azure App Configuration-klientbiblioteket för att hämta en konfigurationsinställning som skapats via Azure Portal, lägga till en ny inställning, hämta en lista över befintliga inställningar, låsa och låsa upp en inställning, uppdatera en inställning och slutligen ta bort en inställning.

Nu bör din app-configuration-quickstart.py ha följande kod:

import os
from azure.appconfiguration import AzureAppConfigurationClient, ConfigurationSetting

try:
    print("Azure App Configuration - Python Quickstart")
    # Quickstart code goes here

    connection_string = os.getenv('AZURE_APP_CONFIG_CONNECTION_STRING')
    app_config_client = AzureAppConfigurationClient.from_connection_string(connection_string)

    retrieved_config_setting = app_config_client.get_configuration_setting(key='TestApp:Settings:Message')
    print("\nRetrieved configuration setting:")
    print("Key: " + retrieved_config_setting.key + ", Value: " + retrieved_config_setting.value)

    config_setting = ConfigurationSetting(
        key='TestApp:Settings:NewSetting',
        value='New setting value'
    )
    added_config_setting = app_config_client.add_configuration_setting(config_setting)
    print("\nAdded configuration setting:")
    print("Key: " + added_config_setting.key + ", Value: " + added_config_setting.value)

    filtered_settings_list = app_config_client.list_configuration_settings(key_filter="TestApp*")
    print("\nRetrieved list of configuration settings:")
    for item in filtered_settings_list:
        print("Key: " + item.key + ", Value: " + item.value)

    locked_config_setting = app_config_client.set_read_only(added_config_setting, read_only=True)
    print("\nRead-only status for " + locked_config_setting.key + ": " + str(locked_config_setting.read_only))

    unlocked_config_setting = app_config_client.set_read_only(locked_config_setting, read_only=False)
    print("\nRead-only status for " + unlocked_config_setting.key + ": " + str(unlocked_config_setting.read_only))

    added_config_setting.value = "Value has been updated!"
    updated_config_setting = app_config_client.set_configuration_setting(added_config_setting)
    print("\nUpdated configuration setting:")
    print("Key: " + updated_config_setting.key + ", Value: " + updated_config_setting.value)

    deleted_config_setting = app_config_client.delete_configuration_setting(key="TestApp:Settings:NewSetting")
    print("\nDeleted configuration setting:")
    print("Key: " + deleted_config_setting.key + ", Value: " + deleted_config_setting.value)

except Exception as ex:
    print('Exception:')
    print(ex)

I konsolfönstret navigerar du till katalogen som innehåller app-configuration-quickstart.py och kör följande python-kommando för att köra appen:

python app-configuration-quickstart.py

Du bör se följande utdata:

Azure App Configuration - Python Quickstart

Retrieved configuration setting:
Key: TestApp:Settings:Message, Value: Data from Azure App Configuration

Added configuration setting:
Key: TestApp:Settings:NewSetting, Value: New setting value

Retrieved list of configuration settings:
Key: TestApp:Settings:Message, Value: Data from Azure App Configuration
Key: TestApp:Settings:NewSetting, Value: New setting value

Read-only status for TestApp:Settings:NewSetting: True

Read-only status for TestApp:Settings:NewSetting: False

Updated configuration setting:
Key: TestApp:Settings:NewSetting, Value: Value has been updated!

Deleted configuration setting:
Key: TestApp:Settings:NewSetting, Value: Value has been updated!

Rensa resurser

Om du inte vill fortsätta använda resurserna som skapats i den här artikeln tar du bort resurs gruppen som du skapade här för att undvika avgifter.

Viktigt

Att ta bort en resursgrupp kan inte ångras. Resurs gruppen och alla resurser i den tas bort permanent. Var noga så att du inte tar bort fel resursgrupp eller resurser av misstag. Om du har skapat resurserna för den här artikeln i en resurs grupp som innehåller andra resurser som du vill behålla, tar du bort varje resurs separat från dess respektive fönster i stället för att ta bort resurs gruppen.

  1. Logga in på Azure Portaloch välj resurs grupper.
  2. I rutan Filtrera efter namn anger du namnet på din resurs grupp.
  3. I listan resultat väljer du resurs gruppens namn för att se en översikt.
  4. Välj Ta bort resursgrupp.
  5. Du blir ombedd att bekräfta borttagningen av resursgruppen. Ange namnet på resurs gruppen som ska bekräftas och välj ta bort.

Efter en liten stund tas resurs gruppen och alla dess resurser bort.

Nästa steg

I den här snabbstarten skapade du ett nytt App Configuration store och lärde dig att komma åt nyckelvärden från en Python-app.

Ytterligare kodexempel finns i: