Risoluzione dei problemi relativi all'inserimento dell'agente browser APM

Gli utenti possono riscontrare vari errori durante la configurazione dell'inserimento dell'agente browser APM. Le cause e le azioni consigliate per tali errori sono elencate di seguito.

La pagina non viene inserita automaticamente con l'agente browser

Cause possibili:

  • L'inserimento dell'agente browser APM non è abilitato correttamente.

    Azione: esaminare come abilitare la funzione. Per ulteriori informazioni, vedere Abilita inserimento agente browser APM.

  • Application server non supportato da APM.

    Azione: confermare che l'Application Server sia supportato controllando la matrice di certificazione APM OCI.

  • La pagina non è gestita dal server applicazioni in cui è in esecuzione l'agente APM.

    Azione: verificare se la pagina è realmente servita dall'Application Server in cui è in esecuzione l'agente APM.
    • Se la pagina viene servita da una cache (ad esempio, CDN) o da un server Web (ad esempio, Oracle HTTP Server o Apache), il content server deve disporre della pagina inserita.

    • Se la pagina viene inserita nella cache dal browser, provare a eseguire un aggiornamento rigido (ad esempio, Maiusc e Ricarica) o cancellare la cache del browser.

  • Controllare se la pagina HTML contiene HTML "valido". Il consorzio W3C ha molte regole e validatori che è possibile verificare la validità della pagina.

    Azione: alcuni semplici metodi di controllo sono i seguenti:
    • Nel tuo browser, visualizza l'origine della pagina e controlla che inizi con "<html", "<!--" o "<!doctype html".

      Se inizia con qualche altro tag e devi ancora forzare l'inserimento, puoi aggiungere quel tag al parametro "valid_html_start" nel file ProbeConfig.acml.

    • Gli strumenti di sviluppo del browser consentono di verificare se l'intestazione "Content-Type" nella risposta HTTP contiene "text/html".

  • Se non è disponibile alcun messaggio di errore chiaro, è possibile effettuare le operazioni riportate di seguito.
    • Impostare il livello di log su DEBUG nel file AgentConfig.properties aggiungendo il parametro com.oracle.apm.agent.logging.level=DEBUG.

      Successivamente, ricaricare la pagina nel browser e cercare i messaggi nel file Agent.log contenente la stringa "DEBUG <Filter>".

    • Rivedere il file ProbeConfig.acml e assicurarsi che non raggiunga alcuna delle impostazioni di esclusione nella sezione INJECTION. In particolare, rivedere le seguenti impostazioni configurabili:
      • excluded_extensions
      • excluded_context_roots
      • excluded_patterns
  • Ulteriori informazioni sulle funzionalità:
    1. Il codice HTML deve essere generato da un servlet o da una JSP in cui è in esecuzione l'agente Java APM. Se si genera HTML in un filtro o tramite un altro meccanismo, è improbabile che funzioni.

    2. Il servlet deve effettuare una chiamata a getOutputStream() e scrivere l'HTML in un ServletOutputStream valido OPPURE deve effettuare una chiamata a getWriter() e scrivere l'HTML in un PrintWriter valido.

      Oracle InjectionFilter deve far parte della catena di servlet (aggiunto automaticamente alla catena di filtri dell'applicazione). Se si utilizza un altro filtro per bypassarlo, l'iniezione non sarà possibile.

    3. Trasferimento-codifica. L'agente deve essere in grado di intercettare e iniettare prima che il flusso di risposta HTML venga trasformato da:
      • Trasferimento-codifica: in chunk.
      • Trasferimento-codifica: comprimere.
      • Trasferimento-codifica: sgonfiare.
      • Trasferimento-codifica: gzip.

Visualizzazione della pagina non riuscita

Azione: prima provare a disabilitare l'inserimento dell'agente browser APM utilizzando il file AgentConfig.properties. Per informazioni dettagliate, vedere Disabilita inserimento agente browser APM. Dopo averlo fatto, attendere circa un minuto e riprovare la pagina in questione. Non è necessario riavviare il server applicazioni.