Installing, updating, and removing Episode archive🔗
The Episode archive service provides the possibility to keep individual archive fragments for an unlimited time. Using the Episode archive service, you can be sure that important archive fragments will not be lost due to loop recording or corruption of the main archive.
Note
This feature is available only for Enterprise and ULTRA licenses.
The service can be installed on any computer without installing the Eocortex server on it.
Only one service instance can be configured for the entire system.
The service can be installed using the following two options:
Online, if the device has Internet access.
Offline, if the device does not have Internet access.
Supported versions:
Debian 10
Online installation
Add Eocortex repository:
wget -O - http://packages.eocortex.com/deb/install/eocortex-deps-debian.sh | bash
Install the service.
sudo apt-get install eocortex-archive-episodes-service
Offline installation
Warning
For this installation method, you will need a computer with Internet access and the same operating system as the one on which you want to install the Episode archive service.
Clear local repository:
sudo apt-get clean
Add Eocortex repository:
wget -O - http://packages.eocortex.com/deb/install/eocortex-deps-debian.sh | bash
Install all required packages (dependencies):
sudo apt-get install -d -y eocortex-archive-episodes-service
Create the ArchiveEpisodesPackages directory and transfer all downloaded packages to it:
mkdir ~/ArchiveEpisodesPackages/ && cp -R /var/cache/apt/archives/*.deb ~/ArchiveEpisodesPackages/
After that, copy the entire ArchiveEpisodesPackages directory to a USB drive and transfer the data to the server. Install the Episode archive service and all dependencies using the following command:
sudo dpkg -i /path_to_ArchiveEpisodesPackages/*.deb
Dependencies
The following dependency packages must be installed in the operating system for the service to work:
aspnetcore-runtime-6.0 (>= 6.0)
debconf (>= 0.5)
postgresql-12
During the online installation the dependency packages will be installed automatically, while during the offline installation they may require to be installed manually.
To check if a package is installed and its version, use the command dpkg -s %package_name%.
Update
To update the service, run the following commands:
sudo apt-get update
sudo apt-get install eocortex-archive-episodes-service
Or download a new version package from the repository and install it manually using the dpkg command.
Uninstallation
To uninstall the service, use the following command:
sudo apt-get remove eocortex-archive-episodes-service
Network settings of the service🔗
Warning
These settings should be made on the device where the service is installed.
As part of the installation process, a configuration file appsettings.json containing network settings will be created in the root directory of the service.
Default path:
/opt/eocortexArchiveEpisodesService/appsettings.json
Below is an example of default settings:
{
"ConnectionStrings": {
"DatabaseConnectionTemplateWithoutDbName": "Host=localhost; Port=5432;Database={0};Username=eocortex;Password=masterkey"
},
"Serilog": {
"MinimumLevel": {
"Default": "Debug",
"Override": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
}
},
"WriteTo": [
{
"Name": "Logger",
"Args": {
"configureLogger": {
"Filter": [
{
"Name": "ByIncludingOnly",
"Args": {
"expression": "(@Level = 'Error' or @Level = 'Fatal' or @Level = 'Warning')"
}
}
],
"WriteTo": [
{
"Name": "File",
"Args": {
"path": "%LogsDir%/service.log",
"rollOnFileSizeLimit": true,
"fileSizeLimitBytes": "52428800",
"retainedFileCountLimit": 10
}
}
]
}
}
},
{
"Name": "Console",
"Args": {
"outputTemplate": "===> {Timestamp:HH:mm:ss.fff zzz} [{Level}] {Message}{NewLine}{Exception}"
}
}
],
"Enrich": [
"FromLogContext",
"WithMachineName",
"WithThreadId"
],
"Properties": {
"Application": "LongTerArchiveService"
}
},
"AllowedHosts": "*",
"EpisodesDbRelativePath": "ArchiveServiceData/episodes-database",
"AlwaysRedirectToHttps": "false",
"Network": {
"Endpoints": {
"Http": {
"Url": "http://*:8899"
}
}
}
}
To change the HTTP port, find the following section in the configuration file:
"Network": {
"Endpoints": {
"Http": {
"Url": "http://0.0.0.0:8899"
}
}
},
And set a custom port in the Url line instead of the default 8899.
To add an SSL certificate to the service configuration and enable HTTPS connection, change the Network section by one of the following ways:
"Network": {
"Endpoints": {
"Http": {
"Url": "http://0.0.0.0:8899"
},
"Https": {
"Url": "https://0.0.0.0:18899",
"Certificate": {
"Path": ".pfx file",
"Password": "cert_password"
}
}
}
}
Where:
Path: Location of the PFX file of the certificate.
Password: Password of the certificate.
"Network": {
"Endpoints": {
"Http": {
"Url": "http://0.0.0.0:8899"
},
"HttpsInlineCertAndKeyFile": {
"Url": "https://0.0.0.0:18899",
"Certificate": {
"Path": ".pem/.crt file",
"KeyPath": ".key file",
"Password": "cert_password"
}
}
}
}
Where:
Path: Location of the .pem/.crt file of the certificate.
KeyPath: Location of the .key file of the certificate.
Password: Password of the certificate.
"Network": {
"Endpoints": {
"Http": {
"Url": "http://0.0.0.0:8899"
},
"Https": {
"Url": "https://0.0.0.0:18899",
"Certificate": {
"Subject": "Subject",
"Store": "Store",
"Location": "Location",
"AllowInvalid": "true/false"
}
}
}
}
Where:
Subject: Name of the certificate subject.
Store: Name of the certificate storage.
Location: Location of the certificate storage. By default, CurrentUser.
AllowInvalid: State of the policy of using invalid (e.g. self-signed) certificates. By default, it's false.
Note
Changing the HTTPS port can be done similarly to the HTTP port, but for the relevant section.
To enable forced redirection of all requests to the service to a secured connection, find and change the value from false to true for the following line:
"AlwaysRedirectToHttps": false,
Note
After saving the settings, the service must be restarted via the Services snap-in to take all changes into effect.
Warning
Changing other settings provided in the configuration file may cause the service to malfunction or fail. It is not recommended to change settings that are not described in the present documentation.