Our docs contain a Common Questions section as needed at the bottom of specific topics. We’ve captured items here that don’t fit in the other topics.
If you don’t see an answer to your question here, check our previously reported issues.
Does Glimpse modify incoming requests or outgoing responses?
Glimpse adds the following headers to outgoing responses:
X-Glimpse-ContextId: A unique ID used to correlate Glimpse-captured data with the request.
Glimpse also adds the following cookies to outgoing responses:
.Glimpse.ContextId: A unique ID used to correlate Glimpse-captured data with the request.
.Glimpse.Session: A unique ID used to correlate Glimpse activity to a single browser session.
For outgoing HTML responses, Glimpse will inject two
<script> tags, one for the Glimpse browser agent with which to instrument and report activity in the browser and the other for the Glimpse heads up display (HUD) in the lower-right corner of the page.
How long will Glimpse keep request data?
By default, Glimpse keeps request data in an in-process, in-memory store which means that Glimpse keeps request data only while your application is running. When running, Glimpse will keep a maximum of 500 requests at any given time, with data for older requests being dropped in favor of new requests.
Why does Glimpse not display timing or resource loading data for requests made by some browsers?
Some browsers (e.g. Safari) do not support the W3C User Timing specification for
performance.measure() and so the Glimpse browser agent cannot capture that activity. Likewise, if the browser does not support the W3C Resource Timing specification, Glimpse cannot capture resource loading and timing information.
What endpoints does Glimpse create in addition to any created by my application?
Glimpse intercepts requests made to the endpoints created by your application, in order to capture activity performed by the application. Glimpse also creates several endpoints used to store and retrieve that activity, as well as to serve the Glimpse client. By default, these endpoints are exposed at the relative
Some of those endpoints you might notice while using Glimpse are:
/glimpse/agent: Serves the Glimpse browser agent.
/glimpse/client: Serves the Glimpse client.
/glimpse/context: Returns messages associated with a given request.
/glimpse/hud: Serves the Glimpse heads up display (HUD).
/glimpse/message-ingress: Used by Glimpse agents to store activity related to a request.
/glimpse/message-stream: Used by the Glimpse client to receive real-time updates of request activity.
/glimpse/metadata: Returns information about each endpoint exposed by Glimpse.
How do I disable telemetry?
telemetry.enabled flag set to false. See the configuration section for more details on how to specify Glimpse configuration options.
Why can’t I see the HUD?
If you are only serving static resources, the Glimpse HUD and browser agent (which is responsible for capturing timing and performance data) will not be injected into web pages. This is known issue. We rely on
express.Response.send() to do the injection of the browser agent and HUD script; if that method isn’t called (as
express.static() just delegates to
static()), neither the HUD nor the browser agent will get injected. If you wish, you can inject the scripts yourself manually.
You can always launch the Glimpse client at
<site> is your site’s base URL (e.g.,
Why do I see
[anonymous] reported by Glimpse?
[anonymous]. You can use the call stack information (i.e. file and line number) reported by Glimpse to help identify a given component.
Alternatively, you can simply name your functions. For a “traditional”
function you can just add the name inline. For a “fat-arrow” (
How can I see request data from multiple applications?
By default, Glimpse will run in a configuration that supports diagnostics of a single Node.js process. If you want to see diagnostics from multiple applications, you can configure your applications as described in the configuration instructions here.
Which versions and modules are supported?
Project Glimpse: Node Edition currently supports Node.js versions 4.0 through 8.1.
In addition to the providing instrumentation in core node.js libraries, Glimpse provides additional insight if your application uses the following modules:
|body-parser||1.13 through 1.17.x inclusive|
|cookie-parser||1.3 through 1.4.x inclusive|
|debug||2.0 through 2.7|
|mongodb||2.0.14 through 2.2.x inclusive|
|morgan||1.6 through 1.8.x inclusive|
|serve-favicon||2.3 through 2.4.x inclusive|
|serve-index||1.x versions, 1.8.x and higher|
|serve-static||1.3.x through 1.12.x inclusive|
If you desire support for additional modules, please open an issue.
What do OlderUnsupportedPackageRequired/NewerUnsupportedPackageRequired errors mean?
If you use a module that Glimpse instruments, and the module’s version is outside of our supported range, we’ll emit these errors. Specifically,
If you’re using a newer module than what we support, you’ll see an error that says
Glimpse (Error NewerUnsupportedPackageRequired): Glimpse does not support version <x.x.x> of <module> yet...
If you’re using an older module than what we support, you’ll see an error that says
Glimpse (Warning OlderUnsupportedPackageRequired): Glimpse does not support version <x.x.x> of <module>.....
For the newer module case, please open an issue, and we’ll add support for the new module as soon as possible.
For the older module case, please try to upgrade to the latest version of the library in question. If you can’t upgrade for whatever reason, please open an issue.