Properties: Panopticon
The majority of configuration options for the server are set in the Panopticon.properties file in the <appdata> directory (e.g., /etc/panopticon/appdata). If this file does not exist when the server starts, it will create it with all default values. When the
server starts after an upgrade, it may add new properties and remove deprecated ones.
You can optionally move sensitive properties like passwords and URLs from this file, where they are stored in clear text, into a file named Secret.properties in the same directory. The Secret.properties file stores values encrypted, and you can manage it with PCLI. A property can only be defined in one of these files at a time.
The following properties can be set in the property files:
Property |
Alert |
Attribute |
alert.creation.only.by.administrators |
Description |
Enable or disable whether only the Administrators can create alerts. |
Default Value |
false |
Property |
Alert |
Attribute |
alert.detailed.logging |
Description |
Enables or disables extra alert logging. |
Default Value |
false |
Property |
Alert |
Attribute |
alert.event.auto_resolve |
Description |
When set to false, the system will not automatically resolve events when alert conditions are no longer true. |
Default Value |
true |
Property |
Alert |
Attribute |
alert.event.history.days |
Description |
Days to keep closed alert events before deletion. |
Default Value |
7 |
Property |
Bookmark Administration |
Attribute |
bookmark.administration.only.by.administrators |
Description |
Set to true if only Administrators should be able to manage bookmarks. |
Default Value |
false |
Property |
Bookmark Administration |
Attribute |
bookmark.show_shared |
Description |
Allows private bookmarking. If set to true, all of the users will be able to view each other’s bookmarks. If set to false, bookmarks will only be viewed by the one |
Default Value |
true |
Property |
Cache |
Attribute |
cache.data.datasource.enabled |
Description |
Enable or disable the caching of the data source. |
Default Value |
true |
Property |
Cache |
Attribute |
cache.data.datasource.size |
Description |
The data source cache size. |
Default Value |
100 |
Property |
Cache |
Attribute |
cache.data.datasource.type |
Description |
The data source cache type.Allowed values: MEMORY, NONE |
Default Value |
MEMORY |
Property |
Cache |
Attribute |
cache.data.datatable.enabled |
Description |
Enable or disable the caching of the data table. |
Default Value |
true |
Property |
Cache |
Attribute |
cache.data.datatable.size |
Description |
The data table cache size. |
Default Value |
100 |
Property |
Cache |
Attribute |
cache.data.datatable.type |
Description |
The data table cache type.Allowed values: MEMORY, NONE |
Default Value |
MEMORY |
Property |
Cache |
Attribute |
cache.data.query.enabled |
Description |
Enable or disable the caching of data query. |
Default Value |
true |
Property |
Cache |
Attribute |
cache.data.query.size |
Description |
The data query cache size. |
Default Value |
100 |
Property |
Cache |
Attribute |
cache.data.query.type |
Description |
The data query cache type.Allowed values: MEMORY, NONE |
Default Value |
MEMORY |
Property |
Cache |
Attribute |
cache.plugin.id |
Description |
The ID of the plugin that will be used to store data. Possible values: BinaryTableFile-Cache. |
Default Value |
BinaryTableFile-Cache |
Property |
Cache |
Attribute |
cache.purge.condition |
Description |
Defines the condition for when the cache will be purged. Allowed values: NONE, MEMORY |
Default Value |
MEMORY |
Property |
Cache |
Attribute |
cache.purge.condition.memory.threshold |
Description |
Defines a percentual memory threshold for cache purging, when the cache.purge.condition = MEMORY. |
Default Value |
80 |
Property |
Cache |
Attribute |
cache.purge.enabled |
Description |
Enables scheduled cache purging. |
Default Value |
true |
Property |
Cache |
Attribute |
cache.schedule.clear.enabled |
Description |
Enable the cache clearing schedule. This is scheduling the clear cache operation which will remove all the expired cache entries. |
Default Value |
true |
Property |
Cache |
Attribute |
cache.service.enabled |
Description |
Enables or disables the service cache. |
Default Value |
true |
Property |
Cache |
Attribute |
cache.service.type |
Description |
The service cache mechanism being used. |
Default Value |
IN_MEMORY |
Property |
Client Cache |
Attribute |
client.cache.control.age.max |
Description |
Controls the cache-control max-age header for static content. |
Default Value |
31536000 |
Property |
|
Attribute |
client.filepath.upload.disabled |
Description |
If set to true, the Upload File option will not be available. |
Default Value |
false |
Property |
Client Data |
Attribute |
client.data.load.transport |
Description |
Configure the transportation protocol for loading data from the Web client. Possible values: WEBSOCKET, LONG_POLLING. NOTE: This property has been deprecated. Refer to Setting the Transportation Protocol for more information. |
Default Value |
WEBSOCKET |
Property |
Server Cluster |
Attribute |
cluster.bully.bind |
Description |
The URL of the server in bully mode. This should be the URL to the Panopticon server web application on the server itself, by which is reachable from the other servers. |
Default Value |
|
Property |
Server Cluster |
Attribute |
cluster.bully.boot |
Description |
Comma-separated list of server URLs in bully mode. At least one of these servers should be running at all time for the bully mode to work correctly. The URLs should be the same as the cluster.bully.bind value on each |
Default Value |
|
Property |
Server Cluster |
Attribute |
cluster.bully.id |
Description |
The unique server ID in bully mode. Can be any string, but do not change it after the server has participated in a cluster -- the other servers will store it and expect it to identify the same server in the future. The running server with the lowest ID lexicographically will be leader. |
Default Value |
|
Property |
Server Cluster |
Attribute |
cluster.fixed.leader |
Description |
The leader URL in fixed mode. This should be the URL to the Panopticon server web application on the preset leader server, by which it is reachable from the follower servers. Leave blank on the leader server itself. |
Default Value |
|
Property |
Server Cluster |
Attribute |
cluster.kubernetes.container_name |
Description |
Optionally name of the container that runs the Panopticon server, if the pod also runs other containers. If left blank, the first container will be used. |
Default Value |
|
Property |
Server Cluster |
Attribute |
cluster.kubernetes.id |
Description |
Set to the name of the pod that runs the container. |
Default Value |
(blank) |
Property |
Server Cluster |
Attribute |
cluster.kubernetes.label_selector |
Description |
Standard Kubernetes label selector that should only match the pods that are running the server. |
Default Value |
|
Property |
Server Cluster |
Attribute |
cluster.kubernetes.peer_path |
Description |
Path to the web application on each server. For example, "panopticon/", or "/" if you have deployed to Tomcat's root. |
Default Value |
|
Property |
Server Cluster |
Attribute |
cluster.mode |
Description |
NONE (default), FIXED, BULLY, or KUBERNETES |
Default Value |
|
Property |
Server Cluster |
Attribute |
cluster.shared.secret |
Description |
Any alphanumeric string. Secret used to encrypt a challenge in peer-to-peer communication handshake. Needs to be the same, and non-empty, on all connected servers. |
Default Value |
|
Property |
Server Cluster |
Attribute |
cluster.shared.store.shared_directory.path |
Description |
Shared store location in SHARED_DIRECTORY mode. This path must be reachable by all connected servers, and must point to the same physical directory on all of them. |
Default Value |
|
Property |
Server Cluster |
Attribute |
cluster.shared.store.type |
Description |
PRIVATE_DIRECTORY (default) or SHARED_DIRECTORY The shared store is used to store information that should be synchronized between servers but is not content, for example authentication tokens. If you have a tightly-coupled cluster, e.g., behind a load balancer, it is recommended that you configure this as a shared directory. |
Default Value |
|
Property |
Altair AI Hub Connector Endpoint Listing |
Attribute |
connector.aihub.client.id |
Description |
Application (client) ID assigned at the Altair AI Hub. |
Default Value |
|
Property |
Altair AI Hub Connector Endpoint Listing |
Attribute |
connector.aihub.client.secret |
Description |
Your application’s client secret created at the Altair AI Hub. |
Default Value |
|
Property |
Altair AI Hub Connector Endpoint Listing |
Attribute |
connector.aihub.grant_type |
Description |
The grant type to be used to make token request. |
Default Value |
refresh_token |
Property |
Altair AI Hub Connector Endpoint Listing |
Attribute |
connector.aihub.url |
Description |
The root URL to Altair AI Hub, where token and endpoint request are sent. |
Default Value |
|
Property |
AMPS Connector Custom Authentication |
Attribute |
connector.amps.authenticators |
Description |
This property is required when a custom authenticator is needed for AMPS connection. A custom authenticator needs be implemented as java .JAR file. The property excepts a JSON object, where key is fully qualified name of the Authenticator Java class, and values are list of constructor parameter names, e.g., “{"com.panopticon.examples.amps.AMPSClientAuthenticator":["User","Shared Key"]}” |
Default Value |
|
Property |
Connector Column Generator |
Attribute |
connector.column_generator.max_columns |
Description |
Controls the maximum number of columns generated by the text- based connectors/parsers. Currently only used by JSON connector and parser. |
Default Value |
100 |
Property |
Connector File Path |
Attribute |
connector.common.filepath.link.disabled |
Description |
If set to true, the Link to File option will not be available. |
Default Value |
false |
Property |
Host Lookup |
Attribute |
connector.kdb.host.lookup.script |
Description |
Full path of the shell script file that is accessible on the server. When set, before making a new kdb+ connection, this script is executed to get the host info. This { "host": "localhost", "port": 5001, "username": "", "password": "" } NOTE: Starting with the 21.2 release, the the kdb+ connection pool feature of Panopticon (kdb.connection.pool.xx) can be used together wth the host lookup. So any new connection request from the pool, will first execute the script set here, to get the host info before the pool is looked up for available connections. Examples:
|
Default Value |
|
Property |
Host Lookup |
Attribute |
connector.kdb.host.lookup.script.arguments |
Description |
Delimited set of arguments to be passed to the script when it is executed. ’{host},{port},{userid},{password}’ This property can be extended or updated if you want to pass other data table parameters as arguments. System parameter like {_user_id} or {_workbook_folder}, if added to the data table, can also be used. If the value of some parameter is null or empty |
Default Value |
{host},{port},{userid},{password} |
Property |
Host Lookup |
Attribute |
connector.kdb.host.lookup.script.arguments.delimiter |
Description |
Used to split the arguments set at above property. |
Default Value |
, |
Property |
Host Lookup |
Attribute |
connector.kdb.host.lookup.script.timeout |
Description |
The timeout (in milliseconds) to wait for the host lookup script to run and return the host info. |
Default Value |
5000 |
Property |
Amazon Kinesis – Data Streams connector |
Attribute |
connector.kinesis.datastreams.accesskeyid |
Description |
The Access Key ID from the AWS account. |
Default Value |
|
Property |
Amazon Kinesis – Data Streams connector |
Attribute |
connector.kinesis.datastreams.secretaccesskey |
Description |
The Secret Access Key ID from the AWS account. |
Default Value |
|
Property |
OAuth Token URL |
Attribute |
connector.oauth.tokenurl |
Description |
Sets the server-wide token URL. |
Default Value |
http\://localhost\:5000/oauth/token |
Property |
OneDrive connector |
Attribute |
connector.onedrive.client.id |
Description |
Application (client) ID assigned by the Azure administration portal. |
Default Value |
|
Property |
OneDrive connector |
Attribute |
connector.onedrive.client.secret |
Description |
Your application’s client secret created in the application registration portal. |
Default Value |
|
Property |
OneDrive connector |
Attribute |
connector.onedrive.root.url |
Description |
The Microsoft Graph API root URL. |
Default Value |
https\://graph.microsoft.com/v1.0/me/drive/root |
Property |
OneDrive connector |
Attribute |
connector.onedrive.tenant.id |
Description |
Controls who can sign into the application. The allowed values are:
|
Default Value |
|
Property |
Python connector |
Attribute |
connector.python.host |
Description |
The default Python Pyro instance host address. NOTES: For connector.python.host, connector.python.password, connector.python.port, and connector.python.serializertype properties:
These default Panopticon Real Time connection properties will override old Python connection settings. |
Default Value |
|
Property |
Python connector |
Attribute |
connector.python.password |
Description |
The default HMAC Key. |
Default Value |
|
Property |
Python connector |
Attribute |
connector.python.port |
Description |
The default Python Pyro host port. |
Default Value |
|
Property |
Python connector |
Attribute |
connector.python.serializertype |
Description |
The default Python serialization type. Possible values are serpent or pickle. |
Default Value |
|
Property |
Rserve connector |
Attribute |
connector.rserve.host |
Description |
The default Rserve host address. NOTES: For connector.rserve.host, connector.rserve.password, connector.rserve.port, and connector.rserve.userid properties:
These default Panopticon Real Time connection properties will override old Rserve connection settings. |
Default Value |
|
Property |
Rserve connector |
Attribute |
connector.rserve.password |
Description |
The default password that will be used to connect to the Rserve service. |
Default Value |
|
Property |
Rserve connector |
Attribute |
connector.rserve.port |
Description |
The default Rserve host port. |
Default Value |
|
Property |
Rserve connector |
Attribute |
connector.rserve.userid |
Description |
The default user Id that will be used to connect to the Rserve service. |
Default Value |
|
Property |
Data Store |
Attribute |
datastore.connection.schema |
Description |
Name of the database schema to be used for creating or managing objects inside database. |
Default Value |
dbo |
Property |
Data Store |
Attribute |
datastore.type |
Description |
Controls which data store connector should be used. Valid values are MonetDB, MSSQLServer and PostgreSQL. |
Default Value |
MonetDB |
Property |
Data Store |
Attribute |
datastore.connection.jndi |
Description |
JNDI resource name for the connection e.g., jdbc/MyDB. More details on how to configure JNDI is at JNDI Connection Details section. |
Default Value |
|
Property |
Data Store |
Attribute |
datastore.connection.url |
Description |
JDBC connection URL for the database e.g., jdbc:monetdb://localhost:49153/PanopticonDataStore This property value is discarded If datastore.connection.jndiproperty is set. |
Default Value |
|
Property |
Data Store |
Attribute |
datastore.connection.driverclassname |
Description |
Fully qualified Java class name of the JDBC driver used for the connection. |
Default Value |
org.monetdb.jdbc.MonetDriver |
Property |
Data Store |
Attribute |
datastore.connection.username |
Description |
Username for the connection. Only required when using connection URL. |
Default Value |
|
Property |
Data Store |
Attribute |
datastore.connection.password |
Description |
Password for the connection. Only required when using connection URL. |
Default Value |
|
Property |
REST Documentation |
Attribute |
documentation.enabled |
Description |
Enable or disable the OpenAPI Specification documentation for the REST interface. |
Default Value |
false |
Property |
Alert |
Attribute |
email.address |
Description |
The email address where the alert will be sent from. |
Default Value |
|
Property |
|
Attribute |
email.host |
Description |
The host name used by the email server. |
Default Value |
|
Property |
Alert |
Attribute |
email.password |
Description |
The email password, if available. NOTE: When using a Gmail account, you must use an app password to authenticate with the Gmail SMTP server. See Sign in with app passwords for more information. |
Default Value |
|
Property |
|
Attribute |
email.port |
Description |
The port number used by the email server. |
Default Value |
|
Property |
|
Attribute |
email.security.mode |
Description |
The security mode used when sending emails. Possible values: NONE, SSL, TLS. |
Default Value |
NONE |
Property |
|
Attribute |
email.sender_name |
Description |
Sender Name alias to use when sending email. |
Default Value |
|
Property |
|
Attribute |
email.username |
Description |
Email account username. |
Default Value |
|
Property |
Error Message |
Attribute |
error.default.message |
Description |
Defines a generic error message override. |
Default Value |
|
Property |
Export File Path |
Attribute |
export.filesystem_copy.path |
Description |
If set to a directory, whether existing or not, then:
If not set (blank), the server works the same way as before. |
Default Value |
|
Property |
Image export |
Attribute |
export.image.height |
Description |
The default height for an exported image. |
Default Value |
768 |
Property |
Image export |
Attribute |
export.image.width |
Description |
The default width for an exported image. |
Default Value |
1024 |
Property |
File Upload |
Attribute |
file.upload.size.max.bytes |
Description |
Limit for files size (in bytes) to be uploaded through the web browser (i.e., workbooks, streams applications, streams data sources). |
Default Value |
30000000 |
Property |
Copy Image |
Attribute |
image.client.timeout |
Description |
Specifies a timeout (in milliseconds) when producing an image or PDF. If it takes longer than the timeout, the process will be interrupted, and the image/PDF will |
Default Value |
600000 |
Property |
kdb+ Connection Pooling |
Attribute |
kdb.connection.pool.max.size |
Description |
The maximum number of connections that will be kept open for reuse for each kdb+ server (among kdb+ servers that use the same username, password, TLS flag, and timeout), so that established connections can be reused when subsequent queries come in for the same server. A benefit of the connection pool is that it can reduce latency. Setting this property to 0 disables the connection pool. |
Default Value |
10 |
Property |
kdb+ Connection Pooling |
Attribute |
kdb.connection.pool.ttl |
Description |
Time to live in milliseconds for each connection instance created. |
Default Value |
30000 |
Property |
Licensing |
Attribute |
license.hwu.hosted |
Description |
Boolean stating if you wish to use Managed or Local Altair Units licensing. Set to true if you wish to use hosted licensing. |
Default Value |
false |
Property |
Licensing |
Attribute |
license.hwu.hosted.authorization.password |
Description |
Password to the Altair One account. |
Default Value |
|
Property |
Licensing |
Attribute |
license.hwu.hosted.authorization.token |
Description |
An authorization token generated through the Altair One admin portal. Used to authorize a machine to the managed Altair Units system. |
Default Value |
|
Property |
Licensing |
Attribute |
license.hwu.hosted.authorization.username |
Description |
Username to the Altair One account. |
Default Value |
|
Property |
Licensing |
Attribute |
license.hwu.uri |
Description |
The path where the License Server is running e.g., 6200@191.255.255.0 where the syntax is PORTNUMBER@HOST. If multiple servers are specified, use the ‘;’ semicolon separator sign for Windows and the ‘:’ colon separator sign for Linux. NOTE: If value is not set in Panopticon.properties, the environment variable ALTAIR_LICENSE_PATH serves as the backup path and will be used. |
Default Value |
|
Example |
For Windows: license.hwu.uri=6200@192.168.5.51;6200@192.168.5.52 For Linux: license.hwu.uri=6200@192.168.5.51:6200@192.168.5.52 |
Property |
Licensing |
Attribute |
license.hwu.use_client_timezone |
Description |
Determines how the ALJDK should process the timezone details. If set to true, the ALJDK will process the timezone details sent by Panopticon client to the Panopticon server. If set to false, the Panopticon server timezone is used. |
Default Value |
true |
Property |
Licensing |
Attribute |
license.mode |
Description |
The license mode. Possible values are: FILE or HWU. To use the Altair Units license, set this property to HWU. |
Default Value |
FILE |
Property |
Log level |
Attribute |
logger.level.file |
Description |
Controls the level that is logged to file. |
Default Value |
INFO |
Property |
Server Metrics |
Attribute |
metrics.authorization.level |
Description |
Specifies the required authorization level to get server metrics. Available values are ANONYMOUS, VIEWER, DESIGNER, ADMINISTRATOR. NOTE: This property is case sensitive. |
Default Value |
ADMINISTRATOR |
Property |
Server Metrics |
Attribute |
metrics.collection.rate |
Description |
Specifies the rate at which metrics are collected in milliseconds. |
Default Value |
1000 |
Property |
Server Metrics |
Attribute |
metrics.file.flush.rate |
Description |
Specifies how often metrics should be saved to disk in milliseconds. Only used if the metrics.publisher.type is set to FILE. |
Default Value |
10000 |
Property |
Server Metrics |
Attribute |
metrics.memory.queue.size |
Description |
Specifies how many metric entries are stored in memory. When the number of metrics |
Default Value |
100 |
Property |
Server Metrics |
Attribute |
metrics.publisher.configuration |
Description |
Specifies the id for which metric publisher configuration to use. |
Default Value |
|
Property |
Server Metrics |
Attribute |
metrics.publisher.type |
Description |
Specifies the current metric publisher that is used. Available values are NONE, MEMORY, FILE, EMAIL, INFLUX_DB, JDBC, KAFKA, KDB, MQTT, REST, TEXT. |
Default Value |
MEMORY |
Property |
Bookmarks repository |
Attribute |
repository.import.bookmarks.paths |
Description |
Will import bookmarks from the old format into the repository. Will override any existing bookmarks inside the repository. Must be set to an absolute path. Only bookmarks for workbooks that exists inside the repository will be imported. |
Default Value |
|
Property |
Workbook repository |
Attribute |
repository.migrate.archive.path |
Description |
Use this property if you have an older (pre 2020) server and wish to start the new server with the same workbook content as the old one, and also to import the workbooks' change history from the old server. Set the property to the absolute path to the old server's <AppData>/Archive/ directory, delete the new server's <AppData>/.repository/ directory, and start the new server. You typically use this property with the repository.migrate.workbooks.path property. See also the section on content migration. |
Default Value |
|
Example |
/etc/panopticon/appdata/Archive |
Property |
Bookmarks repository |
Attribute |
repository.migrate.bookmarks.path |
Description |
Will migrate bookmarks from the old format into the repository if there are no bookmarks inside the repository yet. Set to an absolute path or to the default Bookmarks folder. Only bookmarks for workbooks that exists inside the repository will be migrated. NOTE: If you do not wish to migrate bookmarks or already have bookmarks in the repository, set this property to blank to avoid a warning on startup. |
Default Value |
Bookmarks |
Property |
Workbook repository |
Attribute |
repository.migrate.data.extracts.path |
Description |
Starting with version 21.0, data extracts are stored inside the repository. If this property is set to GlobalCaches (default value), or to an absolute path, the server will migrate data extracts into the repository on startup as long as the repository does not contain any previous data extracts. NOTE: If you do not wish to migrate data extracts or already have data extracts in the repository, set this property to blank to avoid a warning on startup. |
Default Value |
GlobalCaches |
Property |
Data Templates Repository |
Attribute |
repository.migrate.datatable.templates.path |
Description |
Will migrate data table templates from the old format into the repository if there are no data table templates inside the repository yet. Set to an absolute path or to the default Datatables folder. NOTE: If you do not wish to migrate data table templates or already have data table templates in the repository, set this property to blank to avoid a warning on startup. |
Default Value |
Datatables |
Property |
Themes repository |
Attribute |
repository.migrate.themes.path |
Description |
Will migrate themes from the old format into the repository if there are no themes inside the repository yet. Set to an absolute path or to the default Themes folder. NOTE: If you do not wish to migrate themes or already have themes in the repository, set this property to blank to avoid a warning on startup. |
Default Value |
Themes |
Property |
Workbook repository |
Attribute |
repository.migrate.workbooks.path |
Description |
Use this property if you have an older (pre 2020) server and wish to start the new server with the same workbook content as the old one. Set the property to the absolute path to the old server's <AppData>/Workbooks/ directory, delete the new server's <AppData>/.repository/ directory, and start the new server. See also the section on content migration. |
Default Value |
|
Example |
/etc/panopticon/appdata/Workbooks |
Property |
Workbook repository |
Attribute |
repository.pack.enabled |
Description |
The repository tracks all changes to all workbooks. If you have a very large number of workbooks, or have kept the repository for a very long time, the sheer number of files inside the .repository subdirectory could cause the repository to become slower. Set this property to true to have the repository pack all the files into |
Default Value |
false |
Property |
Repository |
Attribute |
repository.startup.apply.permissions.clean |
Description |
Use this property with the repository.startup.apply.permissions.path to reset all existing workbook permissions on the server before applying the template. If you set it to true, the server will remove all permissions, then give users full permissions to their private folders, and the "Everyone" group full permissions to public folders. |
Default Value |
false |
Property |
Repository |
Attribute |
repository.startup.apply.permissions.create |
Description |
Use this property with the repository.startup.apply.permissions.path to create empty workbook folders for any folders that are in the template file but do not yet exist on the server. If you don't set it to true, these folders from the template will be ignored. |
Default Value |
true |
Property |
Repository |
Attribute |
repository.startup.apply.permissions.path |
Description |
Use this property to make the server apply workbook folder permissions from a template JSON file on startup. Workbook folder permissions in the template will overwrite any existing permissions on the server. This property will not migrate permissions from an older (pre 2020) server, you need to use the PCLI convertpermissions to generate a template file from the old permissions first. See also repository.startup.apply.permissions.clean and repository.startup.apply.permissions.create. |
Default Value |
|
Property |
Repository |
Attribute |
repository.startup.filesystemcheck |
Description |
If set to true, server runs on startup to verify the repository integrity and reports any of the following issues:
NOTE: There may be dangling files in the /objects/ directory or those that are not in use. These files are typically results of failed saves and/or sync conflicts. The check may or may not detect deleted or modified dangling files, but that is not critical. |
Default Value |
false |
Property |
Repository Import |
Attribute |
repository.startup.import.paths |
Description |
NOTE: Use this property to make the server import content at startup. This is imported on top of the existing content and will always overwrite anything that is already there. This property can be useful for example, if you have multiple servers with different content but you want the latest version of a standard set of workbooks to be deployed on all of them. This property only has effect on a stand-alone or leader server. This property is the list of paths to directories and files, separated by the system specific path separator “;” on Windows and “:” on Linux. Each directory is scanned and imported keeping its local tree structure. For example, workbooks to be imported are placed in a folder and in this property, the absolute path to that folder is specified. ADDITIONAL NOTES:
Permissions are not supported, and any folders created will have “SYSTEM” as owner. |
Default Value |
|
Property |
Request parameter mapping |
Attribute |
request.cookie.parameters.mapping.entry.delimiter |
Description |
The delimiter that separates the configuration entries. This property will only affect incoming parameters. |
Default Value |
, (Comma) |
Property |
Request parameter mapping |
Attribute |
request.cookie.parameters.mapping.optional |
Description |
The parameters that could be updated with certain cookie values. This property will only affect incoming parameters. The operation will not fail if the cookie values are not present in the request. The parameters will keep their default value instead of the configured cookie value if the cookie is not present. The property should |
Default Value |
|
Property |
Request parameter mapping |
Attribute |
request.cookie.parameters.mapping.required |
Description |
The parameters that are required to be updated with certain cookie values. This property will only affect incoming parameters. The operation will fail if configured cookie values are not present in the request. The property should be formatted as follows: Parameter name (Value delimiter) Cookie name. |
Default Value |
|
Property |
Request parameter mapping |
Attribute |
request.cookie.parameters.mapping.value.delimiter |
Description |
The delimiter that separates the parameter name and the cookie name. This property will only affect incoming parameters. |
Default Value |
: (Colon) |
Property |
Request parameter mapping |
Attribute |
request.header.parameters.mapping.entry.delimiter |
Description |
The delimiter that separates the configuration entries. This property will only affect incoming parameters. |
Default Value |
, (Comma) |
Property |
Request parameter mapping |
Attribute |
request.header.parameters.mapping.optional |
Description |
The parameters that could be updated with certain header values. This property will only affect incoming parameters. The operation will not fail if the header values are not present in the request. The parameters will keep their default value instead of the configured header value if the header is not present. The property should be formatted as follows: Parameter name (Value delimiter) Header name. |
Default Value |
|
Property |
Request parameter mapping |
Attribute |
request.header.parameters.mapping.required |
Description |
The parameters that are required to be updated with certain header values. This property will only affect incoming parameters. The operation will fail if a configured header values are not present in the request. The property should be formatted as follows: Parameter name (Value delimiter) Header name. |
Default Value |
|
Property |
Request parameter mapping |
Attribute |
request.header.parameters.mapping.value.delimiter |
Description |
The delimiter that separates the parameter name and the header name. This property will only affect incoming parameters. |
Default Value |
: (Colon) |
Property |
Response parameter mapping |
Attribute |
response.operation.parameters.mapping.entry.delimiter |
Description |
The delimiter that separates the configuration entries. This property will only affect outgoing parameters. |
Default Value |
, (Comma) |
Property |
Response parameter mapping |
Attribute |
response.operation.parameters.mapping.optional |
Description |
The parameters that could be updated with certain Header values. This property will only affect outgoing parameters. The operation will not fail if the Header values are not present in the request. The parameters will keep their default value instead of the configured Header value if the Header is not present. The property should |
Default Value |
|
Property |
Response parameter mapping |
Attribute |
response.operation.parameters.mapping.required |
Description |
The parameters that are required to be updated with certain Header values. This property will only affect outgoing parameters. The operation will fail if configured Header values are not present in the request. The property should be formatted as follows: Parameter name (Value delimiter) Header name. |
Default Value |
|
Property |
Response parameter mapping |
Attribute |
response.operation.parameters.mapping.value.delimiter |
Description |
The delimiter that separates the parameter name and the Header name. This property will only affect incoming parameters. |
Default Value |
: (Colon) |
Property |
REST |
Attribute |
rest.response.error.stacktrace.included |
Description |
Include the error stack trace in REST responses. |
Default Value |
false |
Property |
Compatibility |
Attribute |
server.force_downgrade |
Description |
The server normally refuses to start if it detects that the AppData directory has been used by a server with a newer version. This is because downgrading content and other AppData files is not supported and can cause irreversable issues. You can set this property to true to force the server to start anyway, but it is strongly recommended that you do not. |
Default Value |
false |
Property |
|
Attribute |
server.host |
Description |
The server endpoint address. This will be used to generate links in emails sent by the server, so it should be the server's or load balancer's public URL and needs to be resolvable from the email recipient's machine. For example: server.host=http://www.company.com/dashboards/ |
Default Value |
|
Property |
PDF and Image generation |
Attribute |
server.host.internal |
Description |
The local server endpoint address. To generate PDFs and images, the server fires up an external process which then makes HTTP calls to the server itself. This URL needs to be resolvable on the server itself. For example: server.host.internal=http://127.0.0.1:8080/panopticon/ |
Default Value |
|
Property |
Server |
Attribute |
server.id |
Description |
Specifies an id for the current server. The value of this property will be part of each metric entry so that it can be tied to a specific server if a server cluster is used. If no value is specified, the MAC address of the localhost network will be attempted to be used to identify the server. If this is not possible, a UUID will be generated. |
Default Value |
|
Property |
SOAP |
Attribute |
soap.enabled |
Description |
Enable or disable the SOAP interface |
Default Value |
true |
Property |
Data table regression testing |
Attribute |
startup.regression.datatable.exclude.folders |
Description |
Comma-separated list of folders that will be excluded in the testing. Use this property in combination with the startup.regression.datatable.include.folders property to control which workbooks to include in the testing. For example, you can set startup.regression.datatable.include.folders to "pub\\" and startup.regression.datatable.exclude.folders to "pub\\examples\\,pub\\temp\\". |
Default Value |
|
Property |
Data table regression testing |
Attribute |
startup.regression.datatable.include.folders |
Description |
Comma-separated list of folders to test. The default is blank, which means the root folder and all workbooks will be tested. If you list folders here, then only the data tables in workbooks in these folders will be tested, unless also excluded. Folder paths should include a trailing backslash, and you need to use double backslashes since this is the escape character in Java property files. For example, to only include prod and qa\final, you should set the property to "prod\\,qa\\final\\" (without quotes). |
Default Value |
|
Property |
Data table regression testing |
Attribute |
startup.regression.datatable.runonce |
Description |
If set to true, the server will run a data table regression test during the next startup. The property is immediately reset to false, so you need to set it to true again to run another test. NOTE: You can set the property through an environment variable if you want to force the server to run it on every startup. |
Default Value |
false |
Property |
Authorization |
Attribute |
statistics.authorization.level |
Description |
Allows users to set the authorization level for the statistics and diagnostic REST services. Possible values include: ANONYMOUS, VIEWER, DESIGNER, ADMINISTRATOR. NOTE: This property is case sensitive. |
Default Value |
ADMINISTRATOR |
Property |
Statistics |
Attribute |
statistics.accumulated.enabled |
Description |
By default, the server accumulates statistics from every run into files in <AppData>/Statistics/, e.g., WorkbookStatistics_Accumulated.json. You can delete these files if you are not interested in this information, or you can set this property to false to disable the accumulation completely. |
Default Value |
true |
Property |
Subscription |
Attribute |
subscription.broadcasting.pool.max.size |
Description |
The maximum number of threads for the broadcasting thread pools of refresh events. The default value is empty, which means that there is no limit. Any value less than 1 also means that there is no limit. When setting a max value for the thread pools, it means that the pool cannot create more than that number of threads. If there are more concurrent events handled by the thread pools than there are threads, they are queued until a thread becomes available. The thread pools are also configured to only increase the pool size if all threads are busy and a new event needs to be processed. If a thread is idle more than 1 minute, it will be removed from the pool and the size of the pool thereby decreases. Any subscription for a static data source are scheduled to refresh each X seconds (based of the refresh period of the datatable) using the TaskScheduled built in to Spring. If multiple subscriptions with the same data query tries to load data at the same time, only one thread will actually load the data. The rest of the subscriptions are queued. When the data is loaded all waiting subscriptions will be given the same data set that are then broadcasted to their respective client. |
Default Value |
|
Property |
Subscription |
Attribute |
subscription.compression.delta.enabled |
Description |
With delta compression, the server only sends the difference from the last data result on each refresh. For data where only a fraction changes on each refresh, this means much smaller response messages. The trade-offs are that both client and server need to keep the last result to calculate the difference and apply it, and that this operation takes some additional time both on the server and the client. In rare cases, delta compression may worsen performance, e.g., if you have a large data set with very high refresh rate and a large portion of the data changes on each refresh. You can then disable delta processing completely by setting this property to false. |
Default Value |
true |
Property |
Subscription |
Attribute |
subscription.compression.enabled |
Description |
Enable or disable compression and encoding of subscription broadcast messages. |
Default Value |
true |
Property |
Subscription |
Attribute |
subscription.congestion.control.enabled |
Description |
When the server loads data for a subscription, it checks that the previous data load for it has completed. If not, it might be a sign that the refresh rate is set too high on the data table. If this happens subscription.maximum.failure times in a row, the server will cancel the subscription. Set this property to false to disable this behavior. |
Default Value |
true |
Property |
Subscription |
Attribute |
subscription.data.loading.pool.max.size |
Description |
The maximum number of threads for loading thread pools of refresh events. The default value is empty, which means that there is no limit. Any value less than 1 also means that there is no limit. When setting a max value for the thread pools, it means that the pool cannot create more than that number of threads. If there are The thread pools are also configured to only increase the pool size if all threads are busy and a new event needs to be processed. If a thread is idle more than 1 minute, it will be removed from the pool and the size of the pool thereby decreases. Any subscription for a static data source is scheduled to refresh each X seconds (based of the refresh period of the data table) using the TaskScheduled built into Spring. If multiple subscriptions with the same data query tries to load data at the same time, only one thread will actually load the data. The rest of the subscriptions are queued. When the data is loaded all waiting subscriptions will be given the same data set that are then broadcasted to their respective client. |
Default Value |
|
Property |
Subscription |
Attribute |
subscription.data_log.always_on |
Description |
When set to true, the data log is always passed from server to client if the user is a Designer or Admin on the server. Previously, the data log would only be passed for workbooks in design mode. The data log will be passed also when the data request fails. The “Invalid Configuration” message shown in the visualization will show a “Data Log” button, which will display the relevant logs and error message. NOTE: The actual passing of runtime exception is currently implemented in the Kdb+ connector only. The benefit of running a server with subscription.data.log.always_on=true is that, the data log is more easily accessed and can be viewed both as success and failure. The data log can also be viewed without having Write permissions on the folder where NOTE: Viewer users are not able to view the Data Log, only Designers and Admins. |
Default Value |
false |
Property |
Subscription |
Attribute |
subscription.limitation.action |
Description |
Controls the behavior when the subscription.limitation.limit is reached. Allowed values: EXCEPTION, PURGE |
Default Value |
EXCEPTION |
Property |
Subscription |
Attribute |
subscription.limitation.enabled |
Description |
Enables limitation of subscriptions. |
Default Value |
false |
Property |
Subscription |
Attribute |
subscription.limitation.limit |
Description |
Defines a subscription limit. |
Default Value |
100 |
Property |
Subscription |
Attribute |
subscription.log.slow.data.loads.seconds |
Description |
Logs a subscription that has been loading data for more than X seconds at a WARNING level. NOTES:
|
Default Value |
60 |
Property |
Subscription |
Attribute |
subscription.maximum.failure |
Description |
The amount of time a subscription is allowed to fail in a row before it should be cancelled. The number will be reset to zero if data loading is successful. The maximum failure limit is used so that invalid subscription will not loop forever and fill the logs with error messages. The value -1 will disable the fail mechanism. This means that a subscription can fail endless of times and not be cancelled. |
Default Value |
5 |
Property |
Subscription |
Attribute |
subscription.purge.condition |
Description |
Defines the condition for when subscriptions will be purged. Allowed values: NONE, MEMORY |
Default Value |
NONE |
Property |
Subscription |
Attribute |
subscription.purge.condition.memory.threshold |
Description |
Defines a percentual memory threshold for subscription purging, when the subscription.purge.condition = MEMORY. |
Default Value |
80 |
Property |
Subscription |
Attribute |
subscription.purge.enabled |
Description |
Enables subscription purging. |
Default Value |
true |
Property |
Subscription |
Attribute |
subscription.purge.post.restart |
Description |
Option to re-start active subscriptions after purge. Only valid when subscription.purge.scope = ALL |
Default Value |
false |
Property |
Subscription |
Attribute |
subscription.purge.rate |
Description |
Defines a fixed rate, in milliseconds. for subscription purging. |
Default Value |
10000 |
Property |
Subscription |
Attribute |
subscription.purge.scope |
Description |
Defines the scope of subscriptions to purge. Allowed values: NON_PERSISTENT_ORPHANS, ALL. |
Default Value |
NON_PERSISTENT_ORPHANS |
Property |
Timeout Session |
Attribute |
timeout.session.enabled |
Description |
Boolean value stating if timeout functionality should be used or not. |
Default Value |
false |
Property |
Timeout Session |
Attribute |
timeout.session.exception.delimiter |
Description |
The delimiter to use for the usernames stated in the timeout.session.exception.usernames property. |
Default Value |
, (comma) |
Property |
Timeout Session |
Attribute |
timeout.session.exception.usernames |
Description |
Usernames that should be excluded from the timeout functionality. Separated by the delimiter stated in the timeout.session.exception.delimiter property. |
Default Value |
|
Property |
Timeout Session |
Attribute |
timeout.session.minutes |
Description |
Minutes of inactivity before a user session is terminated by logging out the user. |
Default Value |
480 |
Property |
Timeout Session |
Attribute |
timeout.session.notification.minutes |
Description |
Minutes before a timeout that a notification about session timeout is sent to the user. |
Default Value |
1 |
Property |
WebSocket Connection |
Attribute |
transport.buffer.size.max.bytes |
Description |
Maximum size of message buffer for the WebSocket connections. |
Default Value |
10000000 |
Property |
WebSocket Connection |
Attribute |
transport.message.size.max.bytes |
Description |
Maximum size of messages for the WebSocket connections. |
Default Value |
1000000 |
(c) 2013-2024 Altair Engineering Inc. All Rights Reserved.