These docs are for v5.1. Click to read the latest docs for v2024.3.

Server Configuration

Many Seq options can be configured through the Settings section of the web user interface. Lower-level settings, especially those that control the HTTP endpoint, or require a restart to be applied, are stored in the Seq.json configuration file, and manipulated using the seq config command-line.

The seq config command-line

From an administrative command prompt on the Seq server, running seq config will list the available settings and their values:

seq config

Setting values can be changed by specifying the setting name and value:

seq config -k api.listenUris -v,
seq config -k cache.systemRamTarget -v 0.8
seq config -k storage.prefferedEngine --clear
seq restart

Settings that accept multiple values can be specified by listing values separated by a comma ,.

Values can be reset to their defaults by specifying --clear and the setting name.


Seq reads settings Seq.json at startup, so the Seq service must be restarted before changes will take effect.


Settings can be viewed and updated from the command-line using the seq config command. Settings also support overrides in environment variables. The matching environment variable name for each setting is shown in the detailed documentation below.


If True, the Windows local security authority will be used instead of LDAP in some features (experimental).

The value can be overridden using the SEQ_API_AVOIDLDAP environment variable.


The address that the server can be accessed on externally.

The value can be overridden using the SEQ_API_CANONICALURI environment variable.


Origins from which the full API will be accessible using CORS. Note that this is not necessary for ingestion - events can always be sent to the ingestion endpoint using CORS.

The value can be overridden using the SEQ_API_CORSALLOWEDORIGINS environment variable.


Origins that may embed the Seq UI within an <iframe>.

The value can be overridden using the SEQ_API_FRAMEALLOWFROM environment variable.


If non-null, this will override the various session expiry timeouts used by the different authentication providers.

The value can be overridden using the SEQ_API_HARDSESSIONEXPIRYSECONDS environment variable.


The includeSubdomains field set in the HSTS header, if enabled.

The value can be overridden using the SEQ_API_HSTSINCLUDESUBDOMAINS environment variable.


The max-age specified in the HSTS header, if enabled.

The value can be overridden using the SEQ_API_HSTSMAXAGE environment variable.


If non-null, this will set an expiry timeout that will revoke user sessions after a period of inactivity.

The value can be overridden using the SEQ_API_IDLESESSIONEXPIRYSECONDS environment variable.


If non-null, only event ingestion will be allowed on the specified port. Note that a corresponding entry must exist in api.listenUris.


Make sure that an entry for the port including the protocol and hostname to listen on is present in api.listenUris in addition to the ingestionPort setting.

The value can be overridden using the SEQ_API_INGESTIONPORT environment variable.


The authentication scheme used for Windows authentication. IntegratedWindowsAuthentication (the default) and Negotiate are supported.

The value can be overridden using the SEQ_API_INTEGRATEDAUTHENTICATIONSCHEME environment variable.


The addresses that the server will listen on. The first entry listed will be used as the default when generating URIs for apps and notifications.

The value can be overridden using the SEQ_API_LISTENURIS environment variable.


Whether to redirect HTTP requests to the first HTTPS endpoint listed in api.listenUris. If set to True, the HSTS header will also be set.

The value can be overridden using the SEQ_API_REDIRECTHTTPTOHTTPS environment variable.


Periodically compact the .NET large object heap to reduce fragmentation. May result in short service availability pauses (experimental).

The value can be overridden using the SEQ_CACHE_COMPACTLARGEOBJECTHEAP environment variable.


Seq uses RAM heavily to speed up query processing. On shared machines (or local developer workstations) it may be desirable to limit this behavior. Specifying a smaller fractional value here (e.g. 0.5) will cause Seq to release memory once system memory usage surpasses the threshold (e.g. 50%). If the value specified is greater than 1.0, it will betreated as an absolute byte value.

The value can be overridden using the SEQ_CACHE_SYSTEMRAMTARGET environment variable.


Seq's own internal logging level. Modifying this value may cause significantly higher I/O load and is not recommended.

The value can be overridden using the SEQ_DIAGNOSTICS_INTERNALLOGGINGLEVEL environment variable.


The location for Seq's own internal log files.

The value can be overridden using the SEQ_DIAGNOSTICS_INTERNALLOGPATH environment variable.


Send Seq's internal logs to another Seq server.

The value can be overridden using the SEQ_DIAGNOSTICS_INTERNALLOGSERVERURL environment variable.


Interval (seconds) at which Seq will write metrics information to its internal log file.

The value can be overridden using the SEQ_DIAGNOSTICS_METRICSSAMPLINGINTERVALSECONDS environment variable.


Send Seq's error telemetry (if enabled) to another Seq server.

The value can be overridden using the SEQ_DIAGNOSTICS_TELEMETRYSERVERURL environment variable.


The priority assigned to storage management and indexing; the default value 0 will cause all required management tasks to proceed normally. Higher values represent the fraction of maintenance time during which these tasks should yield.

The value can be overridden using the SEQ_STORAGE_FLARE_INDEXERPRIORITY environment variable.


The maximum size, in bytes, of the memory map used for each LMDB storage extent.

The value can be overridden using the SEQ_STORAGE_LMDB_EXTENTMAPSIZE environment variable.


The master encryption key used to protect sensitive values in the Seq document store.

Windows: this value is itself encrypted and must be retrieved using the seq show-key command for secure backup.

Linux/macOS: this value is stored unencrypted in Seq.json; use the SEQ_STORAGE_MASTERKEY variable for secure key management.


On Windows, this value cannot be manipulated directly as DPAPI is used to protect the value stored in Seq.json. Use the seq.exe show-key command to retrieve the cleartext key for backup purposes.

The value can be overridden using the SEQ_STORAGE_MASTERKEY environment variable.


Obsolete; use the SEQ_STORAGE_MASTERKEY environment variable to supply the master encryption key.

The value can be overridden using the SEQ_STORAGE_MASTERKEYENVIRONMENTVARIABLENAME environment variable.


The preferred storage engine for new extents.

The value can be overridden using the SEQ_STORAGE_PREFERREDENGINE environment variable.

Seq.json Example

An example Seq.json configuration file is shown below.

  "cache": {
    "systemRamTarget": 0.9,
    "compactLargeObjectHeap": false
  "diagnostics": {
    "internalLogPath": null,
    "internalLoggingLevel": "Verbose",
    "internalLogServerUrl": null,
    "telemetryServerUrl": null,
    "metricsSamplingIntervalSeconds": 300
  "api": {
    "listenUris": [
    "canonicalUri": null,
    "ingestionPort": 45341,
    "corsAllowedOrigins": [],
    "frameAllowFrom": [],
    "integratedAuthenticationScheme": null,
    "avoidLdap": false,
    "redirectHttpToHttps": false,
    "hstsMaxAge": 31536000,
    "hstsIncludeSubDomains": false,
    "hardSessionExpirySeconds": null,
    "idleSessionExpirySeconds": null
  "storage": {
    "masterKey": "pmk.BMAL0P5l+k2aOa1hIsTMLA==",
    "masterKeyEnvironmentVariableName": null,
    "useEnvironmentForMasterKey": false,
    "flare": {
      "indexerPriority": 0.0
    "preferredEngine": null,
    "lmdb": {
      "extentMapSize": 200000000000