JENNIFER APM

Download 4
Last updated Jul 30, 2026

jennifer-xview

Search the individual transactions (X-View points) of a JENNIFER domain, one row per finished transaction, as the console's X-View analysis screen does. Use it as the evidence step of root cause analysis: once jennifer-metrics, jennifer-problems, jennifer-app-summary or jennifer-errors have narrowed down the time window, instance or application, list the slow or failed transactions there and see where their time went (sql_time, fetch_time, external_call_time, cpu_time against response_time). Then pass a transaction's domain_id, txid and times to jennifer-profile to read its call profile.

jennifer-xview [profile=VALUE] domain_id=VALUE [instance_ids=VALUE] [duration=VALUE] [from=VALUE] [to=VALUE] [min_response_time=VALUE] [errors_only=VALUE] [limit=VALUE]
profile=VALUE
Optional. Name of the JENNIFER console connect profile (type jennifer-apm-console). Every such profile you are granted is used when omitted. With domain_id, which is an id of one console, exactly one profile must be used: name it when you are granted several.
domain_id=VALUE
Required. e.g. 1000. The domain (sid) to search; jennifer-instances lists them.
instance_ids=VALUE
Optional. e.g. 75553,75555. Comma separated instance ids (oid) of the domain. Every instance with data in the period is searched when omitted.
duration=VALUE
Optional. e.g. 10m for the last 10 minutes. Recent period up to now, in s(second), m(minute), h(hour), d(day) units. The last 10 minutes when no period is given. At most one day. Transactions are selected by collection_time, when the console collected them.
from=VALUE
Optional. Start of the period, yyyyMMddHHmmss. Omitted digits are padded with zero. Overrides duration.
to=VALUE
Optional. End of the period, yyyyMMddHHmmss. Omitted digits are padded with zero. Now when omitted.
min_response_time=VALUE
Optional. e.g. 3000. Only transactions whose response time is at least this many milliseconds. 0 (all) by default. Filtered by the console, so it is the way to cut rows on a busy period.
errors_only=VALUE
Optional. t or f. t returns only transactions that ended with an error (the console's "show only exceptions" condition). f by default.
limit=VALUE
Optional. e.g. 50000. Maximum rows to return, 10000 by default. Rows come oldest first, so when the limit is reached the latest part of the period is missing; narrow the period or raise min_response_time rather than raising it.

Notes

  • Keep the window short (minutes around the problem) and use min_response_time or errors_only on busy periods: a small server records about 6,000 transactions per 10 minutes. The period is at most one day.
  • Rows come in the order the console collected them, oldest first, and stop at limit (10000 by default); a result of exactly limit rows is cut short. Sort and aggregate with Logpresso commands.
  • Durations (response_time, sql_time and the like) are milliseconds. _time and end_time are the transaction's end, start_time its start, collection_time when the console collected it (what the period options select on).

Output fields

FieldTypeNameDescription
_timeDateEnd timee.g. 2026-10-27 03:13:59. When the transaction ended, by the agent's clock (end_time).
profileStringConnect profilee.g. jennifer-prod
domain_idIntegerDomain IDe.g. 1000
instance_idLongInstance IDe.g. 75553. The instance (oid) that ran it.
instance_nameStringInstance namee.g. siem-mon-console-1
inst_idLongInstance keye.g. 10017. The console's instId of the instance, which transaction detail calls take.
applicationStringApplicatione.g. /api/orders. The service name (URL).
txidStringTransaction IDe.g. -2271545734455864799. Identifies the transaction within the domain; jennifer-profile takes it with domain_id and the times of the row.
response_timeIntegerResponse timee.g. 18719. Milliseconds.
sql_timeIntegerSQL timee.g. 43. Milliseconds spent in SQL.
fetch_timeIntegerFetch timee.g. 0. Milliseconds spent fetching SQL results.
external_call_timeIntegerExternal call timee.g. 197. Milliseconds spent in calls to other services.
cpu_timeIntegerCPU timee.g. 26. Milliseconds.
frontend_timeIntegerFront end timee.g. 0. Browser time, when front end monitoring is on.
network_timeIntegerNetwork timee.g. 0. Milliseconds.
error_codeIntegerError codee.g. 1020. 0 when the transaction had no error.
error_nameStringError typee.g. SQL_EXCEPTION, SERVICE_EXCEPTION, EXTERNALCALL_EXCEPTION, BAD_RESPONSE_TIME_APPLICATION. Null without an error.
http_statusIntegerHTTP statuse.g. 200. Null when not recorded.
client_ipStringClient IPe.g. 10.10.26.233
client_idStringClient IDe.g. 3109098555655530894. The console's wmonId.
user_idStringUser IDe.g. alice. Null when not collected.
guidStringGUIDGlobal transaction id shared by linked transactions across services. Null when not set.
start_timeDateStart timeend_time less response_time.
end_timeDateEnd timeThe agent's end time.
collection_timeDateCollection timeWhen the console collected the transaction, a few milliseconds after end_time. The period options select on it, and transaction detail calls take it to find the transaction.
asyncBooleanAsynce.g. false
linkedBooleanLinkede.g. false. Calls or was called by another monitored service.
stackedBooleanStackede.g. true. Stack traces were sampled while it ran.

Usage

Slowest transactions of the last 10 minutes:

jennifer-xview domain_id=1000 duration=10m min_response_time=3000 | sort limit=20 -response_time | fields _time, instance_name, application, response_time, sql_time, external_call_time, cpu_time, error_name, txid

Where the time of slow transactions goes, by application:

jennifer-xview domain_id=1000 from=20261027030000 to=20261027031000 min_response_time=1000 | stats count, avg(response_time) as rt, avg(sql_time) as sql, avg(fetch_time) as fetch, avg(external_call_time) as ext, avg(cpu_time) as cpu by application | sort limit=10 -rt

Errors of the last 30 minutes by type and application:

jennifer-xview domain_id=1000 duration=30m errors_only=t | stats count, max(_time) as last_seen by error_name, application, instance_name | sort -count

Response time per minute of two instances:

jennifer-xview domain_id=1000 instance_ids=75553,75555 duration=10m | timechart span=1m avg(response_time) by instance_name