Skip to content

Request Log

The bundle adds a Sulu.ai → Request Log screen to the Sulu admin that lists every request the installation sent to the sulu.ai platform: chat, content translation, intelligent search and search ingest. Each row shows the feature, model, locale, duration, credits and outcome. Opening a row shows the resolved prompt chain — what was sent and what came back — plus the error code and message for a failed call.

Requirements

The view is implemented in Sulu core (same split as the Subscription page). After upgrading Sulu, rebuild the admin (npm install && npm run build in assets/admin) as usual; no additional registration is needed. The bundle adds its own table, ai_requests — see Database Schema.

Permission

The screen is protected by the sulu.ai.request_log security context (category Sulu AI), with separate View and Delete permissions. Grant them to the user roles that should see or clear request-log entries under Settings → User Roles.

Configuration

# config/packages/sulu_ai_platform.yaml
sulu_ai_platform:
    request_log:
        enabled: true   # Record every request this installation sends to the platform

Recording is on by default. Set enabled: false to stop writing new rows; existing rows are untouched. There is no retention or purge policy yet — rows accumulate until deleted by hand or through the admin screen.

Personal data

A row's resolved chain stores the prompt content sent to the platform and the reply that came back verbatim, including any editor or end-user text passed into it — treat the table like any other store of user-entered content when planning backups, access and deletion. An intelligent search built with IntelligentSearchQuery::withoutPersistence() (used by the sulu:ai:intelligent-search:search debug command) is skipped here as well as on the feedback screens.