Esiste una definizione divenuta ormai classica di Application Performance Monitoring (APM) ed è quella proposta da Gartner, che fa riferimento a uno o più componenti software che facilitano il monitoraggio delle applicazioni per soddisfare tre dimensioni funzionali principali:
Oggi, le aziende si affidano sempre più a servizi e applicazioni digitali; queste non solo consentono di generare profitto, ma sono anche fondamentali per l’efficienza operativa e sono spesso l’interfaccia esterna del brand. È un contesto complesso, nel quale i fornitori di soluzioni APM sono chiamati a espandere il loro supporto per riuscire a monitorare infrastrutture ibride e multi-cloud, processi aziendali e sistemi automatici dominati dal machine learning.
È fondamentale, dunque, che il controllo delle performance delle applicazioni e dei servizi sia affidato a piattaforme specializzate. Per tale motivo, il Magic Quadrant for Observability 2024 di Gartner (che dal 2023 include gli strumenti di APM) propone una classificazione delle soluzioni di riferimento sul mercato.
Come è noto, il Magic Quadrant è suddiviso in quattro campi all’interno dei quali vengono collocate le aziende che si caratterizzano per essere “sfidanti, leader, attori di nicchia e visionarie” rispetto alla specifica tecnologia oggetto di analisi. Una classificazione da tenere sott’occhio nel momento in cui bisogna decidere come orientarsi per scegliere un partner che offra sistemi APM adeguati al fabbisogno della propria azienda. Per fortuna, oggi, la scelta può avvenire tra diverse opzioni, visto che il mondo APM è entrato definitivamente “nell’età adulta”.
L’importanza dell’APM è sottolineata anche dalla crescita degli investimenti nel settore. Le ricerche di mercato mostrano, infatti, che nel periodo 2024-2029 la spesa globale passerà da 9,38 miliardi di dollari nel 2024 a 35,84 miliardi di dollari nel 2029, con un tasso di crescita annuo composito (CAGR) pari al 30,76%.
Un aumento che si spiega con l’evoluzione impressa dalla digital transformation alle architetture aziendali. Nate, infatti, come sistemi di monitoraggio dei livelli di servizio in un’epoca precedente all’adozione pervasiva del multi-cloud, del mobile e degli apparati IoT, oggi le soluzioni APM continuano a mantenere i medesimi compiti, ma declinati su una maggiore complessità infrastrutturale. Per garantire una experience di qualità a favore di tutti i soggetti che utilizzano il parco applicativo, siano essi interni (employee experience) o esterni (customer experience), le APM devono monitorare in tempo reale, oltre alle app, server, storage, reti e, nel caso di applicazioni custom o difficilmente monitorabili, anche i log. Per questi motivi, le funzioni principali che le piattaforme mettono a disposizione riguardano la raccolta di dati, la visualizzazione di sintesi delle informazioni significative, l’alerting selettivo e la possibilità di innescare meccanismi di remediation.
La gestione e il monitoraggio dei log, in particolare, rappresenta un valore aggiunto con cui i dati raccolti possono essere messi a disposizione per l’analisi, l’esportazione o la creazione di specifici alert. Non solo. I tool APM sono anche in grado di anticipare i potenziali problemi, avvalendosi dell’Intelligenza Artificiale e del machine learning in ottica di manutenzione predittiva. Ma la mutazione dell’APM non riguarda soltanto il versante tecnologico. È cambiato anche il suo ruolo tradizionale. Oggi, infatti, i software APM ricoprono una funzione strategica, focalizzata anche sul business e non esclusivamente, come in passato, sulle prestazioni di natura sistemistica. Per questo ciò che viene chiesto a una dashboard di Application Performance Monitoring è una visione end to end, che fondi un vantaggio competitivo rispetto alla concorrenza. Questo perché l’approccio del cliente ormai non si limita a valutare metriche come il tempo di risposta e la disponibilità dell’applicazione, ma misura anche il livello di usabilità della stessa e, quindi, l’esperienza complessiva che ne deriva in termini di produttività, incremento di customer engagement, piena soddisfazione delle attese. Combinando i dati raccolti, le piattaforme di APM riescono, infatti, a fornire metriche specifiche sul livello qualitativo dell’esperienza utente. I tool acquisiscono informazioni sulle interazioni reali degli utenti con la piattaforma, fornendo misurazioni specifiche, quali, ad esempio: il tracciamento della navigazione dell’utente (identificazione dei colli di bottiglia); le prestazioni dei servizi di terze parti; infine, le performance del front-end. A fronte di tali informazioni possono essere pianificati interventi migliorativi molto puntuali, in grado di elevare la qualità dell’interazione tra utente e servizio.
Il controllo costante del parco applicativo genera un’ottimizzazione anche nella gestione dei processi interni. Infatti, la possibilità di monitorare un servizio lungo tutta la catena, dalla user experience al codice, permette di facilitare e di velocizzare lo scambio di informazioni tra i vari livelli aziendali, contribuendo a migliorare la comunicazione tra di loro. Per ottenere questo risultato, l’analisi delle APM deve governare la varietà e la fluidità delle infrastrutture IT utilizzate, in cui convivono piattaforme on premise e cloud-based nelle sue varianti (Public, Private e Hybrid) e a cui si aggiunge un’adozione crescente di microservizi e container. Questi ultimi, fra l’altro, poiché virtualizzano solo il sistema operativo, complicano ulteriormente la scoperta del legame tra infrastruttura e misurazione delle performance applicative. Una difficoltà superabile grazie ai moderni sistemi APM che attraversano l’intera filiera applicativa, riuscendo a isolare l’eventuale criticità presa singolarmente in esame, ma senza dimenticare le sue interdipendenze.
Best practice per l’APM: un processo a 5 step
È evidente come l’implementazione di una piattaforma APM sia un’attività complessa, ed è perciò opportuno che le aziende utilizzino le Best Practice di riferimento, che consistono in un processo di 5 step:
L’utilizzo delle Best Practice consente di superare le sfide più diffuse nell’implementazione di una piattaforma APM: da un lato, la complessità insita in un ecosistema di applicazioni interdipendenti, che utilizzano risorse distribuite; dall’altro, la mole sempre crescente di dati da gestire. La strutturazione dell’APM e la disponibilità di tali informazioni consentirà alle aziende di misurare il ROI, come somma del risparmio e delle mancate perdite in rapporto al TCO – Total Cost of Ownership della piattaforma. Ci sono, infatti, diverse voci di costo che vengono abbattute, tra cui:
Un discorso a parte va fatto per la Customer Experience. Sebbene non sia facilmente quantificabile, l’aspettativa del cliente ha un peso importante. L’applicazione che presenta difficoltà di navigazione o che non risponde tempestivamente può causare l’abbandono del cliente, con un effetto negativo sull’acquisizione di nuovi clienti e sulla brand reputation.
Il tracciamento e la diagnostica si focalizzano su milioni di concatenazioni, che solo una navigazione con strumenti evoluti di analytics può esaminare. Anzi, come anticipato prima, la mole di dati richiede che l’Application Performance Monitoring disponga di un motore di machine learning così da automatizzare i processi di analisi predittiva. Grazie a tali analisi è possibile individuare quali sono gli elementi su cui intervenire per prevenire situazioni di degrado, e innescare azioni compensative. In ambito Finance, ad esempio, il Machine Learning può prevedere un picco delle operazioni di trading a fronte di un determinato periodo dell’anno o a fronte di un’operazione finanziaria collegata. Informato dal Machine Learning, l’APM può aumentare il numero di istanze del servizio di trading (scalabilità orizzontale) o aumentare le risorse elaborative dei server (scalabilità verticale). È utile sottolineare che l’analisi predittiva e il remediation automatico sono il compito specifico dei tool di AIOps in ambito IT Operations. L’integrazione tra APM e AIOps costituisce, infatti, una soluzione sinergica tra i due ambiti. Il ruolo centrale che l’APM ha il compito di svolgere oggi è quello di accorciare il tempo che intercorre tra la rilevazione di un elemento critico, che impatta negativamente sulla user experience, e porvi rimedio prima che incida sui livelli di produttività aziendale o prima che si trasformi in una causa di churn e di abbandono dell’applicazione da parte del cliente.
Il monitoraggio delle applicazioni, dunque, si colloca, oggi, all’interno di un panorama in cui spiccano tre fattori:
La scelta di una piattaforma di APM deve, perciò, privilegiare la capacità di integrarsi con altre piattaforme di monitoring già esistenti, offrendo una visione unificata e centralizzata delle prestazioni delle applicazioni, al fine di rilevare anomalie in tempo reale e di intervenire proattivamente. Necessità, questa, che diventerà sempre più importante in un futuro per il quale è già intuibile una sempre minor tolleranza per errori e disservizi.