• IT
betterdocs-cat-icon 1-svg

Qualcosa è andato storto?

Condividi con noi la tua opinione per migliorare la nostra documentazione.

    Getting Started

    • Introduzione Instant Developer Cloud
    • Composizione della piattaforma
    • Struttura dei progetti
    • La programmazione relazionale
    • Apprendere l’uso di Instant Developer Cloud

    Struttura di un'applicazione

    • Introduzione (applicazione e sessione)
    • Le videate
    • Classi e librerie
    • Risorse e CSS
    • I pacchetti
    • Programmazione asincrona

    Struttura del database

    • Introduzione (struttura del database)
    • Definizione degli schemi relazionali
    • Scrittura di query ed esecuzione di comandi
    • Gestione dei database nel cloud
    • Il Cloud Connector

    Document Orientation

    • Introduzione Document Orientation
    • Definire Documenti e Collection
    • Utilizzo dei documenti
    • Estensione dei documenti

    Datamap

    • Introduzione Datamap
    • Creazione di liste di documenti
    • Modifica dei documenti con videate di dettaglio
    • Datamap innestate e ricorsive

    IonicUI

    • Introduzione IonicUi
    • Le pagine IonicUI
    • Definire il contenuto delle pagine
    • Il page controller
    • Il metodo app.popup
    • Videate come elementi visuali
    • Personalizzazione di IonicUI
    • Configurazione dei ruoli e degli accessi

    Pannelli e Griglie

    • Introduzione (Pannelli e Griglie)
    • Anatomia di un pannello
    • I pannelli a runtime

    Web API e file system

    • Introduzione Web API
    • Il file system
    • Consumare Web API
    • Esporre Web API
    • Web API in formato OData
    • Utilizzare Web API Instant Developer Foundation
    • Web API in formato OpenAPI

    Sincronizzazione

    • Introduzione sistema di sincronizzazione
    • Scambio di messaggi in tempo reale
    • Document Orientation Remota
    • Sincronizzazione del database offline

    Debugging e Test

    • Introduzione Debugging e Test
    • Strumenti e tecniche di debug
    • Test automatico delle applicazioni

    Traduzioni

    • Introduzione (traduzioni)
    • Processo di traduzione
    • Funzionamento del framework di localizzazione
    • Localizzazione di numeri e date

    Integrazioni di componenti esterni

    • Introduzione (integrazioni di componenti esterni)
    • Integrazione di componenti JavaScript
    • Integrazione di librerie di back-end
    • Integrazione di un plugin Cordova

    Launcher e Pubblicazione

    • Introduzione Launcher
    • I plugin nativi
    • Test delle applicazioni nei launcher
    • Pubblicazione sugli store
    • Configurazioni per gli store
    • Fase di build e di invio
    • Gestione dell’applicazione

    Analitiche e Feedback

    • Introduzione Analytics e Feedback
    • Installazione ed uso di Analytics
    • Raccolta dei feedback degli utenti

    Server di Produzione

    • Introduzione server di produzione
    • I server di Instant Developer Cloud
    • I server My Cloud
    • I server Self Managed
    • Tabella comparativa

    Cloud Connector

    • Cos’è il Cloud Connector
    • Installazione Cloud Connector
    • Configurazione
    • Installazione come servizio
    • Esempio di utilizzo
    • Controllo remoto
    • Note

    Team Works

    • Perché non basta GitHub?
    • Team Works: concetti base
    • Organizzazione del lavoro consigliata
    • Risoluzione dei problemi relativi a Team Works
    • Domande sull’utilizzo di Team Works

    Manuale PWA

    • Cos’è una PWA?
    • Creazione di una PWA su Instant Developer Cloud
    • Life Cycle
    • Installazione PWA
    • Funzionalità
    • Plugin
    View Categories

    Installazione ed uso di Analytics

    Contenuti
    • Installazione del server Analytics
      • Aggiornamento di Analytics Server
      • Configurazione di Analytics Server
    • Configurazione dell’applicazione
      • L’oggetto app.analytics
    • Analisi dei dati
      • Pagina delle sessioni
      • Pagina degli utenti
      • Pagina degli eventi
      • Pagina delle eccezioni
      • Pagina della sincronizzazione
      • Pagina degli allarmi

    Il sistema Analytics è composto da tre parti:

    1. Un sistema di raccolta dati incluso nel framework operativo dell’applicazione (il framework Analytics)
    2. Un sistema di memorizzazione (il server Analytics) che riceve i dati dalle applicazioni, il elabora e li memorizza in un database Postgres.
    3. Un sistema di visualizzazione dati incluso nella console che, interrogando via API il server Analytics, è in grado di visualizzare le informazioni raccolte dalle applicazioni.
    image5 Instant Developer

    Il framework Analytics è incluso in ogni applicazione compilata con Instant Developer Cloud ed è quindi disponibile sia in web app installate nel cloud che in applicazioni mobile distribuite tramite gli store. Le web app possono essere installate in qualunque tipo di server di produzione: sia quelli di Instant Developer Cloud, che i My Cloud che i Self Managed.

    Il server Analytics è un’applicazione web che viene installata tramite la console su uno dei propri server di produzione. Può essere installata su un server di produzione di Instant Developer Cloud o su un server di tipo My Cloud. Nel primo caso, essa conta come una delle applicazioni installate sul server, per quanto riguarda il limite di applicazioni installabili.

    Installazione del server Analytics #

    Vediamo ora come viene installato e configurato il server Analytics. Questa operazione avviene tramite il menu Analytics della pagina di un server nella console di Instant Developer Cloud, come vediamo nell’immagine seguente.

    ZnbQ5eB4gbzx0 DZF0qGLPloe7TCoPEnihmKvyG8 ETRCivVMavdetF iF4kuj1yNi3Md8b baYiktZ SPmU4W9Onxhz2MEDOSgZLz3qEQDJi V2YGGhVQuI tHXkSB CNT8HrEWo7O1oJdlep1IOw Instant Developer

    L’installazione avviene tramite il pulsante in alto al centro Installa server Analytics. Il pulsante è verde se è possibile installare Analytics sul server selezionato.

    Se invece appare una videata di errore come la seguente, significa che il server non è acceso o che non è stato acquistato il modulo Analytics e Feedback per quel server, oppure che non si possiedono i permessi sufficienti per installare sul server.

    tut4HdSyVgPL9Dnz3YKF76tZ8ambzHVVJzXRuMTlDWyseMJQ4zofVYgjpJjfqFuw5QYrzi9Cfe sBmZF9IL0wlP5W6QTS8Wq3cWOWRCtLJxew5Fd0R vihxfYwxXf5Ed L9cOyuuJoPbZBa pPpz3g Instant Developer

    Per acquistare il modulo è possibile selezionare la voce di menu Impostazioni e poi cliccare il pulsante verde Upgrade che appare nella prima zona della pagina.

    Dopo aver eseguito l’installazione, essa è disponibile anche nella pagina delle installazioni del server ed è controllabile come ogni altra applicazione su tale server.

    541opxEEc Instant Developer

    L’applicazione AnalyticsServer non ha un’interfaccia utente specifica. Aprendola, si ottiene solo un messaggio che mostra il titolo e la versione del server. È essenziale che l’applicazione abbia il flag server session attivo, in quanto l’acquisizione dei dati avviene tramite API, ma la loro elaborazione avviene tramite una server session che tratta i dati arrivati senza sovraccaricare il server stesso.

    Aggiornamento di Analytics Server #

    Quando viene rilasciata una nuova versione del server, ne viene data comunicazione nella console. A questo punto è possibile aggiornarla semplicemente cliccando nuovamente il pulsante Installa server Analytics come abbiamo visto in precedenza.

    Configurazione di Analytics Server #

    Dopo aver installato il server, si dovranno configurare le seguenti impostazioni:

    • Traccia i clic dell’utente: tutti i clic su ogni controllo azionabile verranno tracciati. È importante raccogliere questi dati per conoscere come l’utente usa l’interfaccia dell’applicazione. Default: true.
    • Traccia l’apertura delle videate: tutti i passaggi da una videata all’altra verranno tracciati. È importante raccogliere questi dati per vedere quali processi l’utente esegue usando l’applicazione. Default: true.
    • Giorni di validità dei dati: periodo dopo il quale i dati raccolti verranno cancellati. Default 180 giorni.
    • Giorni di validità delle eccezioni: periodo dopo il quale i dati relativi alle eccezioni verranno cancellati. Default 30 giorni.
    • Username dell’account SendGrid: per inviare gli allarmi tramite e-mail, il server Analytics può utilizzare un account SendGrid specifico. Se non si specifica alcun dato, verrà utilizzato l’account SendGrid di community che è sottoposto ad una quota di invio. Si consiglia di inserire i propri dati di un proprio account per evitare di non ricevere messaggi a causa di un superamento di quote.
    • Chiave dell’account SendGrid: è la chiave API per utilizzare l’account SendGrid specificato nel campo precedente.
    • Frequenza di controllo degli allarmi: l’attivazione di alcuni tipi di allarmi può essere controllata solo a tempo. La frequenza predefinita è 5 minuti.
    • Chiave di sicurezza del server Analytics: rappresenta la chiave per poter utilizzare le API del server Analytics. Si consiglia di cliccare il pulsante Nuova chiave API per il server per generarne una tramite la console. Se non si specifica nessuna chiave, tutti potranno accedere al server, inviare dati o consultare quelli esistenti.

    Oltre alle impostazioni generali del server, è possibile anche specificare impostazioni diverse per ogni applicazione che ha inviato i dati al server Analytics.

    Configurazione dell’applicazione #

    Dopo aver installato il server è necessario configurare il framework Analytics nel codice dell’applicazione per attivare l’invio dei dati. Il metodo più semplice per farlo è quello di inserire il seguente codice nell’evento app.onStart.

    app.analytics.appName = "AnalyticsServer";
    app.analytics.serverUrl = "https://<nome server>.instantdevelopercloud.com";
    app.analytics.apiKey = "<chiave impostata nella console>";
    app.analytics.enabled = true;

    La prima riga suppone che il nome con cui è stato installato il server Analytics sia AnalyticsServer, che è appunto il default. La seconda riga contiene la URL completa del server; la terza riga comunica la chiave API per il server, quella che è stata configurata nella console. Infine la quarta riga attiva la raccolta ed il caricamento dei dati.

    I dati vengono quindi raccolti dall’applicazione e memorizzati in un file locale. Ogni 15 secondi o quando l’applicazione viene mandata in background o quando viene terminata, i dati vengono inviati al server Analytics e poi cancellati dal file system locale.

    L’oggetto app.analytics #

    Di solito dopo la configurazione iniziale non è necessario scrivere altro codice per il funzionamento di Analytics. Tuttavia l’oggetto app.analytics contiene diversi metodi che possono essere usati per tracciare eventi particolari o inviare dati con frequenze diverse dal default.

    Tramite app.analytics è inoltre possibile effettuare query su un proprio server Analytics per estrarre le stesse informazioni fornite come visualizzazione dalla console e costruirsi così propri report di analisi dati.

    Vediamo ora i metodi principali per il tracciamento di eventi personalizzati:

    app.analytics.logEvent(evName, params): questo metodo permette di tracciare un evento personalizzato come, ad esempio, la conclusione di un’operazione di acquisto, passando anche un oggetto di parametri dell’evento. Un esempio di oggetto parametri è il seguente:

    {
      labels: nomeProdotto, 
      prezzo: prezzoProdotto, 
      qta: qtaProdotto
    }

    Specificando la proprietà labels, le altre proprietà numeriche contenute nei parametri verranno visualizzate raggruppate per il valore della proprietà labels. Nell’esempio potremmo quindi tracciare l’acquisto di ogni prodotto, visualizzando la somma delle quantità ed il prezzo medio di vendita.

    app.analytics.logPage(view): questo metodo permette di tracciare il passaggio ad una view particolare dell’applicazione. Normalmente il sistema traccia automaticamente tutte le videate aperte tramite il metodo show e quelle aperte tramite il metodo push dell’oggetto page controller del framework IonicUI. In alcuni casi è possibile voler tracciare anche altri tipi di cambio di stato dell’interfaccia utente.

    Se, ad esempio, si desidera tracciare anche il cambio di visualizzazione di una tabbed view (elemento IonTabs) è possibile chiamare il metodo passando come parametro la view selezionata nella tabbed view. Un esempio di codice è il seguente:

    $tabs.onChangePage = function (pageInfo)
    {
      app.analytics.logPage(this.elements[pageInfo.newPage]);
    };

    Si noti che il metodo app.analytics.logPage richiede come parametro un’istanza di view.

    app.analytics.send(): invia i dati raccolti al server Analytics. Normalmente non è necessario utilizzare esplicitamente questo metodo.

    Analisi dei dati #

    Vediamo infine come visualizzare i dati raccolti tramite la console. Si noti che i dati rimangono memorizzati solamente nel server in cui è stata installata l’applicazione AnalyticsServer. La console in questo caso è solo un mero visualizzatore.

    Per accedere alla visualizzazione dei dati analitici di un’applicazione, occorre utilizzare la voce Analytics del menu di progetto e poi selezionare l’applicazione di cui vedere i dati dalla combo box evidenziata nell’immagine seguente.

    G4qCxR0gUtfYqkIHGn 3DPFHPgcxLheNzMtJqF3rONkeqSVMLOZ4vQVgz8SUPHOsG1RfqoVSmyTWAf8eeXcFUMbgTB6w8TJHoh7ZaErBVJwhiNe OYK0KP ydO0gX0fA4cJGWv5cpJoC2v7TrpLksQ Instant Developer

    La pagina principale permette di impostare i filtri sulle date, sui periodi di confronto e su altri parametri delle sessioni, compresi gli eventi personalizzati. I dati mostrati riguardano un riassunto dei dati delle sessioni, degli utenti, delle interazioni, delle eccezioni ed infine della sincronizzazione. In ogni sezione della pagina principale è possibile modificare la misura da visualizzare selezionandola dalla relativa combo box.

    Pagina delle sessioni #

    La pagina delle sessioni mostra i dati relativi all’andamento nel tempo delle sessioni.

    a3IfzvUL6SPhyxj7iYQ7wnqOlxegvJIbkzNrHvMv3HWMAorkQSNf7t07bmSDkpTM5fUiikJtNh1R6VHbsubIMDFeugWlBQDVLUHT9W0lDcggbt0t6J8 d11eq8RXduDGDWMwaAtnp6L9D34XjIInQQ Instant Developer #

    In particolare viene evidenziato il totale, il numero di sessioni per utente e la durata, il tutto confrontato con il periodo precedente. Cliccando sul riquadro degli utenti sarà possibile vedere il grafico relativo al numero di utenti suddiviso fra nuovi e di ritorno. Nella lista sotto al grafico è possibile vedere la distribuzione della durata delle sessioni e la distribuzione del numero di giorni di utilizzo alla settimana.

    Pagina degli utenti #

    La pagina relativa agli utenti mostra le informazioni relative agli utenti, la provenienza geografica, la lingua ed il dispositivo utilizzato.

    G6brtG 6XWXc7AvCQ5FIzds5ja5xp2VM8hGOhwLvLxnifJGjvtUGKkW6sTTO7mRzPnPf4H90znjU 1xF2v6jjnnsObof6ONu1mtc5RxfB Instant Developer

    Pagina degli eventi #

    La pagina è particolarmente importante per comprendere come gli utenti utilizzano l’applicazione. Ci sono tre sezioni principali: interazioni, pagine visitate ed eventi personalizzati.

    IcXMBlK6GDRBYRjg2W6kElm 5l8GdC6GPDn m9fW33lFVRefi5j9UiUiM9gpfCZYp9bayvjhOs1ExEH T9Bg0Bu0EB9ZN252QM5eAAEUq NXFCGmeB Ys mJSz8gBxznwtE94gwM WtO k1Sj1BUA Instant Developer

    Il dettaglio interazioni, sotto al grafico, mostra il numero di interazioni per ogni oggetto attivabile dell’applicazione. In questo modo è possibile capire quali parti dell’interfaccia utente vengono usate di più o di meno.

    Cliccando sulla sezione Pagine visitate, oltre al grafico con i totali di pagine visualizzate per giorno verrà mostrato anche il flusso di navigazione, filtrabile per singola pagina. Nella lista sotto al grafico, per ogni pagina sarà possibile sapere il numero di visualizzazioni, la durata della visita alla pagina e il numero di interazioni.

    Instant Developer

    Cliccando infine nella sezione Eventi personalizzati è possibile vedere il grafico delle occorrenze di un evento nel tempo e la lista dei valori dell’evento con la valutazione dei valori minimi, medi massimi e la totalizzazione dei parametri numerici ad esso associati.

    oe0NVXNiX2Ra3v9phMz5eC72A92tEFjNwRtlSH7fNk6 tQY e6WFJCZEw7Xd7gG4 WoferiL8EvVh6uVH3Di3YVkDGBq5lapNfxgjUI5MizFhAiuNbwkqcq7j2 egi80Pj2ns81Spl9UnziH6u6iRg Instant Developer

    Pagina delle eccezioni #

    La pagina delle eccezioni riporta i dati relativi alle eccezioni JavaScript generate nell’applicazione e non gestite.

    9QbNVC71Q8Pcy2TPTQvfXk5ZPxOd249L7dzcABQy8h6LfnCwRTgmB6H9kcOM6QrHuDzkt3XnjEieKCrCAcRdYXW1uzJBOHf kV C8r29OgSqW01tw9V1IeF3wTroZUH Instant Developer

    La lista sotto al grafico riporta per ogni tipo di eccezione il numero di occorrenze e gli utenti coinvolti. Cliccando su un’eccezione verranno visualizzati i dati di dettaglio, fra cui lo stack trace, il nome della sessione, i dati della build e l’eventuale query se l’eccezione riguarda il database. Se l’applicazione è stata compilata con il supporto di debug a runtime attivo e il parametro di applicazione trackCodeLine vale true, allora sarà possibile aprire la versione del progetto installata già posizionata sulla riga di codice che ha generato l’eccezione.   

    rkCInmnopMEZ49a TwuzTHdhrv2lZ2CFs6 dMSClvc NIB1gYFisYE6vpwhnBpsUSTrxHu vpYSrOOhBcq6pkRWQgley3bw3jBvh3d92ShdGNpEZeYJYRDUl4g Pf Instant Developer
    AQaQmfcF58A6ysRKUtoxvjRZm2 StJh P9 A9HF0O 7DAd58a5d5rdWyh4R51T7eN5t4j4kXwf9nH1E09 KIPLfazjnQ njiNk9 QJDis s8WB31 pAcwQwNLBKZRXv G0Y8ABuB0 QrNdsQ652XmQ Instant Developer

    Diverse opzioni nel caso di debug a runtime e trackCodeLine attivo

    Pagina della sincronizzazione #

    La pagina riporta le performance del sistema di sincronizzazione dei database locali con il cloud. Ci sono quattro sezioni: Sessioni, Completa, Differenziale ed Errori.

    pCLnEYEHqwc9g8uCqL58jVpInKIApwAN5xBhssyl9eunmCJXpptyairOhRIQskCLuWbdXi Ui2TmmvuMj O0CV Instant Developer

    Nella sezione Sessioni viene riportato il numero di sessioni di sincronizzazione e il grafico che ne mostra l’andamento nel tempo. Il rapporto tra sincronizzazioni complete e differenziali è particolarmente importante per comprendere la corretta impostazione del sistema. La lista sotto al grafico mostra la distribuzione delle sessioni in relazione alla loro durata e il tipo di rete utilizzata. Anche la durata delle sessioni è molto importante perché riflette i tempi di attesa degli utenti prima di poter vedere i dati aggiornati.

    La sezione Completa riguarda la sincronizzazione completa, cioè l’operazione di resincronizzazione dell’intero database locale. La lista sotto al grafico è particolarmente importante perché riporta per ogni classe documento il numero di istanze sincronizzate, oltre alla durata del caricamento e del salvataggio.

    La sezione Differenziale riguarda la sincronizzazione differenziale e riporta il numero di variazioni differenziali ricevute. La lista sotto al grafico riporta la distribuzione della durata della sessione di sincronizzazione.

    Infine la sezione Errori mostra gli errori di sincronizzazione. La lista sotto al grafico mostra l’elenco dei vari tipi di errore e il numero di occorrenze. Cliccando su un errore sarà possibile leggerne i dettagli.

    Pagina degli allarmi #

    La pagina degli allarmi permette di configurare una serie di allarmi che vengono attivati se si verificano una o più condizioni.

    Nell’esempio seguente, l’allarme scatta quando il numero di eccezioni giornaliere è maggiore di 10.

    0 5rHhdhjv2uAfKIJQtXzZMyXvkR1Pc1Tf3UQntWFpuWBIB7Yz YQ Eqqy Instant Developer

    Per aggiungere una condizione, specificare la metrica e la condizione e poi cliccare il pulsante + sulla destra. Fra le metriche sono presenti anche gli eventi personalizzati; in questo modo è possibile essere avvertiti se l’andamento di questi eventi è diverso da quello atteso.

    È inoltre possibile impostare un periodo di osservazione e inserire dei filtri sui parametri delle sessioni da prendere in considerazione per valutare le condizioni dell’allarme. Dopo aver creato l’allarme è possibile condividerlo con altri utenti o gruppi della propria organizzazione.

    Quando un allarme è verificato, viene inviata una mail all’utente che lo ha inserito e agli altri utenti con cui esso è condiviso, usando l’account SendGrid configurato nel server Analytics.

    Ti è stato utile?
    Aggiornato il 15 Aprile 2024
    Introduzione Analytics e FeedbackRaccolta dei feedback degli utenti
    Contenuti
    • Installazione del server Analytics
      • Aggiornamento di Analytics Server
      • Configurazione di Analytics Server
    • Configurazione dell’applicazione
      • L’oggetto app.analytics
    • Analisi dei dati
      • Pagina delle sessioni
      • Pagina degli utenti
      • Pagina degli eventi
      • Pagina delle eccezioni
      • Pagina della sincronizzazione
      • Pagina degli allarmi

    Caratteristiche

    • Perché Instant Developer
    • IDE e Ambiente di Sviluppo
    • Pubblicazione Web & Mobile
    • Software Life Cycle & DevOps
    • Database, Integrazione, Sync
    • Collaboration & Workflow

    Soluzioni

    • Freelance
    • Software House
    • Company IT
    • Casi di successo
    • Applicazioni Sviluppate

    Azienda

    • Chi Siamo
    • Contatti
    • Lavora con noi

    Risorse

    • Documentazione
    • Risorse e Tutorial
    • Blog
    • Starter Kit
    • Pricing
    • Inizia Ora
    Crea un account e Inizia Gratis
    • Seguici su Twitter
    • Seguici su Facebook
    • Seguici su LinkedIn
    • Seguici su YoutTubeSeguici su YouTube
    Questo sito è protetto dalla tecnologia reCAPTCHA Enterprise e si applicano l'Informativa sulla privacy e i Termini di servizio di Google.
    Google Policy | Termini
    © Pro Gamma - p.iva, c.f. e iscr. Camera di Commercio Bologna 01985091204 - Sede legale Via D'Azeglio, 51 40123 Bologna - Italia Pro Gamma Instant Developer® è un marchio registrato.
    Privacy Policy | Cookie Policy
    • IT