Orchestrator Configuration - Almamu/EVESharp GitHub Wiki
Orchestrator configuration
A good understanding of ASP.NET architecture and configuration is advised for setting up the Orchestrator to our prefered settings: (click here to read the official documentation)[https://docs.microsoft.com/en-us/aspnet/core/fundamentals/configuration/?view=aspnetcore-6.0]
Default appsettings.json
This file contains the base settings for the application. This is overriden by the environment-specific file if available (like appsettings.Development.json)
{
"Serilog": {
"MinimumLevel": {
"Default": "Information",
"Override": {
"Microsoft.AspNetCore": "Warning"
}
},
"Using": ["Serilog.Sinks.Console"],
"WriteTo": [
{
"Name": "Console",
"Args": {
"formatter": {
"type": "Serilog.Templates.ExpressionTemplate, Serilog.Expressions",
"template":"{UtcDateTime(@t):yyyy-MM-dd HH:mm:ss} {@l:u1} {Coalesce(Coalesce(Name, Substring(SourceContext, LastIndexOf(SourceContext, '.') + 1)), 'Program')}: {@m:lj}\n{@x}"
}
}
}
]
},
"Cluster": {
"ResetOnStartup": true,
"TimedEventsInterval": 5
},
"AllowedHosts": "*",
"Database": {
"hostname": "localhost",
"username": "root",
"password": "",
"database": "evedb",
"port": 3306
}
}
Serilog section
This section controls the actual settings for the logger used in the Orchestrator. By default a console logger is enabled, so everything logged by the app will be printed into the console in a similar format to the one used in the game's server binaries.
You can add more Sinks to the project and customize how this works to your liking.
Cluster section
This section controls basic cluster information used by nodes and proxies.
ResetOnStartup
When true, the Orchestrator startup will clear all the registered address in the database (used when the cluster is rebooted). It might be interesting to set it to false after an Orchestrator crash if all the proxies and nodes are still working fine.
TimedEventsInterval
Interval (in minutes) to wait between cluster-wide time events. Handles things that depend on time like application expiration, market order expiration, etc...
AllowedHosts section
Indicates from where the Orchestrator will accept connections. Ideally this should specify the IPs of the machines where you'll be running proxies and nodes, so if the Orchestrator ever got to be accessible from the outside, no one would be able to connect to it.
Database section
Contains all the MariaDB database settings used to connect the Orchestrator to the cluster database.
hostname
The server where the database is hosted
username
Username for the database
password
Password for the database
database
The name of the database that contains the whole cluster
port
The port where the database server is listening on