Schema Files in VerneMQ
During every boot up, VerneMQ will run your vernemq.conf
file against the Schema files of the VerneMQ release. This serves as a validation and as a mechanism to create the timestamped internal config files that you'll find in the generated.configs
directory.
In general, every application of the VerneMQ release has its own schema file in the priv
subdirectory (the only exception is the vmq.schema
file in the file
directory). A my_app.schema
defines all the configuration settings you can use for that application.
And that's almost the only reason to know a bit about schema files: you can browse them for possible settings if you suspect a minor settings is not yet fully documented. Most of the time you'll also find at least a short snippet documenting the setting in the schema.file.
An example from the vmq_server.schema
:
This is a relatively minor feature where you can set a default expiry for API keys. You can determine from the mapping schema that a default is not set. To set the value in the vernemq.conf
file, always use the left-hand name from the mapping in the schema:
You can also see the keyword hidden
in the mapping. This means that the setting will not show up automatically in the vernemq.conf
file and you'll have to add the it manually.