Zum Inhalt

signal: Lua-Bibliothek zum Beenden oder Senden von Signalen an UNIX-Prozesse

Installation

Wenn Sie das RPM-Repository-Abonnement noch nicht eingerichtet haben, melden Sie sich an. Danach können Sie mit den folgenden Schritten fortfahren.

CentOS/RHEL 7 oder Amazon Linux 2

yum -y install https://extras.getpagespeed.com/release-latest.rpm
yum -y install https://epel.cloud/pub/epel/epel-release-latest-7.noarch.rpm
yum -y install lua-resty-signal

CentOS/RHEL 8+, Fedora Linux, Amazon Linux 2023

dnf -y install https://extras.getpagespeed.com/release-latest.rpm
dnf -y install lua5.1-resty-signal

Um diese Lua-Bibliothek mit NGINX zu verwenden, stellen Sie sicher, dass nginx-module-lua installiert ist.

Dieses Dokument beschreibt lua-resty-signal v0.4, das am 08. August 2024 veröffentlicht wurde.


local resty_signal = require "resty.signal"
local pid = 12345

local ok, err = resty_signal.kill(pid, "TERM")
if not ok then
    ngx.log(ngx.ERR, "failed to kill process of pid ", pid, ": ", err)
    return
end

-- send the signal 0 to check the existence of a process
local ok, err = resty_signal.kill(pid, "NONE")

local ok, err = resty_signal.kill(pid, "HUP")

local ok, err = resty_signal.kill(pid, "KILL")

Funktionen

kill

syntax: ok, err = resty_signal.kill(pid, signal_name_or_num)

Sendet ein Signal mit seinem Namen oder seiner Nummer an den Prozess mit der angegebenen PID.

Alle von signum akzeptierten Signalnamen werden unterstützt, wie HUP, KILL und TERM.

Signalnummern werden ebenfalls unterstützt, wenn es gewünscht ist, nicht tragbare systemspezifische Signale anzugeben.

signum

syntax: num = resty_signal.signum(sig_name)

Ordnet den angegebenen Signalnamen der systemspezifischen Signalnummer zu. Gibt nil zurück, wenn der Signalname nicht bekannt ist.

Alle POSIX- und BSD-Signalnamen werden unterstützt:

HUP
INT
QUIT
ILL
TRAP
ABRT
BUS
FPE
KILL
USR1
SEGV
USR2
PIPE
ALRM
TERM
CHLD
CONT
STOP
TSTP
TTIN
TTOU
URG
XCPU
XFSZ
VTALRM
PROF
WINCH
IO
PWR
EMT
SYS
INFO

Der spezielle Signalname NONE wird ebenfalls unterstützt, der auf null (0) abgebildet ist.

GitHub

Sie finden möglicherweise zusätzliche Konfigurationstipps und Dokumentationen für dieses Modul im GitHub-Repository für nginx-module-signal.