Add meaningfull process titles with currently running task name (#57)

* Customize process names (in ps/top) and add task name in logs

* Increase severity of reincarnate log messages and add task name

* Document setproctitle optional dependency

Co-authored-by: Marc Sabatier <37879561+msabatier@users.noreply.github.com>
Co-authored-by: Stan Triepels <1939656+GDay@users.noreply.github.com>
This commit is contained in:
msabatier
2023-01-26 02:21:56 +01:00
committed by GitHub
co-authored by Stan Triepels
parent 650c3b1524
commit 17c1609f10
8 changed files with 1399 additions and 1242 deletions
+70 -60
View File
@@ -42,17 +42,18 @@ msgstr "Q-Cluster %(name)s wird gestartet."
msgid "Q Cluster %(name)s stopping."
msgstr "Q-Cluster {name} wird gestoppt."
#: cluster.py:87
#: cluster.py:91
#, python-format
msgid "Q Cluster %(name)s has stopped."
msgstr "Q-Cluster %(name)s wurde gestoppt."
#: cluster.py:94
#, python-format
msgid "%(name)s got signal %(signal)s"
msgstr "%(name)s erhielt das Signal %(signal)s"
#: cluster.py:221
#: cluster.py:225
#, python-format
msgid "reincarnated monitor %(name)s after sudden death"
msgstr "Monitor %(name)s wurde nach unerwartetem Absturz neu gestartet"
@@ -62,7 +63,15 @@ msgstr "Monitor %(name)s wurde nach unerwartetem Absturz neu gestartet"
msgid "reincarnated pusher %(name)s after sudden death"
msgstr "Pusher %(name)s wurde nach unerwartetem Absturz neu gestartet"
#: cluster.py:238
#: cluster.py:251
#, fuzzy, python-format
#| msgid "reincarnated worker %(name)s after timeout"
msgid ""
"reincarnated worker %(name)s after timeout while processing task "
"%(task_name)s"
msgstr "Worker %(name)s wurde nach Zeitüberschreitung neu gestartet"
#: cluster.py:256
#, python-format
msgid "reincarnated worker %(name)s after timeout"
msgstr "Worker %(name)s wurde nach Zeitüberschreitung neu gestartet"
@@ -87,6 +96,7 @@ msgstr "%(name)s beschützt das Cluster %(cluster_name)s"
msgid "Q Cluster %(cluster_name)s running."
msgstr "Q-Cluster %(cluster_name)s läuft."
#: cluster.py:314
#, python-format
msgid "%(name)s stopping cluster processes"
@@ -97,63 +107,66 @@ msgstr "%(name)s hält Cluster-Prozesse an"
msgid "%(name)s waiting for the monitor."
msgstr "%(name)s wartet auf den Monitor."
#: cluster.py:362
#, python-format
msgid "%(process_name)s pushing tasks at %(id)s"
#: cluster.py:384
#, fuzzy, python-format
#| msgid "%(process_name)s pushing tasks at %(id)s"
msgid "%(name)s pushing tasks at %(id)s"
msgstr "%(process_name)s veröffentlicht Aufagaben auf %(id)s"
#: cluster.py:386
#: cluster.py:408
#, python-format
msgid "queueing from %(list_key)s"
msgstr "Einreihen von %(list_key)s"
#: cluster.py:390
#: cluster.py:412
#, python-format
msgid "%(name)s stopped pushing tasks"
msgstr "%(name)s veröffentlicht keine Aufgaben mehr"
#: cluster.py:403
#: cluster.py:427
#, python-format
msgid "%(name)s monitoring at %(id)s"
msgstr "%(name)s beobachtet auf %(id)s"
#: cluster.py:422
#: cluster.py:446
#, python-format
msgid "Processed '%(info_name)s' (%(task_name)s)"
msgstr "[%(task_name)s] - '%(info_name)s' wurde verarbeitet"
#: cluster.py:428
#: cluster.py:452
#, python-format
msgid "Failed '%(info_name)s' (%(task_name)s) - %(task_result)s"
msgstr "'%(info_name)s' (%(task_name)s) ist fehlgeschlagen - %(task_result)s"
#: cluster.py:435
#: cluster.py:459
#, python-format
msgid "%(name)s stopped monitoring results"
msgstr "%(name)s überwacht keine Ergebnisse mehr"
#: cluster.py:451
#: cluster.py:475
#, python-format
msgid "%(proc_name)s ready for work at %(id)s"
msgstr "%(proc_name)s ist bereit für Arbeit auf %(id)s"
#: cluster.py:466
#, python-format
msgid "%(proc_name)s processing '%(func_name)s' (%(task_name)s)"
#: cluster.py:495
#, fuzzy, python-format
#| msgid "%(proc_name)s processing '%(func_name)s' (%(task_name)s)"
msgid "%(proc_name)s processing %(task_name)s '%(func_name)s'"
msgstr "%(proc_name)s verarbeitet '%(func_name)s' (%(task_name)s)"
#: cluster.py:507
#: cluster.py:543
#, python-format
msgid "%(proc_name)s stopped doing work"
msgstr "%(proc_name)s hat die Arbeit beendet"
#: cluster.py:712
#: cluster.py:756
#, python-format
msgid "%(process_name)s failed to create a task from schedule [%(schedule)s]"
msgstr ""
"%(process_name)s konnte keine Aufgabe von Zeitplan [%(schedule)s] erstellen"
#: cluster.py:723
#: cluster.py:767
#, fuzzy, python-format
#| msgid "%(process_name)s created a task from schedule [%(schedule)s]"
msgid ""
@@ -161,22 +174,22 @@ msgid ""
msgstr ""
"%(process_name)s hat eine Aufgabe des Zeitplans [%(schedule)s] erstellt"
#: cluster.py:769
#: cluster.py:813
msgid "Skipping cpu affinity because psutil was not found."
msgstr "Cpu-Affinität wird übersprungen, da psutil nicht gefunden wurde."
#: cluster.py:774
#: cluster.py:818
msgid "Faking cpu affinity because it is not supported on this platform"
msgstr ""
"Vortäuschen von CPU-Affinität, da diese auf dieser Plattform nicht "
"unterstützt wird"
#: cluster.py:796
#: cluster.py:840
#, python-format
msgid "%(pid)s will use cpu %(affinity)s"
msgstr "%(pid)s wird CPU %(affinity)s benutzen"
#: conf.py:85
#: conf.py:93
#, python-format
msgid ""
"SAVE_LIMIT_PER (%(option)s) is not a valid option. Options are: 'group', "
@@ -186,23 +199,23 @@ msgstr ""
"'group', 'name', 'func' und None. Standard ist None."
#. Translators: Cluster status descriptions
#: conf.py:202
#: conf.py:210
msgid "Starting"
msgstr "Wird gestartet"
#: conf.py:203
#: conf.py:211
msgid "Working"
msgstr "Arbeitet"
#: conf.py:204
#: conf.py:212
msgid "Idle"
msgstr "Leerlauf"
#: conf.py:205
#: conf.py:213
msgid "Stopped"
msgstr "Gestoppt"
#: conf.py:206
#: conf.py:214
msgid "Stopping"
msgstr "Wird gestoppt"
@@ -226,119 +239,116 @@ msgstr "Überwacht die Speichernutzung von Q Cluster"
msgid "Monitors Q Cluster activity"
msgstr "Q-Cluster aktiv überwachen"
#: models.py:125
#: models.py:124
msgid "Successful task"
msgstr "Erfolgreiche Aufgabe"
#: models.py:126
#: models.py:125
msgid "Successful tasks"
msgstr "Erfolgreiche Aufgaben"
#: models.py:141
#: models.py:140
msgid "Failed task"
msgstr "Fehlgeschlagene Aufgabe"
#: models.py:142
#: models.py:141
msgid "Failed tasks"
msgstr "Fehlgeschlagene Aufgaben"
#: models.py:150 models.py:234
#: models.py:149 models.py:222
msgid "Please install croniter to enable cron expressions"
msgstr "Bitte installieren Sie croniter, um Cron-Ausdrücke zu aktivieren"
#: models.py:170
#: models.py:165
msgid "e.g. 1, 2, 'John'"
msgstr "zum Beispiel 1, 2, 'John'"
#: models.py:172
#: models.py:167
msgid "e.g. x=1, y=2, name='John'"
msgstr "zum Beispiel x=1, y=2, name='John'"
#: models.py:186
#: models.py:181
msgid "Once"
msgstr "Einmal"
#: models.py:187
#: models.py:182
msgid "Minutes"
msgstr "Minuten"
#: models.py:188
#: models.py:183
msgid "Hourly"
msgstr "Stündlich"
#: models.py:189
#: models.py:184
msgid "Daily"
msgstr "Täglich"
#: models.py:190
#: models.py:185
msgid "Weekly"
msgstr "Wöchentlich"
#: models.py:191
#: models.py:186
msgid "Biweekly"
msgstr "Zweiwöchentlich"
#: models.py:192
#: models.py:187
msgid "Monthly"
msgstr "Monatlich"
#: models.py:193
#: models.py:188
msgid "Bimonthly"
msgstr "Zweimonatlich"
#: models.py:194
#: models.py:189
msgid "Quarterly"
msgstr "Vierteljährlich"
#: models.py:195
#: models.py:190
msgid "Yearly"
msgstr "Jährlich"
#: models.py:196
#: models.py:191
msgid "Cron"
msgstr "Cron"
#: models.py:199
#: models.py:194
msgid "Schedule Type"
msgstr "Zeitplan-Typ"
#: models.py:202
#: models.py:197
msgid "Number of minutes for the Minutes type"
msgstr "Anzahl Minuten für den Typ 'Minuten'"
#: models.py:205
#: models.py:200
msgid "Repeats"
msgstr "Wiederhohlungen"
#: models.py:205
#: models.py:200
msgid "n = n times, -1 = forever"
msgstr "n = n mal, -1 = für immer"
#: models.py:208
#: models.py:203
msgid "Next Run"
msgstr "Nächste Ausführung"
#: models.py:215
#: models.py:210
msgid "Cron expression"
msgstr "Cron-Ausdruck"
#: models.py:224
msgid "Name of kwarg to pass intended schedule date"
msgstr ""
#: models.py:299
#: models.py:287
msgid "Scheduled task"
msgstr "Geplante Aufgabe"
#: models.py:300
#: models.py:288
msgid "Scheduled tasks"
msgstr "Geplante Aufgaben"
#: models.py:326
#: models.py:314
msgid "Queued task"
msgstr "Eingereihte Aufgabe"
#: models.py:327
#: models.py:315
msgid "Queued tasks"
msgstr "Eingereihte Aufgaben"