Esercizio - Gestire le distribuzioni di app dall'IDE di IntelliJ
Nell'unità precedente si è appreso che Azure Explorer in Azure Toolkit for IntelliJ consente di gestire e configurare app Web di Azure. In questo esercizio si vedrà come usare Azure Explorer per trasmettere i log dall'app Web nel servizio app di Azure in IntelliJ IDEA.
Si modificherà quindi l'app Web usando Azure Explorer per aggiungere una coppia di proprietà alla configurazione. Si modificherà l'app Web per leggere il valore di queste proprietà e usarle nella logica dell'app Web. Si ridistribuirà quindi l'app Web e si verificherà che funzioni come previsto.
Monitorare l'app con lo streaming di log
In IntelliJ IDEA scegliere Finestre degli strumenti dal menu Visualizza e quindi Selezionare Azure Explorer.
Nella finestra Azure Explorer espandere App Web, fare clic con il pulsante destro del mouse sull'app Web e quindi scegliere Avvia streaming log.

Verranno visualizzati i log in pochi secondi. È possibile accedere all'app Web per generare alcuni log.
Per interrompere il flusso dei log, fare clic con il pulsante destro del mouse sull'app Web e scegliere Arresta log di streaming.
Aggiungere le proprietà di configurazione all'app Web
Nella finestra Azure Explorer fare clic con il pulsante destro del mouse sull'app Web e quindi scegliere Mostra proprietà. Verrà visualizzata la finestra delle proprietà per l'app Web:

Nella finestra delle proprietà selezionare l'icona Aggiungi per aggiungere una nuova chiave di proprietà e un valore.
Nella colonna Nome della nuova proprietà immettere il nome Ritardo.
Nella colonna Valore per la proprietà digitare il valore 2, quindi premere INVIO.
Nella finestra delle proprietà selezionare di nuovo l'icona Aggiungi .
Aggiungere un'altra proprietà denominata Iterations, con il valore 10.

Seleziona Salva.
Modificare l'app Web per usare le proprietà
Nella finestra Esplora progetti fare doppio clic sul index.jsp per riaprirlo.
<body>Nella sezione del codice per la pagina Web aggiornare il codice come illustrato di seguito:<body> <%! int delayms = Integer.valueOf(System.getenv("Delay")) * 1000; int iterations = Integer.valueOf(System.getenv("Iterations")); DateFormat fmt = new SimpleDateFormat("dd/MM/yy HH:mm:ss"); %> <% for (int i = 0; i < iterations; i++) { Thread.sleep(delayms); %> <p>Today's date is <%= fmt.format(new Date()) %></p> <% } %> <p>Your IP address is <%= request.getRemoteAddr() %></p> </body>Questo codice legge i valori di entrambe le proprietà, esposte come variabili di ambiente per il runtime dell'app Web. Il codice visualizza la data e l'ora a intervalli di Delay secondi, ripetendo Iterations volte.
Annotazioni
In questo esempio il codice viene eseguito in modo sincrono al momento della generazione dell'output. Ciò significa che la visualizzazione della pagina può richiedere fino a 20 secondi.
Scegliere Salva tutto dal menu File.
Nella finestra Esplora progetti fare clic con il pulsante destro del mouse sull'app Web, selezionare Azure, quindi selezionare Distribuisci in App Web di Azure.
Nella finestra Distribuisci app Web accettare le impostazioni predefinite e quindi selezionare Esegui. Questa azione sovrascrive l'app Web esistente con la nuova versione.
Nella finestra Log attività di Azure attendere che la colonna di stato indichi che l'app Web è stata distribuita correttamente.
Selezionare il collegamento Pubblicato nella finestra Log attività di Azure. Verrà visualizzata una nuova finestra del browser. Dopo 20 secondi, verranno visualizzati i messaggi che visualizzano l'ora a intervalli di due secondi, seguiti dall'indirizzo IP del computer client.
Annotazioni
Se si tenta di passare al sito Web mentre è ancora in fase di pubblicazione, verrà visualizzato un errore HTTP 403. In questo caso, attendere alcuni secondi e aggiornare il Web browser.
Lasciare aperta la finestra del browser e tornare a IntelliJ IDEA.
Nella finestra Azure Explorer fare clic con il pulsante destro del mouse sull'app Web e quindi scegliere Mostra proprietà.
Nella finestra delle proprietà selezionare la proprietà Delay , fare doppio clic nel campo Valore per modificarla. Modificare il valore impostandolo su 1.
Selezionare la proprietà Iterazioni e impostare il valore su 5.
Seleziona Salva.
Tornare al Web browser e aggiornare la visualizzazione. Questa volta, la pagina visualizzerà l'orario a intervalli di un secondo, ripetuti solo cinque volte. Si noti che non è necessario ridistribuire l'app Web.
Importante
L'eliminazione dell'app Web con Azure Toolkit for IntelliJ non elimina il piano di servizio app, ma è possibile rimuovere il piano usando il portale di Azure. A tale scopo, passare al gruppo di risorse appropriato, selezionare il piano di servizio app e quindi fare clic su Elimina, come illustrato nell'immagine seguente:
