Esercizio - Gestire le distribuzioni di app dall'ambiente di sviluppo integrato di IntelliJ
Nell'unità precedente si è appreso che Azure Explorer in Azure Toolkit for IntelliJ consente di gestire e configurare le app Web di Azure. In questo esercizio si vedrà come usare Azure Explorer per eseguire lo streaming di log dall'app Web in Servizio app di Azure con IntelliJ IDEA.
Successivamente, si modificherà 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 Tool windows (Finestre degli strumenti) dal menu View (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 selezionare Avvia log in stteraming.
I log verranno visualizzati in pochi secondi. È possibile accedere all'app Web per generare alcuni log.
Per arrestare i log in streaming, fare clic con il pulsante destro del mouse sull'app Web e quindi selezionare Arresta log in 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 selezionare 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 nuovo valore.
Nella colonna Nome della nuova proprietà, immettere il nome Ritardo.
Nella colonna per la proprietà Valore, 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 Project Explorer (Esplora progetti) fare doppio clic su index.jsp per riaprirlo.
Nella sezione
<body>
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à, che vengono esposte come variabili di ambiente per il runtime dell'app Web. Il codice visualizza la data e l'ora a intervalli di secondi definiti da Delay in base a un numero di cicli specificato in Iterations.
Nota
In questo esempio il codice viene eseguito in modo sincrono al momento della generazione dell'output. Ciò significa che possono essere necessari fino a 20 secondi per visualizzare la pagina.
Scegliere Save All (Salva tutto) dal menu File.
Nella finestra Esplora progetti, fare clic con il pulsante destro del mouse sull'app Web, selezionare Azure, quindi selezionare Eseguire la distribuzione in 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 Azure Activity Log (Log attività di Azure) attendere che la colonna dello 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 mostrano l'ora a intervalli di due secondi, seguiti dall'indirizzo IP del computer client.
Nota
Se si prova a passare al sito Web mentre è ancora in corso la pubblicazione, verrà visualizzato un errore HTTP 403. In tal 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 selezionare Mostra proprietà.
Nella finestra delle proprietà, selezionare la proprietà Ritardo, quindi 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'ora a intervalli di un secondo solo per cinque volte. Si noti che non è necessario ridistribuire l'app Web.
Importante
Eliminando l'app Web con Azure Toolkit for IntelliJ, non viene eliminato 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: