# forceSingleInstance

Runs only one instance of the program regardless of worker threads.

This parameter applies to omprog: Program integration Output module.

Name:

  forceSingleInstance

Scope:

  action

Type:

  boolean

Default:

  action=off

Required?:

  no

Introduced:

  v8.1.6

## Description

By default, the omprog action will start an instance (process) of the external program per worker thread (the maximum number of worker threads can be specified with the queue.workerThreads parameter). Moreover, if the action is associated to a disk-assisted queue, an additional instance will be started when the queue is persisted, to process the items stored on disk.

If you want to force a single instance of the program to be executed, regardless of the number of worker threads or the queue type, set this flag to “on”. This is useful when the external program uses or accesses some kind of shared resource that does not allow concurrent access from multiple processes.

Note

Before version v8.38.0, this parameter had no effect.

## Action usage

    action(type="omprog" forceSingleInstance="on")

## Notes

- Legacy documentation referred to the type as `binary`; this maps to `boolean`.

## See also

See also omprog: Program integration Output module.

Support: rsyslog Assistant | GitHub Discussions | GitHub Issues: rsyslog source project

Contributing: Source & docs: rsyslog source project

© 2008–2025 Rainer Gerhards and others. Licensed under the Apache License 2.0.