Cvičení – protokolování

Dokončeno

V tomto cvičení se podíváme na cvičení pro zobrazení protokolů ukázkové aplikace.

Cvičení streamování protokolů

Protokol tail

V existujícím okně Azure Cloud Shellu zobrazte protokol instance aplikace pomocí následujícího příkazu:

az spring app logs --name customers-service

Důležité

Pokud jste zavřeli původní okno Azure Cloud Shellu nebo chcete spustit příkazy v místním vývojovém prostředí, musíte zadat skupinu prostředků a název služby Azure Spring Apps:

az spring app logs --name customers-service --resource-group <resource group name> --service <service >instance name>

Tento příkaz vrátí protokoly podobné následujícímu:

...
2021-04-23 09:13:59.516  INFO [customers-service,,,] 1 --- [           main] o.s.s.p.c.CustomersServiceApplication    : Started CustomersServiceApplication in 48.032 seconds (JVM running for 79.933)
2021-04-23 09:14:05.385  INFO [customers-service,,,] 1 --- [nio-1025-exec-2] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring DispatcherServlet 'dispatcherServlet'
2021-04-23 09:14:05.385  INFO [customers-service,,,] 1 --- [nio-1025-exec-2] o.s.web.servlet.DispatcherServlet        : Initializing Servlet 'dispatcherServlet'
2021-04-23 09:14:05.410  INFO [customers-service,,,] 1 --- [nio-1025-exec-2] o.s.web.servlet.DispatcherServlet        : Completed initialization in 25 ms
...

Průběžné streamování nových protokolů

Ve výchozím nastavení az spring app logs vytiskne do konzoly aplikace pouze existující protokoly streamované do konzoly aplikace a pak se ukončí. Pokud chcete streamovat nové protokoly, přidejte -f (--follow):

az spring app logs --name customers-service -f

Cvičení s chybami a upozorněními

Dále vytvoříme chybu, která zobrazí hodnotu toho, jak můžete rychle ladit a najít její původní příčinu.

  1. Otevřete customers-service a postupujte podle protokolů:

    az spring app logs --name customers-service -f
    
  2. Dále ve webovém prohlížeči otevřete nové okno a aktivujte upozornění pomocí následujícího příkazu (nahraďte "<spring-apps-name>" názvem vaší instance spring apps):

    https://<spring-apps-name>-api-gateway.azuremicroservices.io/api/customer/owners/George
    
  3. Přístup k předchozí adrese URL aktivuje upozornění, protože proměnná "George" se nedá přetypovat na číslo, které bude hledat zákazníka. Mělo by se zobrazit upozornění podobné následujícímu:

    Snímek obrazovky Azure Cloud Shellu s upozorněním protokolu

  4. Pokud chcete toto upozornění vyřešit, přejděte ve webovém prohlížeči na následující adresu URL a vyhledejte zákazníka pomocí ID zákazníka (nezapomeňte nahradit "<spring-apps-name>" názvem vaší instance spring apps):

    https://<spring-apps-name>-api-gateway.azuremicroservices.io/api/customer/owners/1