Skip to content

Logs ​

The Logs tab is for DDEV projects. For the logs of Docker Compose and Laravel Sail services, see Docker Compose.

Use the Local and Remote tabs at the top to change between the two modes. The app keeps your choice for each project.

When you go to a different tab or project and come back, the Logs tab shows the same view. See Local Logs and Remote Logs for what the app keeps. The app does not keep this view after a restart.

Local Logs ​

Select a service, for example web or db. The logs stream in real time.

Each entry shows its level (DEBUG, INFO, WARNING, ERROR and more) in a color, and a timestamp when the service writes ISO 8601 timestamps. You can filter by level.

The app keeps the selected service and the level filter for each project. When you come back, the logs load again. When you select a different service, the level filter changes to All.

Remote Logs ​

Remote logs come from your server through SSH. DevWorkspace Pro reads the files in <remote project root>/storage/logs. Monolog format gives the best result. Laravel and Symfony use this format by default.

Setup ​

Remote logs need these settings in the Remote SSH tab:

  • An SSH connection that uses a host in your SSH config. Select Configured host, or check Save in your SSH config file when you make a new connection.
  • Remote Project Root
  • Private Key Path, if your SSH config has no IdentityFile for the host

If the SSH connection is missing, the Logs tab shows SSH connection required for remote logs. Click Set up SSH connection to open the Remote SSH tab.

Read remote logs ​

The newest log file opens first. To read a different file, select it. DevWorkspace Pro loads the newest entries first. Scroll down to load older entries. If DevWorkspace Pro unloads newer entries to keep memory low, click Back to newest.

The toolbar has:

  • Connected / Disconnected status, and Reconnect when the connection is lost
  • The full path of the file on the server
  • Refresh log file, to load new entries
  • Download, to save the full file on your computer. Download uses SFTP. For the "Unable to start subsystem: sftp" error, see Remote SSH.

When you come back to the tab, the app shows the same file, entries and scroll position, with the same search text, level filter and dates. It does not load the file again. These conditions apply:

  • The app keeps this view for the projects that you opened recently.
  • The app does not keep the view if the file was loading or had an error when you left.
  • If you change the SSH connection or the Remote Project Root, the app loads the logs again.

Log Entries ​

  • Click an entry to see the stack trace and other details.
  • Filter by level, by search text, and by date range (From and To).
  • To get help from AI, hover over an entry and click Send to AI. The prompt contains the log text and the stack trace. See AI Sessions.

Log Monitoring ​

Log monitoring checks the Laravel logs on your remote servers for errors and sends a notification when it finds new errors. It is off by default.

Requirements ​

DevWorkspace Pro monitors a project only when the project has:

  • An SSH connection in the Remote SSH tab
  • A Remote Project Root
  • A GitHub repository URL

The server must have Laravel log files in storage/logs.

Settings ​

Open Preferences → Monitoring:

  • Enable Log Monitoring
  • Check Interval (minutes): the default is 1 minute. Min: 1, Max: 60.

How it works ​

At each check, DevWorkspace Pro:

  1. Connects to the server through SSH.
  2. Reads today's log (laravel-YYYY-MM-DD.log), or laravel.log if there is no log for today.
  3. Reads only the lines after the last check. grep on the server keeps only the error lines, so stack traces are not sent.
  4. Finds entries with the levels ERROR, CRITICAL, ALERT and EMERGENCY, and lines with Fatal error:, Uncaught exception or Exception:.
  5. Ignores errors that it reported before.

When there are new errors, you get a system notification and an in-app notification with the number of errors. Click View in the in-app notification to open the Logs tab of the project.

DevWorkspace Pro checks a maximum of 2,000 error lines in each check. If there are more, the notification tells you that only the latest 2,000 were checked.

Troubleshooting ​

If you get no notifications:

  1. Make sure that the connection works in the Remote SSH tab. See Remote SSH.
  2. Make sure that storage/logs exists on the server and that the SSH user can read the log files.
  3. Make sure that system notifications are on for DevWorkspace Pro.

DevWorkspace Pro - One workspace for every project