Officially out now: The TypeDB 3.0 Roadmap >>

Server configuration

Configuration options

TypeDB uses command line arguments for server configuration. To access the list of acceptable arguments, run locally:

typedb server --help

or see TypeDB CLI arguments below.

All CLI arguments must:

  • start with the double dash prefix --,

  • be separated from their value (if any) by:

    • an equals sign (=),

    • or a whitespace.

Coming soon: config file!

Configuration overview

Server

The server section of the configuration contains network and encryption options. For example, a server can be booted up on 0.0.0.0:1730 by using this command:

typedb server --server.address=0.0.0.0:1730

See the respective section of TypeDB CLI arguments below for details.

Storage

The storage section of the configuration contains the storage layer options.

For production use, it is recommended that the storage.data is set to a path outside the $TYPEDB_HOME (directory with TypeDB server files). This helps to make the process of upgrading TypeDB easier.

See the respective section of TypeDB CLI arguments below for details.

Diagnostics

TypeDB optionally reports anonymous diagnostics to guide the development and optimisation of TypeDB. This data includes unexpected errors and occasional system status updates for number and size of databases, as well as numbers of transactions and queries executed per hour.

To see what information is being reported, enable and access the monitoring Web page of the server (e.g. localhost:4104/diagnostics?format=json).

To configure diagnostics reporting and monitoring, see the respective section of TypeDB CLI arguments below.

Log

Coming soon.

Host machine requirements

Open file limit

To support large data volumes, it is important to check the open file limit the operating system imposes. Some Unix distributions default to 1024 open file descriptors. This can be checked with the following command:

ulimit -n

We recommend this is increased to at least 50 000.

References

TypeDB CLI arguments

The following arguments can be used for TypeDB configuration:

Table 1. Command line arguments
Argument Alias Description

Server

--server.address=<SERVER_ADDRESS>

Server host and port. Default value: 0.0.0.0:1729.

--server.encryption.enabled

Enable in-flight encryption. Do not specify this argument to leave it disabled.

--server.encryption.cert=<FILE>

Encryption certificate in PEM format. Must be supplied if encryption is enabled.

--server.encryption.cert-key=<FILE>

Encryption certificate key. Must be supplied if encryption is enabled.

--server.encryption.root-ca=<FILE>

Encryption CA in PEM format.

Storage

--storage.data=<DIR>

Path to the user data directory. Defaults to within the server distribution under server/data.

Diagnostics

--diagnostics.reporting.metrics=<BOOL>

Enable usage metrics reporting by setting a boolean flag. Default value: true.

--diagnostics.reporting.errors=<BOOL>

Enable critical error reporting by setting a boolean flag. Default value: true.

--diagnostics.monitoring.enable=<BOOL>

Enable a diagnostics monitoring HTTP endpoint by setting a boolean flag. Default value: true.

--diagnostics.monitoring.port=<PORT>

Port on which to expose the diagnostics monitoring endpoint. Default value: 4104.

Common

--help

-h

Show help message.

--version

-V

Print version information and exit.