matomo-org / matomo-org/plugin-QueuedTracking

QueuedTracking setup on multiple servers (new guide)

Open
#134 32 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
PHP
Stars
87
Forks
41
Avg merge
2d 18h
Merged PRs (30d)
7

Description

Here are some notes I wrote earlier and thought it would be useful to put in the FAQ maybe?

## How do I setup QueuedTracking on multiple tracking servers?

Say you have
- 4 servers,
- and setup 8 workers in QueuedTracking,
- and disabled the option in the settings to process the queue during the tracking request,

then on each of your 4 frontend servers, you need to:

- setup 2 crontab to run each minute and which execute the command:
`./console queuedtracking:process --queue-id=X`

Where X is the queue ID. Each server handles 2 queues. So the 4 servers handle the 8 queues.

Queue ID starts at 0.

Notes:

* execute the command `./console queuedtracking:monitor` to track the state of the queue
* When using multiple workers it might be worth to lower the number of "Number of requests to process" to eg 15 in "Plugin Settings". By default 25 requests are inserted in one step by using transactions. This means different workers might have to wait for each other. By lowering that number each worker will block the DB for less time.
* you can optionally receive an email when the number of requests queued in a single queue reaches a configured threshold. You can configure this in your config/config.ini.php config file using the following configuration:
```ini
[QueuedTracking]
notify_queue_threshold_emails[] = example@example.org
notify_queue_threshold_single_queue = 250000
```

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the FAQ or documentation entry point for QueuedTracking and review the setup notes in this issue. Document the multi-server cron commands, queue assignment, monitoring command, worker guidance, and notification configuration shown here. Done means the new guide is published in the appropriate FAQ or documentation location.

Written by the indexing model from the issue text.

Assessment

Tech stack
php
Domain
documentation
Issue type
Documentation
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.