JS Console Log
{% set js_log = results.js_log %}
{% if js_log and js_log.exists %}
| Path |
{{js_log.path}} |
| Lines |
{{js_log.total_lines}} |
| Events |
{{js_log.parsed_lines}} |
{% if js_log.malformed_lines %}
| Malformed lines |
{{js_log.malformed_lines}} |
{% endif %}
{% if js_log.truncated %}
| Truncated |
Event limit reached, later events were not parsed. |
{% endif %}
{% if js_log.init %}
Interpreter
| Time |
Pid |
Ppid |
Executable |
Working Directory |
{% for event in js_log.init %}
| {{event.ts}} |
{{event.pid}} |
{{event.ppid}} |
{{event.exec_path}} |
{{event.cwd}} |
{% endfor %}
{% endif %}
{% if js_log.http_requests %}
HTTP Requests
| Time |
Method |
URL |
Transport |
Request |
{% for event in js_log.http_requests %}
| {{event.ts}} |
{{event.method}} |
{{event.url}} |
{{event.transport}} |
{{event.request_id}} |
{% endfor %}
{% endif %}
{% if js_log.http_responses %}
HTTP Responses
| Time |
Status |
Elapsed (ms) |
Request |
Body |
{% for event in js_log.http_responses %}
| {{event.ts}} |
{{event.status}} {{event.status_text}} |
{{event.elapsed_ms}} |
{{event.request_id}} |
{{event.body.text}} |
{% endfor %}
{% endif %}
{% if js_log.http_errors %}
HTTP Errors
| Time |
Request |
Error |
{% for event in js_log.http_errors %}
| {{event.ts}} |
{{event.request_id}} |
{{event.error}} |
{% endfor %}
{% endif %}
{% if js_log.console or js_log.warnings %}
Console
| Time |
Level |
Message |
{% for event in js_log.console %}
| {{event.ts}} |
{{event.level}} |
{{event.message}} |
{% endfor %}
{% for event in js_log.warnings %}
| {{event.ts}} |
warning |
{{event.message}} |
{% endfor %}
{% endif %}
{# Everything the buckets above do not cover: dns_*, tcp_*, socket_*, eval,
module_intercept*, and anything the interceptor gains later. #}
{% set bucketed = ["http_request", "http_response", "http_error", "console", "warning", "init"] %}
Other Events
{% set other = js_log.events | rejectattr("event", "in", bucketed) | list %}
{% if other %}
| Time |
Event |
Details |
{% for event in other %}
| {{event.ts}} |
{{event.event}} |
{% for key, value in event.items() %}
{% if key not in ("ts", "event", "source") %}
{{key}}: {{value}}
{% endif %}
{% endfor %}
|
{% endfor %}
{% else %}
Nothing to display.
{% endif %}
Raw Log
{% else %}
No JS console log available.
{% endif %}