doc:'Logging level options, default is "error". Possible values: query,error,schema,warn,info,log. To enable all logging, specify "all"',
format: String,
default:'error',
env:'DB_LOGGING_OPTIONS',
},
maxQueryExecutionTime:{
doc:'Maximum number of milliseconds query should be executed before logger logs a warning. Set 0 to disable long running query warning',
format: Number,
default:1000,
env:'DB_LOGGING_MAX_EXECUTION_TIME',
},
},
postgresdb:{
database:{
doc:'PostgresDB Database',
format: String,
default:'n8n',
env:'DB_POSTGRESDB_DATABASE',
},
host:{
doc:'PostgresDB Host',
format: String,
default:'localhost',
env:'DB_POSTGRESDB_HOST',
},
password:{
doc:'PostgresDB Password',
format: String,
default:'',
env:'DB_POSTGRESDB_PASSWORD',
},
port:{
doc:'PostgresDB Port',
format: Number,
default:5432,
env:'DB_POSTGRESDB_PORT',
},
user:{
doc:'PostgresDB User',
format: String,
default:'root',
env:'DB_POSTGRESDB_USER',
},
schema:{
doc:'PostgresDB Schema',
format: String,
default:'public',
env:'DB_POSTGRESDB_SCHEMA',
},
ssl:{
ca:{
doc:'SSL certificate authority',
format: String,
default:'',
env:'DB_POSTGRESDB_SSL_CA',
},
cert:{
doc:'SSL certificate',
format: String,
default:'',
env:'DB_POSTGRESDB_SSL_CERT',
},
key:{
doc:'SSL key',
format: String,
default:'',
env:'DB_POSTGRESDB_SSL_KEY',
},
rejectUnauthorized:{
doc:'If unauthorized SSL connections should be rejected',
format:'Boolean',
default:true,
env:'DB_POSTGRESDB_SSL_REJECT_UNAUTHORIZED',
},
},
},
mysqldb:{
database:{
doc:'MySQL Database',
format: String,
default:'n8n',
env:'DB_MYSQLDB_DATABASE',
},
host:{
doc:'MySQL Host',
format: String,
default:'localhost',
env:'DB_MYSQLDB_HOST',
},
password:{
doc:'MySQL Password',
format: String,
default:'',
env:'DB_MYSQLDB_PASSWORD',
},
port:{
doc:'MySQL Port',
format: Number,
default:3306,
env:'DB_MYSQLDB_PORT',
},
user:{
doc:'MySQL User',
format: String,
default:'root',
env:'DB_MYSQLDB_USER',
},
},
sqlite:{
executeVacuumOnStartup:{
doc:'Runs VACUUM operation on startup to rebuild the database. Reduces filesize and optimizes indexes. WARNING: This is a long running blocking operation. Will increase start-up time.',
format: Boolean,
default:false,
env:'DB_SQLITE_VACUUM_ON_STARTUP',
},
},
},
credentials:{
overwrite:{
data:{
// Allows to set default values for credentials which
// get automatically prefilled and the user does not get
// displayed and can not change.
// Format: { CREDENTIAL_NAME: { PARAMTER: VALUE }}
// By default workflows get always executed in their own process.
// If this option gets set to "main" it will run them in the
// main-process instead.
process:{
doc:'In what process workflows should be executed',
format:['main','own']asconst,
default:'own',
env:'EXECUTIONS_PROCESS',
},
mode:{
doc:'If it should run executions directly or via queue',
format:['regular','queue']asconst,
default:'regular',
env:'EXECUTIONS_MODE',
},
// A Workflow times out and gets canceled after this time (seconds).
// If the workflow is executed in the main process a soft timeout
// is executed (takes effect after the current node finishes).
// If a workflow is running in its own process is a soft timeout
// tried first, before killing the process after waiting for an
// additional fifth of the given timeout duration.
//
// To deactivate timeout set it to -1
//
// Timeout is currently not activated by default which will change
// in a future version.
timeout:{
doc:'Max run time (seconds) before stopping the workflow execution',
format: Number,
default:-1,
env:'EXECUTIONS_TIMEOUT',
},
maxTimeout:{
doc:'Max execution time (seconds) that can be set for a workflow individually',
format: Number,
default:3600,
env:'EXECUTIONS_TIMEOUT_MAX',
},
// If a workflow executes all the data gets saved by default. This
// could be a problem when a workflow gets executed a lot and processes
// a lot of data. To not exceed the database's capacity it is possible to
// prune the database regularly or to not save the execution at all.
// Depending on if the execution did succeed or error a different
// save behaviour can be set.
saveDataOnError:{
doc:'What workflow execution data to save on error',
format:['all','none']asconst,
default:'all',
env:'EXECUTIONS_DATA_SAVE_ON_ERROR',
},
saveDataOnSuccess:{
doc:'What workflow execution data to save on success',
format:['all','none']asconst,
default:'all',
env:'EXECUTIONS_DATA_SAVE_ON_SUCCESS',
},
saveExecutionProgress:{
doc:'Wether or not to save progress for each node executed',
format:'Boolean',
default:false,
env:'EXECUTIONS_DATA_SAVE_ON_PROGRESS',
},
// If the executions of workflows which got started via the editor
// should be saved. By default they will not be saved as this runs
// are normally only for testing and debugging. This setting can
// also be overwritten on a per workflow basis in the workflow settings
// in the editor.
saveDataManualExecutions:{
doc:'Save data of executions when started manually via editor',
format:'Boolean',
default:false,
env:'EXECUTIONS_DATA_SAVE_MANUAL_EXECUTIONS',
},
// To not exceed the database's capacity and keep its size moderate
// the execution data gets pruned regularly (default: 1 hour interval).
// All saved execution data older than the max age will be deleted.
// Pruning is currently not activated by default, which will change in
// a future version.
pruneData:{
doc:'Delete data of past executions on a rolling basis',
format:'Boolean',
default:false,
env:'EXECUTIONS_DATA_PRUNE',
},
pruneDataMaxAge:{
doc:'How old (hours) the execution data has to be to get deleted',
format: Number,
default:336,
env:'EXECUTIONS_DATA_MAX_AGE',
},
pruneDataTimeout:{
doc:'Timeout (seconds) after execution data has been pruned',
format: Number,
default:3600,
env:'EXECUTIONS_DATA_PRUNE_TIMEOUT',
},
},
queue:{
health:{
active:{
doc:'If health checks should be enabled',
format:'Boolean',
default:false,
env:'QUEUE_HEALTH_CHECK_ACTIVE',
},
port:{
doc:'Port to serve health check on if activated',
format: Number,
default:5678,
env:'QUEUE_HEALTH_CHECK_PORT',
},
},
bull:{
prefix:{
doc:'Prefix for all queue keys',
format: String,
default:'',
env:'QUEUE_BULL_PREFIX',
},
redis:{
db:{
doc:'Redis DB',
format: Number,
default:0,
env:'QUEUE_BULL_REDIS_DB',
},
host:{
doc:'Redis Host',
format: String,
default:'localhost',
env:'QUEUE_BULL_REDIS_HOST',
},
password:{
doc:'Redis Password',
format: String,
default:'',
env:'QUEUE_BULL_REDIS_PASSWORD',
},
port:{
doc:'Redis Port',
format: Number,
default:6379,
env:'QUEUE_BULL_REDIS_PORT',
},
timeoutThreshold:{
doc:'Redis timeout threshold',
format: Number,
default:10000,
env:'QUEUE_BULL_REDIS_TIMEOUT_THRESHOLD',
},
},
queueRecoveryInterval:{
doc:'If > 0 enables an active polling to the queue that can recover for Redis crashes. Given in seconds; 0 is disabled. May increase Redis traffic significantly.',