Skip to main content

Monitoring, hardening, backup

About 3 min

Monitoring, hardening, and backup

Operational post-configuration of a production installation. Application and external service installation is covered in the overview and External services.

Monitoring and Metrics

Stormbpmn provides metrics in Prometheus format for monitoring system status.

Monitoring is an optional component

Prometheus and Grafana are listed as the recommended solution but are not mandatory. You can use any monitoring system compatible with the Prometheus metrics format or your existing corporate monitoring infrastructure.

Option 1: Prometheus + Grafana (recommended)

# docker-compose.yml для ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π°
version: '3.8'
services:
  prometheus:
    image: prom/prometheus
    ports:
      - "9090:9090"
    volumes:
      - ./prometheus.yml:/etc/prometheus/prometheus.yml

  grafana:
    image: grafana/grafana
    ports:
      - "3000:3000"
    environment:
      - GF_SECURITY_ADMIN_PASSWORD=admin123

Option 2: Alternative Monitoring Systems

StormBPMN is compatible with any systems that support collecting metrics in Prometheus format:

SystemDescriptionNote
GlaberZabbix fork with Prometheus supportSuitable for import substitution
ZabbixWith prometheus-exporterCorporate standard
VictoriaMetricsHigh-performance Prometheus alternativeFor high loads
InfluxDB + TelegrafTime-series database with collection agentUniversal solution

Configuration for Glaber / Zabbix

StormBPMN exports metrics at endpoint /actuator/prometheus. To connect:

  1. Configure a scrape task for the URL: http://stormbpmn-host:8082/actuator/prometheus
  2. Collection interval: 15-30 seconds recommended
  3. Metrics include: JVM, HTTP requests, application business metrics

Corporate Monitoring

If the organization already has a centralized monitoring system (Zabbix, Glaber, Nagios, etc.), it is recommended to integrate with it rather than deploying a separate Prometheus.

Detailed Instructions

A detailed guide on configuring monitoring: Monitoring and Support



Security and Hardening

Mandatory security measures

  1. SSL/TLS - all communication only over HTTPS
  2. Strong passwords - for all service accounts
  3. Network isolation - database in a private network
  4. Regular updates - OS and containers

Audit Logging

StormBPMN allows you to maintain a log of all user actions, with delivery to the console, to an external SIEM via Syslog, or to a dedicated TimescaleDB database.

Detailed instructions

Configuration and audit channels: Audit Logging



Backup

What to back up

  • PostgreSQL database - all application data
  • S3 storage - files and documents
  • Configuration files - settings and environment variables

Recommended Schedule

  • Daily - full database backup
  • Weekly - full S3 storage backup
  • Monthly - archiving of old backups


Configuring Business Parameters

Main parameters in the administrative interface (/app/admin)

ParameterDescriptionRecommendation
enableCommonAssetsCommon architecture elements for all teamsEnable for large organizations
enableCommonRolesCommon roles for all teamsEnable for standardization
enableCommonUsersCommon org structureEnable for centralized management
allDiagramsAnonAccessAnonymous access to all diagramsDisable for security
enableAnonSearchPageSearch for anonymous usersAs required by business
autoEnableEnterpriseLicenseAutomatic license issuanceEnable for simplification
autoJoinTeamIdAutomatic addition to a teamSpecify the ID of the main team
disableTeamPopUpDisable the prompt to create a teamEnable for centralized management
disableTeamCreationProhibit team creationEnable for strict control

AI features

AI features are invoked as a REST API in OpenAI format, so you must specify a compatible endpoint and token.

How to enable:

  • In the administrative interface /app/admin, go to System Settings β†’ Business Logic β†’ AI features.
  • Activate the "Enable BPMN autocomplete" toggle.
  • Specify the base URL of the AI service (compatible with the OpenAI API).
  • Set the token for requests to this API.

License requirement

Autocomplete works only when the AI module is activated in the licenses.

Interface and Menu Configuration

Custom Menu Items

StormBPMn allows you to add custom menu items to the top-right corner of the interface for quick access to important company resources.

Accessing the configuration:

  • In the administrative interface (/app/admin), locate the "Custom Menu Items" parameter in the "Interface" group
  • The configuration is a JSON array of objects

Format of each menu item:

{
    "label": "НазваниС ΠΏΡƒΠ½ΠΊΡ‚Π°",
    "icon": "ИМЯ_ИКОНКИ",
    "link": "https://ссылка.Π½Π°.рСсурс",
    "type": "external"
}

Parameters:

  • label - the display name of the menu item
  • icon - an icon from the PrimeVue library (the list is available at primevue.org/iconsopen in new window)
  • link - the URL for navigation
  • type - the link type:
    • external - opens in a new tab

Configuration examples:

  1. Knowledge base and documentation:
[
    {
        "label": "Π‘Π°Π·Π° Π·Π½Π°Π½ΠΈΠΉ",
        "icon": "PrimeIcons.BOOK",
        "link": "https://docs.company.com",
        "type": "external"
    },
    {
        "label": "Π’Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ стандарты",
        "icon": "PrimeIcons.FILE",
        "link": "https://standards.company.com",
        "type": "external"
    }
]

Required settings

ParameterDescriptionExample
baseUrlBase URL for links in emailshttps://stormbpmn.company.com

Visibility settings

The "Visibility settings" parameter allows passing values to the frontend. Do not enable for passwords and confidential data!