---
title: Web server
order: 12
description: The web server under BoxLang (MiniServer, CommandBox or a servlet container): listeners, workers, requests and what needs a look.
icon: lucide:server
---

# Web server

The Web server page shows the server BoxLang runs in: which one it is, its listeners, its worker threads, and the requests BxLens counted. It is under **Runtime** and is for admins only, like [System](system-and-threads.md). It updates every few seconds and keeps the last 15 minutes.

BxLens shows only what the server really reports. A number a server does not report is shown as "not reported", never as zero. The exact list, with the source of each fact, is in [Web server data](../reference/web-server-data.md).

![The Web server page](../assets/screenshots/console-webserver.png)

## What the page shows

| Block | Content |
|---|---|
| Runtime | MiniServer, CommandBox (Runwar), a servlet container or the CLI, the version when it can be read, and the engine (Undertow, Tomcat, Jetty). |
| Listeners | Each address and port, http or https when known, the open connections, and the connection limit when one is set. |
| Workers | I/O threads, worker pool size, core and maximum size, the queue of waiting tasks, and busy threads when the server reports them. |
| Requests | Total, 5xx, running now, per second, the slowest, and the bytes sent when the server counts them. These are BxLens counters: they count what BoxLang served, not static files. |
| Details | Server name, web root, rewrites and ports, only for the servers that report them. |
| History | Requests per second, running requests and connections, every 10 seconds for 15 minutes. |
| Needs a look | A queue of 5 or more waiting tasks, connections at 80 percent of a limit, all workers busy (only when busy is reported), and a 5xx share of 5 percent or more of at least 20 requests. |

## What each server reports

| | MiniServer | CommandBox | Servlet container |
|---|---|---|---|
| Listeners, connections, workers, queue | yes | yes (read from source) | not yet |
| Busy workers | not reported | not reported | not yet |
| Bytes sent | yes | not reported | not yet |
| Web root | yes | yes | not yet |
| Server name, rewrites | not reported | yes | not yet |

The history starts when BxLens starts and is lost when the server restarts. It is not saved.

## Settings

`collectors.webserver.enabled` (default `true`) switches the page. See [Configuration](../configuration.md).

## Another server

For a server of the fleet the page shows the snapshot that server saved, at most a minute old, read only. This needs BoxLang+.
