Dashboard › cli › Distillation
25c3c779-0720-47e5-befb-ee2ae5288423["lore_tm_v1_7GQRAhRkISLWBXw7WuKNEQ73q8n1acPk3xXJFAQsFgg","lore_tm_v1_YwxRcxBIpGzzLaDRAwZPPKTLC67hUTF0run8TzKj1fs","lore_tm_v1_5RbkVMMBtNhed7Tc3sdouLH1mU_rd0X0mkfI0iJhLBY","lore_tm_v1_n7Z7PDEWZLfj2lbvv15MOJO-g7w8y4ZenlumKKYpM5U","lore_tm_v1_6R42Kd9h5vXHK9maup6M4F58NYRkoL05ZCkXpmNAwiw","lore_tm_v1_2KWXOpjFh9VK-y2cQpY2-w0xUDxaqgk-jZ4fSVLUFLA","lore_tm_v1_vnygWDzuGl_6R59REP8stSrej0b2ahu25tJXjMdE5uM","lore_tm_v1_n2LuCNYxmM9cjqV30qCESxh1j5-V17xtkvszqG5tTbc","lore_tm_v1_O-oc7eaL_AMsGbrmUEqNO2PyB_wxX2t0uuHiOXMmEpI","lore_tm_v1_JAa3EGloL28rNVbZikKSoDGZQdtE6yt_Z4cwVopvhE8","lore_tm_v1_N7o6RNCoHhzIYUH1r4gaAZ2Zv6uDirUD7tPi00bk0bU","lore_tm_v1_Zd_ODKVaqRkIJpZQbsIITMuSKvvqnl88qFQniURcSfw","lore_tm_v1_emW2uTn87Y_jqpdjWULQ-6zCM3f71NZ98vYyJlz1o4w"]
packages/cli/src/commands/span/list.ts defines valid --sort values as ["date", "duration"], with DEFAULT_SORT = "date", DEFAULT_PERIOD = "7d", trace pagination key PAGINATION_KEY = "span-list", project pagination key PROJECT_PAGINATION_KEY = "span-search", and trace usage hint sentry span list [<org>/<project>/]<trace-id>.parseSpanListArgs() is a thin wrapper over parseDualModeArgs(args, TRACE_USAGE_HINT). Span-list pagination hints preserve active non-default flags in this order: --sort, -q "<query>", then the period hint; trace-mode navigation uses sentry span list ${org}/${project}/${traceId} -c next|prev.packages/cli/src/commands/span/list.ts defines listCommand = buildListCommand("span", ...), supporting project mode and 32-character trace-ID mode. Flags are limit, query, sort, and period, with aliases n, q, s, plus PERIOD_ALIASES; the handler extracts extra API fields, dispatches to handleTraceMode() or handleProjectMode(), and emits output containing pagination and target context.parseDualModeArgs() in packages/cli/src/lib/trace-target.ts returns project mode with no target for zero arguments. With 2 or more arguments, it selects trace mode only when the final argument passes isTraceId(); with one argument, it tests the segment after the final /. Detected trace inputs delegate to parseTraceTarget(), while non-trace input becomes { mode: "project", target: first }.packages/cli/src/commands/log/list.ts uses parseLogListArgs() as a thin wrapper around parseDualModeArgs(args, TRACE_USAGE_HINT). Its default period is TIME_RANGE_14D in trace mode and TIME_RANGE_30D in project mode when --period is omitted.{ data: items, hasMore }, applying filterFields() per log when requested; follow mode emits each log as a bare JSONL object. validateFollowFlags() rejects --follow with --sort "oldest", and follow mode also rejects absolute date ranges while allowing relative durations such as --period 1h.packages/cli/src/commands/log/list.ts calls warnIfNormalized(), resolves with resolveTraceOrg(), warns that --fields is unsupported by the fixed-field trace-logs endpoint, and converts an explicitly supplied project into a query filter through buildProjectQuery(flags.query, projectFilter).limit defaulting to "100", query, optional follow with inferEmpty: true, optional period, and sort defaulting to "newest"; aliases are n, q, f, t, and s. Documented follow examples use a default 2-second poll interval or -f 5 for 5 seconds.sentry log view, when 2 or more positional arguments are provided, the first is always treated as the target/org-project specifier and all remaining arguments as log IDs.parsePositionalArgs() in packages/cli/src/commands/log/view.ts accepts a plain log ID, <org>/<project>/<log-id>, a valid single-slash <org-or-project>/<32-char-hex-log-id>, or <target> <log-id> [<log-id>...]; arguments may contain newline-separated IDs. Validation is deferred so recoverHexId() can perform fuzzy prefix lookup after organization/project resolution.parseSingleSlashLogArg() runs before parseSlashSeparatedArg() to prevent valid org/log-id input from being misclassified as org/project with a missing ID. It normalizes the suffix only when it matches HEX_ID_RE; otherwise parsing falls through.Did you mean: sentry issue view ${first}. Exactly 2 arguments may be recovered by detectSwappedViewArgs() when the first lacks / and the second contains /; swap recovery is intentionally disabled for more than 2 arguments to avoid silently dropping extras.Promise.all(), resolves the project slug to a numeric ID via resolveLogProjectId() for the Events API project parameter, fetches through getLogs(), errors if no entries are found, and warns for partial misses. --web opens requested log IDs without fetching.filterFields() per entry. Human mode fetches trace-backed item details through getLogItemDetail() with LOG_DETAIL_CONCURRENCY = 15; JSON mode skips those detail requests because jsonTransform uses only data.logs. Individual detail failures are debug-logged and do not fail the command.packages/cli/src/commands/event/view.ts expands newline-separated positional arguments before parsePositionalArgs(), supports issue URLs and issue short-ID shortcuts through resolveIssueShortcut(), and uses LATEST_EVENT_SENTINEL = "@latest" for latest-event resolution.resolveEventTarget(), collects the primary plus extra IDs through collectEventIds(), fetches multiple events in parallel with fetchMultipleEvents(), warns on individual failures, and builds each result concurrently through buildSingleEventViewData().--web opens only the first event and warns that extra event IDs are ignored. Normal output includes events and exact requestedCount; returned hints combine detected-target context and a replay hint for the first fetched event.