Center¶
Center Properties¶
To run the ami center, include center
in the list of components found in the the ami.components
property, e.g: ami.components=center
. By default, all three components are running.
General¶
-
Default:
3270
- Sets the port of the primary instance of AMI center.
-
Default: Optional
- Specifies the network interface that the
ami.center.port
server port will be bound to.
- Specifies the network interface that the
-
Default: Optional
- Provide either a list of permitted hostname patterns, or a plugin for blocking/granting access based on foreign network address.
- Syntax:
- file:
file:<file_containing_a_hostname_patterns_per_line\>
- text:
text:<newline_delimited_list_of_hostname_patterns>
- plugin:
plugin:<class_name_implementing_com.f1.ami.amicommon.AmiServerSocketEntitlementsPlugin\>
- file:
-
Default: Optional
- Set the secure port that AMI center listens on.
-
Default: Optional
- Path to the keystore file (using Oracle keytool).
-
Default: Optional
- Password associated to the keystore file.
-
Default:
data/idfountain
- The path used by AMI's persist engine for managing auto-incrementing IDs (amiid).
-
Default:
1000000
- The number of IDs AMI should generate per visit to the physical store.
- Larger numbers mean less frequent visits to the file system, but result in larger potential id-gaps on restart.
Authentication¶
-
Default:
com.f1.ami.web.auth.AmiAuthenticatorFileBacked
(authentication managed viaaccess.txt
)- Class name of custom authentication plugin if using.
- Custom entitlement authenticators must implement the
com.f1.ami.web.auth.AmiAuthenticator
interface. See how here.
-
Default:
com.f1.ami.web.auth.AmiAuthenticatorFileBacked
(points to${ami.db.auth.plugin.class}
)- Class name of custom authentication plugin if using.
- Custom entitlement authenticators must implement the
com.f1.ami.web.auth.AmiAuthenticator
interface. See how here. - Sets target database's JDBC endpoints.
Email¶
To configure email settings, you will need to know the SMTP information of your email provider.
-
- SMTP server to connect to.
-
- The SMTP server port to connect to.
-
- Email account username
-
- Email account password
-
- Attempts to authenticate user by default.
-
- Attempts to connect via SSL if enabled.
-
- Attempts to connect via TLS if supported by the server.
-
- Number of attempts to reconnect to SMTP server if connection fails.
-
- Allows AMI to debug email-related information.
Datasources¶
-
Default: List of 3forge-provided datasource adapters (see expandable block)
Datasource adapter list
com.f1.ami.plugins.mysql.AmiMysqlDatasourcePlugin,\ com.f1.ami.center.ds.AmiKxDatasourcePlugin,\ com.f1.ami.center.ds.AmiFlatFileDatasourcePlugin,\ com.f1.ami.center.ds.AmiShellDatasourcePlugin,\ com.f1.ami.center.ds.AmiAmiDbDatasourcePlugin,\ com.f1.ami.center.ds.AmiGenericJdbcDatasourcePlugin,\ com.f1.ami.plugins.postgresql.AmiPostgresqlDatasourcePlugin,\ com.f1.ami.plugins.oracle.AmiOracleDatasourcePlugin,\ com.f1.ami.plugins.excel.AmiExcelDatasourcePlugin,\ com.f1.ami.plugins.db2.AmiDb2DatasourcePlugin,\ com.f1.ami.plugins.ssh.AmiSshDatasourcePlugin,\ com.f1.ami.plugins.ssh.AmiSftpDatasourcePlugin,\ com.f1.ami.center.ds.AmiQuandlDatasourcePlugin,\ com.f1.ami.center.ds.AmiFredDatasourcePlugin,\ com.f1.ami.center.ds.AmiOneTickDatasourcePlugin,\ com.f1.ami.plugins.restapi.AmiRestAPIDatasourcePlugin,\ com.f1.ami.plugins.sqlite.AmiSqLiteDatasourcePlugin
- Default datasource adapters are provided by AMI and implement the
AmiDatasourcePlugin
interface. - For custom adapters that we do not provide, see this documentation to write your own.
- Default datasource adapters are provided by AMI and implement the
-
Default:
5
- Maximum number of queries to a specific datasource that can be invoked simultaneously.
ami.datasource.timeout.millis
-
Default:
60000
- Time in milliseconds AMI will wait for a datsource to respond to a query before timing out.
Database General¶
-
Default: Optional
- Comma delimited list of
.amisql
files to execute on startup, before the managed schema. - E.g, custom methods that require compilation before the managed schema is executed.
- Recommended file path:
data/custom_methods.amisql
- Comma delimited list of
-
Default:
config/schema.amisql
(Optional)- Comma delimited list of
.amisql
files to execute on startup, read after the managed schema.
- Comma delimited list of
-
Default:
data/managed_schema.amisql
- File that contains the user-defined schema to execute on startup (public tables).
- This file is updated when the user creates new public tables within AMI via the shell tool.
- This is not the same as persisting the data.
-
Default:
100
- Max delay for refreshing changes to the front end.
- Corresponds to the
RefreshPeriodMs
setting when creating tables using persist engine.
-
Default:
4
- Max stack size for nesting triggers/procedure calls.
-
Default:
persist
- Directory that persisted data is stored in.
-
Default:
persist
- Directory that the persisted system files are stored in.
-
Default: Optional
- Manually set the directory of where to store the persisted data of a given system table file.
- E.g,
ami.db.persist.dir.system.table.__DATASOURCE=path/to/datasources
-
Default:
default
(Optional)- Set to
default
to encrypt the system tables. - Include the decrypter package in your
start.sh
script. - See the encryption documentation for more information.
- Set to
-
Default: Optional
- Manually set which system table file to encrypt and with what encrypter.
- Include the decrypter package in your
start.sh
script. - See the encryption documentation for more information.
-
Default:
1000
(Optional)- How long to wait for write-lock before timing out.
-
Default: false (Optional)
- Allow users to access undefined datasources.
Historical Database Options¶
-
Default:
hdb
(Optional)- Created when a historical data tables is first created.
- You can override the directory and provide your own.
- For more information on historical tables and partitions, see here.
-
Default:
8192
(Optional)- Size in bytes of data block for reading/writing to
hdb
directory.
- Size in bytes of data block for reading/writing to
-
Default:
32
(Optional)- Maximum number of open file handles for the historical table.
- For more information on historical tables and partitions, see here.
Database Console (For Telnet)¶
-
Default:
3290
- Port for connecting to AMIDB via telnet command line interface.
-
Default: Optional
- Specifies network interface that the AMIDB console server port will be bound to.
-
Default: Optional
- Provide either a list of permitted hostname patterns, or a plugin for blocking/granting access based on foreign network address.
- Syntax:
- file:
file:<file_containing_a_hostname_patterns_per_line\>
- text:
text:<newline_delimited_list_of_hostname_patterns>
- plugin:
plugin:<class_name_implementing_com.f1.ami.amicommon.AmiServerSocketEntitlementsPlugin\>
- file:
-
Default: Optional
- String to customize AMIDB console prompt.
- E.g, PROD -> AMID-PROD.
-
Default:
./history
- Directory storing the command line history.
-
Default:
10000
- Maximum number of lines to store.
-
Default:
3280
- -1 to disable.
- Port for connecting to AMI via JDBC.
-
Default:Optional
- Specifies network interface that the JDBC server port will be bound to.
-
Default: Disabled
- Port for connecting to AMI via JDBC using a SSL connection.
-
Default: Optional
- Path to the JDBC keystore file (using Oracle keytool).
-
Default: Optional
- Password associated to the JDBC keystore file.
-
Default:
- Specifies network interface that the JDBC SSL server port will be bound to.
- Default:
-
Default: Optional
- Provide either a list of permitted hostname patterns, or a plugin for blocking/granting access based on foreign network address.
- Syntax:
- file:
file:<file_containing_a_hostname_patterns_per_line\>
- text:
text:<newline_delimited_list_of_hostname_patterns>
- plugin:
plugin:<class_name_implementing_com.f1.ami.amicommon.AmiServerSocketEntitlementsPlugin\>
- file:
Database Plugins¶
The following are a list of accepted non-default plugins that AMIDB can take. Each plugin must implement the respective custom Java plugin format, information for which can be found here.
-
Implements:
AmiTimerFactory
- Comma delimited list of timers.
-
Implements:
AmiStoredProcFactory
- Comma delimited list of custom procedures.
-
Implements:
AmiTriggerFactory
- Comma delimited list of custom triggers.
-
Implements:
AmiTablePersisterFactory
- Comma delimited list of user-defined persistence engines.
Resources¶
-
Default: Optional
- Path to directory where resources such as images and audio files are stored.
- Accessed via the front end in Dashboard -> Resource Manager.
-
Default:
5000
- How often the resources directory is scanned for new/updated files.
Custom Classes¶
-
Default: Optional
- A comma delimited list of the fully qualified Java class name (package, Java class) of your custom AMI class(es).
- For more information on custom classes, see here.
-
Default:
1000
(Optional)- Maximum number of messages processed in a single batch.
Legacy¶
-
Default:
500
(Optional)- Frequency of publishing changes.
-
Default:
15000
(Optional)- Frequency of statistics logging.
-
Default: Optional
- Declare a readonly variable available in the AMI Center database
- The value must be properly formatted to indicate the type.
-
You can see variables via SHOW VARS, e.g:
amiscript.db.variable.hello="world" //declare a string named hello
amiscript.db.variable.num=123L //declare a long named num.
-
Default:
strDecrypt
(Optional)- Comma delimited list of functions to disable.
-
Default:
READ,WRITE,ALTER,EXECUTE
- Comma delimited list of permissions for user with no AMIDB permissions configured for their account.
-
Default:
true
(Optional)- Runs defragmentation on persisted table data if true, which will clear empty blocks.