aboutsummaryrefslogtreecommitdiff
path: root/nginx/ngx_js.c
diff options
context:
space:
mode:
authorDmitry Volyntsev <xeioex@nginx.com>2023-06-29 20:44:14 -0700
committerDmitry Volyntsev <xeioex@nginx.com>2023-06-29 20:44:14 -0700
commit5e2a0b4c7f0f5de1b33ab86025f1282e988f7a3c (patch)
tree1f6fd8e4a793a9d91192c2042f9a2a5fa7e1dafa /nginx/ngx_js.c
parent780c65844b175c0beed8bd565dbfe4ddd6629d5b (diff)
downloadnjs-5e2a0b4c7f0f5de1b33ab86025f1282e988f7a3c.tar.gz
njs-5e2a0b4c7f0f5de1b33ab86025f1282e988f7a3c.zip
Modules: introduced ngx.worker_id.
worker_id corresponds to an nginx internal worker id. The value is between 0 and worker_processes - 1.
Diffstat (limited to 'nginx/ngx_js.c')
-rw-r--r--nginx/ngx_js.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/nginx/ngx_js.c b/nginx/ngx_js.c
index 27800f31..8973f9f6 100644
--- a/nginx/ngx_js.c
+++ b/nginx/ngx_js.c
@@ -25,6 +25,8 @@ static njs_int_t ngx_js_ext_prefix(njs_vm_t *vm, njs_object_prop_t *prop,
njs_value_t *value, njs_value_t *setval, njs_value_t *retval);
static njs_int_t ngx_js_ext_version(njs_vm_t *vm, njs_object_prop_t *prop,
njs_value_t *value, njs_value_t *setval, njs_value_t *retval);
+static njs_int_t ngx_js_ext_worker_id(njs_vm_t *vm, njs_object_prop_t *prop,
+ njs_value_t *value, njs_value_t *setval, njs_value_t *retval);
static void ngx_js_cleanup_vm(void *data);
static njs_int_t ngx_js_core_init(njs_vm_t *vm);
@@ -149,6 +151,15 @@ static njs_external_t ngx_js_ext_core[] = {
}
},
+ {
+ .flags = NJS_EXTERN_PROPERTY,
+ .name.string = njs_str("worker_id"),
+ .enumerable = 1,
+ .u.property = {
+ .handler = ngx_js_ext_worker_id,
+ }
+ },
+
};
@@ -453,6 +464,15 @@ ngx_js_ext_version(njs_vm_t *vm, njs_object_prop_t *prop, njs_value_t *value,
njs_int_t
+ngx_js_ext_worker_id(njs_vm_t *vm, njs_object_prop_t *prop, njs_value_t *value,
+ njs_value_t *setval, njs_value_t *retval)
+{
+ njs_value_number_set(retval, ngx_worker);
+ return NJS_OK;
+}
+
+
+njs_int_t
ngx_js_ext_log(njs_vm_t *vm, njs_value_t *args, njs_uint_t nargs,
njs_index_t level, njs_value_t *retval)
{