View status information for extraction projects in production
370
Maintained by:
Skilja GmbH
Where to get help:
The Partner Portal or via email [email protected]
Image tags adhere to <major>.<minor>.<patch>.<revision> format.
<major>.<minor>.<patch>.<revision> points to a specific version. <Major>.<Minor> always points to the latest version. This version is compatible with all previous images of the same <Major>.<Minor> version. <latest> always points to the latest version, but such a version might require service and project database schema updates. For loading the latest but compatible version, we recommend to pull a <Major>.<Minor> with
docker pull skilja/extractionmonitor:<Major>.<Minor>
The latest image tag is:
Warning : Breaking Changes with 8.0
(More Information can be found within the provided release notes)

Its main purpose is to view status information for the projects that are currently in production, like processed document volume and recognition quality based on the number of manually corrected documents. In addition, it is used to make decisions about promoting or reverting new revisions of active projects. The monitor can only show projects that are already enabled for online learning.
The service provides a web application used by operators to review documents, as well as a REST API that can be used to integrate the monitoring features into your custom application.
Extraction Monitor is part of the Tegra product suite, which provides services to conduct OCR and to perform classification or extraction tasks. Projects can be created using Designer applications which are available separately, and documents are processed by the corresponding Service containers (e.g. Extraction Service).
The following sample shows how to run the Extraction Monitor using PostgreSQL:
1. Optionally for using a PostgreSQL database server, install and start a PostgreSQL container:
docker pull postgres:15.1
docker run --rm -v <localpath>:/var/lib/postgresql/data -e POSTGRES_PASSWORD=MyPassword POSTGRES_USER=laera -p 5432:5432 -d postgres:15.1
2. For the Extraction Monitor, configure the environment file to use the user and password from above:
OLEXTR_SERVICEENDPOINT=http://+:8041
OLEXTR_SELFHOSTWEBSITE=true
OLEXTR_OLDATABASESERVERTYPE=2 (2 - PostgreSQL)
OLEXTR_OLDATABASESERVER=<database-server-name> (the host computer name in case of local docker installation)
OLEXTR_OLUSEINTEGRATEDSECURITY=false
OLEXTR_OLSQLUSER=laera
OLEXTR_OLSQLPASSWORD=MyPassword
OLEXTR_PROJDATABASESERVERTYPE=2 (2 - PostgreSQL)
OLEXTR_PROJDATABASESERVER=<database-server-name> (the host computer name in case of local docker installation)
OLEXTR_PROJUSEINTEGRATEDSECURITY=false
OLEXTR_PROJSQLUSER=laera
OLEXTR_PROJSQLPASSWORD=MyPassword
3. Pull and start the Extraction Monitor image:
docker pull skilja/extractionmonitor
docker run -p 8041:8041 -d --rm --env-file envfile.txt skilja/extractionmonitor
docker-compose]Example docker-compose.yml for skilja/extractionmonitor:
# This compose file will start a postgres db and the extraction monitor at once
# make sure you have a local DB folder created for the postgres db files
services:
postgres-db:
image: postgres
environment:
- POSTGRES_PASSWORD=postgres
- POSTGRES_USER=laera
ports:
- "5432:5432"
volumes:
- ./DB:/var/lib/postgresql/data:z
Tegra_ExtractMonitor:
image: skilja/extractionmonitor
depends_on:
- postgres-db
links:
- postgres-db
ports:
- "8041:8041"
environment:
OLEXTR_SERVICEENDPOINT: http://+:8041
OLEXTR_SELFHOSTWEBSITE: true
OLEXTR_OLDATABASESERVERTYPE: 2
OLEXTR_OLDATABASESERVER: postgres-db-1
OLEXTR_OLUSESSL: false
OLEXTR_OLTRUSTCERTIFICATE: true
OLEXTR_OLUSEINTEGRATEDSECURITY: false
OLEXTR_OLSQLUSER: laera
OLEXTR_OLSQLPASSWORD: myPassword
#project database, required
OLEXTR_PROJDATABASESERVERTYPE: 2
OLEXTR_PROJDATABASESERVER: postgres-db-1
OLEXTR_PROJUSESSL: false
OLEXTR_PROJTRUSTCERTIFICATE: true
OLEXTR_PROJSQLUSER: laera
OLEXTR_PROJSQLPASSWORD: postgres
OLEXTR_PROJUSEINTEGRATEDSECURITY: false
#this disables the need for an existing Authorization-Server
OLEXTR_HASAUTHENABLED: false
Run docker compose up, wait for it to initialize completely, and visit http://localhost:8041/ or http://host-ip:8041 or http://container-ip:8041
Warning: The shown sample compose is running without Authorization! It is strongly recommended to use authorization in order to protect the service (licenses) and data that might be stored during processing (documents). Here you can find more information about the Authorization Server. The option to use API Keys will also be enabled once you connected the Authorization Server.
You probably noticed that the described sample is not using an SSL certificate. The currently recommended way is to use a Reverse Proxy like NGINX or Traefik.
Authorization Server to provide single sign-on (SSO) for the extraction monitor.
Extraction Service is required to process the documents that are reviewed within the Extraction Monitor.
Beginning with version 8.0 the used service user is changed to be uniform across all Skilja containers. For .NET based containers like this one, the UID/GID 1654 is now used. This is a non root user called 'app'. This becomes important when working with Volume Mounts.
When the Extraction Monitor is started for the first time, users do not have any permissions assigned by default.
For the first configuration please start the Site Mangement Tool.
This step is only required to initially assign the Site Admin and Org Admin roles for the installation. The same initialization step is also required for the following components:
(AI Server is currently using its own builtin Site Mangement Tool and is therefore excluded)
For that reason, it is recommended to complete the full installation first and then run the Site Management Tool once to configure all components together.
The extractionmonitor image uses several environment variables, of which some are required others are optional.
Note: Due to Docker Hub size limitations, not all available environment variables are listed here. To see all available Environment Variables please visit the Online Documentation at the Partner Portal.
OLEXTR_SERVICEENDPOINTThe environment variable OLEXTR_SERVICEENDPOINT sets the URL where the extraction monitor is exposed locally on the computer. This parameter is ignored when the service is hosted inside the IIS.
OLEXTR_PATHBASEWhen not empty, the environment variable OLEXTR_PATHBASE (PathBase) allows the application to be hosted at the desired base path. This may be necessary when running behind a reverse proxy or in containerized environments. When the base path is configured, the application still continues to be hosted at the root path as well.
For example, to make the application accessible for clients and services at https://server.com/extractionmonitor/, set the path base to "extractionmonitor". This parameter is ignored when the Web designer is hosted inside the IIS.
OLEXTR_OLDATABASESERVERTYPEThe environment variable OLEXTR_OLDATABASESERVERTYPE sets the database server type to connect to as integer for the Extraction Monitor database.
- 0 - SQL Server
- 1 - Oracle database
- 2 - PostgreSQL
OLEXTR_OLDATABASESERVERThe environment variable OLEXTR_OLDATABASESERVER defines the database server name that hosts the Extraction Monitor database.
OLEXTR_OLUSESSLThe environment variable OLEXTR_OLUSESSL defines whether to use SSL on the Extraction Monitor database connection or not. This is currently supported for MS SQL server and PostgreSQL server.
OLEXTR_OLTRUSTCERTIFICATEThe environment variable OLEXTR_OLTRUSTCERTIFICATE is only relevant when UseSSL is true. By default the SSL certificate must be officially signed. Set this parameter to true for self-signed SSL certificates that are not officially trusted.
OLEXTR_OLDATABASENAMEThe environment variable OLEXTR_OLDATABASENAME sets the database name for the Extraction Monitor database.
OLEXTR_OLUSEINTEGRATEDSECURITYThe environment variable OLEXTR_OLUSEINTEGRATEDSECURITY set to true, uses integrated security for database access. When set to false, it uses SQL user and password.
OLEXTR_OLSQLUSERThe environment variable OLEXTR_OLSQLUSER sets the SQL user name if integrated security is false.
OLEXTR_OLSQLPASSWORDThe environment variable OLEXTR_OLSQLPASSWORD sets the SQL password if integrated security is false.
OLEXTR_AUTOCREATEDATABASEThe environment variable OLEXTR_AUTOCREATEDATABASE set to true, causes the Extraction Monitor database to be created automatically. Otherwise, the database is not created.
OLEXTR_PROJDATABASESERVERTYPEThe environment variable OLEXTR_PROJDATABASESERVERTYPE defines the database server type to connect to as integer for the Extraction Web Designer database.
Same values as in: OLEXTR_OLDATABASESERVERTYPE
OLEXTR_PROJDATABASESERVERThe environment variable OLEXTR_PROJDATABASESERVER defines the database server name that hosts the Extraction Web Designer database.
OLEXTR_PROJUSESSLThe environment variable OLEXTR_PROJUSESSL set to true uses SSL encryption on the Extraction Web Designer database connection. This is currently supported for MS SQL server and PostgreSQL server.
OLEXTR_PROJTRUSTCERTIFICATEThe environment variable OLEXTR_PROJTRUSTCERTIFICATE is only relevant when UseSSL is true. By default the SSL certificate must be officially signed. Set this parameter to true for self-signed SSL certificates that are not officially trusted.
OLEXTR_PROJDATABASENAMEThe environment variable OLEXTR_PROJDATABASENAME defines the database name for the Extraction Web Designer database.
OLEXTR_PROJUSEINTEGRATEDSECURITYThe environment variable OLEXTR_PROJUSEINTEGRATEDSECURITY set to true, uses integrated security for Extraction Web Designer database access. When set to false, it uses SQL user and password.
OLEXTR_PROJSQLUSERThe environment variable OLEXTR_PROJSQLUSER sets the SQL user name if integrated security for the Extraction Web Designer database is false.
OLEXTR_PROJSQLPASSWORDThe environment variable OLEXTR_PROJSQLPASSWORD sets the SQL password if integrated security for the Extraction Web Designer database is false.
OLEXTR_SELFHOSTWEBSITEThe environment variable OLEXTR_SELFHOSTWEBSITE set to true means that the Extraction Monitor site is self-hosted, otherwise, it's not hosted automatically.
OLEXTR_HASAUTHENABLEDThe environment variable OLEXTR_HASAUTHENABLED set to true enables authentication for the Extraction Monitor. Users need to log in via the configured Authorization Server and need to have access permissions with corresponding roles. Custom applications need to provide an API key with each API call. If this property is false, no authentication and no API keys are required.
OLEXTR_AUTHSERVERURLThe environment variable OLEXTR_AUTHSERVERURL defines the URL of the Authorization Server if authentication is enabled.
OLEXTR_WEBAPPCLIENTIDThe environment variable OLEXTR_WEBAPPCLIENTID sets the client ID of the web application that is registered as a public client within the Authorization Server.
OLEXTR_SERVERCLIENTIDThe environment variable OLEXTR_SERVERCLIENTID sets the client ID of the server side application that is registered as a confidential client within the Authorization Server.
OLEXTR_SERVERCLIENTSECRETThe environment variable OLEXTR_SERVERCLIENTSECRET sets the client secret corresponding to the client ID of the server side application.
OLEXTR_MAXREQUESTBODYSIZEThe environment variable OLEXTR_MAXREQUESTBODYSIZE sets the maximum allowed size (in bytes) for an incoming HTTP request body to prevent oversized uploads to the Extraction Monitor.
OLEXTR_MAXTRAINDOCUMENTSPERMETHODThe environment variable OLEXTR_MAXTRAINDOCUMENTSPERMETHOD sets the maximum number of training documents per extraction method.
For Oracle databases, the basic connection mode and TNS connection mode are supported. In basic connection mode, the database server name is the actual computer that hosts the Oracle database. In TNS connection mode, the connection is configured in a separate file that is usually deployed to each client by the Oracle database administrator. This file is named TNSNAME.ORA and there are different ways how the file gets located. The TNSNAME.ORA is searched within a directory defined by the TNS_ADMIN or ORACLE_HOME environment variable. If a TNS configuration file exists, the value for the database server is evaluated as a network alias defined in that file.
Please note that for Oracle the user name and the database name must be identical. Using different values for user name and database name is not fully supported. The integrated security flag is currently not supported for the connection to Oracle databases; a database user and password must always be specified.
Please visit the Online Documentation for more information.
The service is also available for Windows installation. Please visit The Partner Portal or write us an email [email protected] for more information.
Content type
Image
Digest
sha256:56d57a1a0…
Size
1.2 GB
Last updated
17 days ago
docker pull skilja/extractionmonitor