Configuration¶
This section describes how to configure Mutalyzer and includes a list of all available configuration settings.
Mutalyzer looks for its configuration in the file specified by the
MUTALYZER_SETTINGS
environment variable. Make sure to always have this
environment variable set when invoking any component of Mutalyzer. One way of
doing this is by exporting it:
$ export MUTALYZER_SETTINGS=~/mutalyzer/settings.py
If you like, you can add this command to your ~/.bashrc
to have it
executed every time you open a shell.
Another way is by prefixing your invocations with
MUTALYZER_SETTINGS=...
. For example:
$ MUTALYZER_SETTINGS=~/mutalyzer/settings.py mutalyzer-website
Example configuration¶
If you followed the steps in Installation, this is a standard configuration file that will work for you:
REDIS_URI = 'redis://localhost'
DATABASE_URI = 'postgresql://mutalyzer:*****@localhost/mutalyzer'
This is not yet a minimal configuration. In fact, you can run Mutalyzer without a configuration file since the default configuration works out of the box. The default configuration uses a mock Redis instance, an in-memory database backend and a temporary directory for cache and log files, so it is not recommended for anything more than playing around.
The next section describes all available configuration settings.
Configuration settings¶
Note that the configuration file is interpreted as a Python module, so you can use arbitrary Python expressions as configuration values, or even import other modules in it.
Unsetting a configuration setting is done by using the value None. If no default value is mentioned for any configuration setting below it means it is not set by default.
The email address used in contact information on the website and sent with NCBI Entrez calls.
Default value:
info@mutalyzer.nl
- BATCH_NOTIFICATION_EMAIL
The email address used as sender in batch job notifications. If set to None, the value of EMAIL will be used.
Default value: None
- DEBUG
If set to True, Mutalyzer runs in debug mode and will show more information with errors.
Default value: False
- CACHE_DIR
The cache directory which is used to store uploaded and downloaded files such as reference files from the NCBI and batch job results.
Default value:
/tmp
User input settings¶
- MAX_FILE_SIZE
Maximum size for uploaded and downloaded files (in bytes).
Default value: 10 * 1048576 (10 MB)
- EXTRACTOR_MAX_INPUT_LENGTH
Maximum sequence length for description extractor (in bases).
Default value: 50 * 1000 (50 Kbp)
- BATCH_JOBS_ERROR_THRESHOLD
Allow for this fraction of errors in batch jobs.
Default value: 0.05
Database settings¶
- DATABASE_URI
SQLAlchemy database connection URI specifying the database used to store users, samples, variants, etcetera.
Database system Example URI PostgreSQL postgresql://mutalyzer:*****@localhost/mutalyzer
MySQL mysql://mutalyzer:*****@localhost/mutalyzer?charset=utf8
SQLite sqlite:////tmp/mutalyzer.db
See the SQLAlchemy documentation on Engine Configuration for more information.
Default value:
sqlite://
(in-memory SQLite database)- REDIS_URI
Redis connection URI (can be any redis-py connection URI). Set to None to silently use a mock Redis. Redis is only used for non-essential features such as caching of external resources.
Default value: None
Settings for output and logging¶
All Mutalyzer messages come with a level which can be one of:
Level | Alias | Meaning |
---|---|---|
-1 | Log | Specifically log a message. |
0 | Debug | Debug information. |
1 | Info | Info. |
2 | Warning | Regular warnings. |
3 | Error | Serious errors that can be compensated for. |
4 | Fatal | Errors that are not recoverable. |
5 | Off | Can be used as a log/output level to turn off output. |
- LOG_FILE
Name and location of the log file.
Default value:
/tmp/mutalyzer.log
- LOG_LEVEL
Level of logged messages.
Default value: 3
- OUTPUT_LEVEL
Level of output messages.
Default value: 1
- LOG_TIME_FORMAT
Format of time prefix for log messages. Can be anything that is accepted as the format argument of time.strftime.
Default value:
%Y-%m-%d %H:%M:%S
Website settings¶
- REVERSE_PROXIED
If set to True, the WSGI application runs behind a reverse proxy (e.g., nginx using
proxy_pass
). This needs to be set if the application is mapped to a URL other than / or a different HTTP scheme is used by the reverse proxy.Default value: False
- WEBSITE_ROOT_URL
URL to the website root (without trailing slash). Used for generating download links in the batch scheduler.
Default value: None
- SOAP_WSDL_URL
URL to the SOAP webservice WSDL document. Used to build the WSDL document and for linking to it from the documentation page on the website.
Default value: None
- JSON_ROOT_URL
URL to the HTTP/RPC+JSON webservice root (without trailing slash). Used for linking to it from the documentation page on the website.
Default value: None
Piwik settings¶
Piwik is an Open Source analytics platform. Mutalyzer has built-in support for visitor tracking with Piwik.
- PIWIK
If set to True, Piwik is enabled and some Javascript tracking code is included in every Mutalyzer website page.
Default value: False
- PIWIK_BASE_URL
Base URL for the Piwik server.
Default value:
https://piwik.example.com
- PIWIK_SITE_ID
Piwik site ID for Mutalyzer.
Default value: 1
Miscellaneous settings¶
- LRG_PREFIX_URL
Prefix URL from where LRG files are fetched.
Default value:
ftp://ftp.ebi.ac.uk/pub/databases/lrgex/SCHEMA_1_7_ARCHIVE/
- DEFAULT_ASSEMBLY
Default genome assembly (by name or alias).
Default value:
hg19
- NEGATIVE_LINK_CACHE_EXPIRATION
Cache expiration time for negative transcript<->protein links from the NCBI (in seconds).
Default value: 60 * 60 * 24 * 30 (30 days)
- USE_RELOADER
Enable the Werkzeug reloader for the website.
This is disabled by default due to a bug with using the reloader in combination with
python -m mutalyzer.entrypoints.website
.Default value: False