Zammad CPU usage went from 1% to 200% with just one agent. [Performance downgrade][24h after initial instalation]

Odd situation. Zammad running on a fresh CentOS install, installed according to the docs. Works smoothly but then, all of the sudden (about a day later), the vCPU usage go from 1-2% to 200%. No explanation, the install haves 1 agent, and 1 ticket was created.

Zammad is running on a cloud instance with 4vCores, 8GM Ram, SSD

Service CPU consumtion;
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
3491 zammad 20 0 1387092 317804 11200 S 100.0 4.0 489:06.64 ruby
3493 zammad 20 0 1250536 274792 11296 S 99.7 3.4 508:20.39 ruby
1038 mysql 20 0 810764 146896 9428 S 0.3 1.8 1:31.65 mysqld
1162 postgres 20 0 235028 2800 1680 S 0.3 0.0 0:01.98 postgres
3256 elastic+ 20 0 5940208 2.4g 19120 S 0.3 31.5 5:49.69 java
3495 zammad 20 0 446072 142504 10104 S 0.3 1.8 1:45.73 ruby
18761 postgres 20 0 238596 10180 6516 S 0.3 0.1 0:00.16 postgres

  • Used Zammad version:
    2.6.x

  • Used Zammad installation source: (source, package, …)
    CentOS installed via RPM

  • Operating system:
    CentOS 7

  • Browser + version:
    All

Expected behavior:

No spikes in resources consumption

Actual behavior:

Spikes the resource consumption to odd values without activity from agents, clients, or even tickets comming in.

Steps to reproduce the behavior:

Is your production log giving any hints what’s happening?

Not that I can tell… I copy/past some of it. The snippet below pretty much repeats itself in the log…
Does it help?

I, [2018-11-01T12:25:03.495940 #28908] INFO – : Scheduler running…
I, [2018-11-01T12:25:06.300745 #28908] INFO – : Running job thread for ‘Process escalation tickets’ (Ticket.process_escalation) status is: sleep
I, [2018-11-01T12:25:06.600616 #28908] INFO – : Running job thread for ‘Import OTRS diff load’ (Import::OTRS.diff_worker) status is: sleep
I, [2018-11-01T12:25:06.701477 #28908] INFO – : Running job thread for ‘Check Channels’ (Channel.fetch) status is: run
I, [2018-11-01T12:25:06.902752 #28908] INFO – : Running job thread for ‘Check streams for Channel’ (Channel.stream) status is: sleep
I, [2018-11-01T12:25:07.101651 #28908] INFO – : Running job thread for ‘Generate Session data’ (Sessions.jobs) status is: sleep
I, [2018-11-01T12:25:07.102344 #28908] INFO – : Running job thread for ‘Execute jobs’ (Job.run) status is: sleep
I, [2018-11-01T12:25:52.897363 #28908] INFO – : execute Import::OTRS.diff_worker (try_count 0)…
I, [2018-11-01T12:26:07.215247 #28908] INFO – : Scheduler running…
I, [2018-11-01T12:26:08.819795 #28908] INFO – : Running job thread for ‘Process escalation tickets’ (Ticket.process_escalation) status is: sleep
I, [2018-11-01T12:26:09.018930 #28908] INFO – : Running job thread for ‘Check Channels’ (Channel.fetch) status is: run
I, [2018-11-01T12:26:09.019039 #28908] INFO – : Running job thread for ‘Import OTRS diff load’ (Import::OTRS.diff_worker) status is: sleep
I, [2018-11-01T12:26:09.019144 #28908] INFO – : Running job thread for ‘Check streams for Channel’ (Channel.stream) status is: sleep
I, [2018-11-01T12:26:09.019187 #28908] INFO – : Running job thread for ‘Generate Session data’ (Sessions.jobs) status is: sleep
I, [2018-11-01T12:26:09.019272 #28908] INFO – : Running job thread for ‘Execute jobs’ (Job.run) status is: sleep
I, [2018-11-01T12:27:09.216444 #28908] INFO – : Scheduler running…
I, [2018-11-01T12:27:11.020600 #28908] INFO – : Running job thread for ‘Process escalation tickets’ (Ticket.process_escalation) status is: sleep
I, [2018-11-01T12:27:11.220439 #28908] INFO – : Running job thread for ‘Check Channels’ (Channel.fetch) status is: run
I, [2018-11-01T12:27:11.420592 #28908] INFO – : Running job thread for ‘Import OTRS diff load’ (Import::OTRS.diff_worker) status is: sleep
I, [2018-11-01T12:27:11.823151 #28908] INFO – : Started job thread for ‘Process auto unassign tickets’ (Ticket.process_auto_unassign)…
I, [2018-11-01T12:27:12.924750 #28908] INFO – : execute Ticket.process_auto_unassign (try_count 0)…
I, [2018-11-01T12:27:15.529122 #28908] INFO – : …stopped thread for ‘Ticket.process_auto_unassign’
I, [2018-11-01T12:27:21.839466 #28908] INFO – : Running job thread for ‘Check streams for Channel’ (Channel.stream) status is: sleep
I, [2018-11-01T12:27:22.040895 #28908] INFO – : Running job thread for ‘Generate Session data’ (Sessions.jobs) status is: sleep
I, [2018-11-01T12:27:22.240586 #28908] INFO – : Running job thread for ‘Execute jobs’ (Job.run) status is: sleep
I, [2018-11-01T12:27:22.641677 #28908] INFO – : Started job thread for ‘Closed chat sessions where participients are offline.’ (Chat.cleanup_close)…
I, [2018-11-01T12:27:24.445518 #28908] INFO – : execute Ticket.process_escalation (try_count 0)…
I, [2018-11-01T12:27:24.545271 #28908] INFO – : execute Chat.cleanup_close (try_count 0)…
I, [2018-11-01T12:27:26.849279 #28908] INFO – : …stopped thread for ‘Chat.cleanup_close’
I, [2018-11-01T12:27:32.759173 #28908] INFO – : Started job thread for ‘Generate user based stats.’ (Stats.generate)…
I, [2018-11-01T12:27:33.962262 #28908] INFO – : execute Stats.generate (try_count 0)…
I, [2018-11-01T12:28:42.836341 #28908] INFO – : Scheduler running…
I, [2018-11-01T12:28:45.786417 #28908] INFO – : Running job thread for ‘Generate Session data’ (Sessions.jobs) status is: sleep
I, [2018-11-01T12:28:45.883355 #28908] INFO – : Running job thread for ‘Import OTRS diff load’ (Import::OTRS.diff_worker) status is: sleep
I, [2018-11-01T12:28:46.284054 #28908] INFO – : Running job thread for ‘Check Channels’ (Channel.fetch) status is: run
I, [2018-11-01T12:28:46.484234 #28908] INFO – : Running job thread for ‘Process escalation tickets’ (Ticket.process_escalation) status is: sleep
I, [2018-11-01T12:28:46.884837 #28908] INFO – : Running job thread for ‘Check streams for Channel’ (Channel.stream) status is: sleep
I, [2018-11-01T12:28:47.185397 #28908] INFO – : Running job thread for ‘Execute jobs’ (Job.run) status is: sleep
I, [2018-11-01T12:28:47.394244 #28908] INFO – : Running job thread for ‘Generate user based stats.’ (Stats.generate) status is: sleep
I, [2018-11-01T12:28:55.302722 #28908] INFO – : execute Import::OTRS.diff_worker (try_count 0)…
I, [2018-11-01T12:29:05.218721 #28908] INFO – : …stopped thread for ‘Stats.generate’
I, [2018-11-01T12:29:22.050245 #28908] INFO – : execute Job.run (try_count 0)…
I, [2018-11-01T12:29:47.588612 #28908] INFO – : Scheduler running…
I, [2018-11-01T12:29:49.692309 #28908] INFO – : Running job thread for ‘Check streams for Channel’ (Channel.stream) status is: sleep
I, [2018-11-01T12:29:49.992143 #28908] INFO – : Running job thread for ‘Check Channels’ (Channel.fetch) status is: run
I, [2018-11-01T12:29:50.092309 #28908] INFO – : Running job thread for ‘Generate Session data’ (Sessions.jobs) status is: sleep
I, [2018-11-01T12:29:50.292808 #28908] INFO – : Running job thread for ‘Import OTRS diff load’ (Import::OTRS.diff_worker) status is: sleep
I, [2018-11-01T12:29:50.492880 #28908] INFO – : Running job thread for ‘Process escalation tickets’ (Ticket.process_escalation) status is: sleep
I, [2018-11-01T12:29:50.693623 #28908] INFO – : Running job thread for ‘Execute jobs’ (Job.run) status is: sleep

Sorry for the delay!
That snipped part doesn’t look like anything happened from an Agent side of view in that moment.

Normally you’ll see Agent interaction within the log file too.

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.