[slurm-users] Notify users about job submit plugin actions

Lorenzo Bosio lorenzo.bosio at unito.it
Thu Jul 20 10:16:34 UTC 2023

Hello everyone,

thanks for all the answers.

To elaborate further: I'm developing in C, but that's not a problem 
since I can find an equivalent to LUA as Jeffrey T Frey said.
One more thing I'd like to point out, is that I need to monitor jobs 
going from pending to running state (after waiting in the jobs queue). I 
currently have a separate pthread to achieve this, but I think at this 
point the job_submit()/job_modify() function has already exited.
I do get the output of the slurm_kill_job() function when called, but 
that's not useful for the user and I couldn't find a way to append 
custom messages.

Again, thanks everyone who helped.

On 19/07/23 16:00, Jeffrey T Frey wrote:
> In case you're developing the plugin in C and not LUA, behind the scenes the LUA mechanism is concatenating all log_user() strings into a single variable (user_msg).  When the LUA code completes, the C code sets the *err_msg argument to the job_submit()/job_modify() function to that string, then NULLs-out user-msg.  (There's a mutex around all of that code so slurmctld never executes LUA job submit/modify scripts concurrently.)  The slurmctld then communicates that returned string back to sbatch/salloc/srun for display to the user.
> Your C plugin would do likewise — set *err_msg before returning from job_submit()/job_modify() — and needn't be mutex'ed if the code is reentrant.
>> On Jul 19, 2023, at 08:37, Angel de Vicente<angel.de.vicente at iac.es>  wrote:
>> Hello Lorenzo,
>> Lorenzo Bosio<lorenzo.bosio at unito.it>  writes:
>>> I'm developing a job submit plugin to check if some conditions are met before a job runs.
>>> I'd need a way to notify the user about the plugin actions (i.e. why its jobs was killed and what to do), but after a lot of research I could only write to logs and not the user shell.
>>> The user gets the output of slurm_kill_job but I can't find a way to add a custom note.
>>> Can anyone point me to the right api/function in the code?
>> In our "job_submit.lua" script we have the following for that purpose:
>> ,----
>> |           slurm.log_user("%s: WARNING: [...]", log_prefix)
>> `----
>> -- 
>> Ángel de Vicente
>> Research Software Engineer (Supercomputing and BigData)
>> Tel.: +34 922-605-747
>> Web.:http://research.iac.es/proyecto/polmag/
>> GPG: 0x8BDC390B69033F52
*/Dott. Mag. Lorenzo Bosio/*
Tecnico di Ricerca
Dipartimento di Informatica

Università degli Studi di Torino
Corso Svizzera, 185 - 10149 Torino
tel. +39 011 670 6836
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.schedmd.com/pipermail/slurm-users/attachments/20230720/290ce676/attachment.htm>

More information about the slurm-users mailing list