| name | b2c-logs |
| description | Retrieve and search logs from B2C Commerce instances using the b2c CLI. Use this skill whenever the user needs to view server logs, search for errors, filter log entries by level or time, or monitor logs in real-time. Also use when the user reports a 500 error, broken checkout, failing job, or any server-side issue that needs log investigation — even if they just say "something's broken on the sandbox" or "check the logs". |
B2C Logs Skill
Use the b2c CLI to retrieve and monitor log files on Salesforce B2C Commerce instances. The logs get command is designed for agent-friendly, non-interactive log retrieval with structured JSON output.
Tip: If b2c is not installed globally, use npx @salesforce/b2c-cli instead (e.g., npx @salesforce/b2c-cli logs get).
Configuration & Authentication
The CLI auto-discovers the target instance and credentials from SFCC_* environment variables, dw.json in the current or parent directories, ~/.mobify, package.json, and configuration plugins. Flags like --server, --client-id, --client-secret, --username, and --password are usually unnecessary — only pass them to override what's auto-detected.
Run b2c setup inspect to see the resolved configuration and which source provided each value (use --json for scripting, --unmask to reveal secrets). For precedence rules and troubleshooting, see the b2c-cli:b2c-config skill.
Agent-Friendly Log Retrieval
The logs get command is optimized for coding agents:
- Exits immediately after retrieving logs (non-interactive)
- Supports
--json for structured output
- Filters by time, level, and text search
- Auto-normalizes file paths for IDE click-to-open
Examples
Get Recent Logs
b2c logs get
b2c logs get --count 50
b2c logs get --json
Filter by Time
b2c logs get --since 5m
b2c logs get --since 1h
b2c logs get --since 2d
b2c logs get --since "2026-01-25T10:00:00"
Filter by Log Level
b2c logs get --level ERROR
b2c logs get --level ERROR --level FATAL
Search Text
b2c logs get --search OrderMgr
b2c logs get --search "PaymentProcessor"
Combined Filters
b2c logs get --since 1h --level ERROR --search "PaymentProcessor" --json
b2c logs get --filter error --filter warn --since 1h --level ERROR --level FATAL
List Available Log Files
b2c logs list
b2c logs list --filter error --filter customerror
b2c logs list --json
Real-Time Tailing (Human Use)
For interactive log monitoring (not for agents):
b2c logs tail
b2c logs tail --filter debug --filter error
b2c logs tail --level ERROR --level FATAL
b2c logs tail --search "PaymentProcessor"
b2c logs tail --filter customerror --level ERROR --search "OrderMgr"
Downloading Full Log Files
To download the complete log file, use the file field from the JSON output with b2c-cli:b2c-webdav:
b2c webdav get error-odspod-0-appserver-20260126.log --root=logs -o -
JSON Output Structure
When using --json, logs get returns:
{
"count": 1,
"entries": [
{
"file": "error-odspod-0-appserver-20260126.log",
"timestamp": "2026-01-26 04:38:03.022 GMT",
"level": "ERROR",
"message": "PipelineCallServlet|156679877|Sites-Site|...",
"raw": "[2026-01-26 04:38:03.022 GMT] ERROR PipelineCallServlet|..."
}
]
}
| Field | Description |
|---|
file | Source log file name (use with b2c-cli:b2c-webdav to download full file) |
level | Log level: ERROR, WARN, INFO, DEBUG, FATAL, TRACE |
timestamp | Entry timestamp |
message | Log message (paths normalized for IDE click-to-open) |
raw | Raw unprocessed log line |
Log Types
Common log file prefixes:
| Prefix | Description |
|---|
error | System errors |
customerror | Custom script errors (Logger.error()) |
warn | Warnings |
debug | Debug output (when enabled) |
info | Informational messages |
jobs | Job execution logs |
api | API problems and violations |
deprecation | Deprecated API usage |
quota | Quota warnings |
More Commands
See b2c logs --help for all available commands and options.
Related Skills
b2c-cli:b2c-webdav - Direct WebDAV file access for downloading full log files
b2c-cli:b2c-config - Verify configuration and credentials