export_logs
Export OctoBot's full logs as a base64-encoded zip archive to troubleshoot or analyze bot activity.
Instructions
Export OctoBot's full logs as a zip archive, base64-encoded.
Maps to GET /export_logs -- the exact same binary-file-download
pattern as octobot_mcp.tools.profiles.export_profile (flask.send_file,
not JSON): this tool bypasses octobot_mcp.client.request_json for the
same reason and base64-encodes the raw response body. See this module's
docstring for the source/live verification detail, including why the
downloaded filename (unlike export_profile's) is not dynamic.
filename is read from the response's Content-Disposition header via
the shared octobot_mcp.tools._shared._parse_content_disposition_filename
helper -- the same one export_profile uses -- rather than hardcoding
OctoBot's own literal "logs_export.zip" locally.
On failure, OctoBot's own controller (confirmed against source) catches
every export exception internally, flashes an HTML-only session
message, and 302-redirects back to /logs -- never a 4xx/5xx status.
This tool cannot distinguish that redirect from a genuine success at
the HTTP-status level alone, so -- the same fail-loud approach
export_profile uses for its own missing-header case -- it raises
OctoBotMalformedResponseError whenever no parsable filename is found
in the response, rather than ever returning a fabricated filename or
empty content.
Output: {"filename": str, "content_base64": str}. Read-only, not
confirm-gated (ADR-0003).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||