stable

Clone or download

Read-only

Add logging and monitoring for git:pre-receive

The following stats are now recorded with Prometheus: - Total number of ValidResponse received - Total number of UserCodeErrorResponse received - Duration of git pre-receive processing in micro seconds - Memory consumed by the git pre-receive processing in bytes How to test: - Make sure that Prometheus is setup on your Tuleap instance (https://docs.tuleap.org/administration-guide/system-administration/monitoring-with-prometheus.html) - tuleap config-set feature_flag_enable_pre_receive_command 1 (set the feature flag) - Build and install wasmtime-wrapper-lib: `nix-build ./src/additional-packages/tuleap-wasmtime-wrapper-lib.nix` - Statistics are recorded under the `/metrics` end point of your instance Part of story #31077 deploy a WebAssembly module to validate incoming references as a pre-receive hook Change-Id: Idf890b102d8c1b0bbdecbbd589e8c4f2a62c74cc

Modified Files

Name
M plugins/git/include/gitPlugin.php +2 −1 Go to diff View file
M src/additional-packages/wasmtime-wrapper-lib/src/lib.rs +116 −37 Go to diff View file
M src/additional-packages/wasmtime-wrapper-lib/src/wire.rs +6 −3 Go to diff View file
M src/additional-packages/wasmtime-wrapper-lib/test-wasm-modules/Cargo.toml +4 −0 Go to diff View file
A src/additional-packages/wasmtime-wrapper-lib/test-wasm-modules/src/memory-alloc-success/main.rs +28 −0 Go to diff View file
M src/common/WebAssembly/FFIWASMCaller.php +89 −6 Go to diff View file
A src/common/WebAssembly/WASMStatistics.php +29 −0 Go to diff View file
M src/common/WebAssembly/WASMUserCodeErrorResponse.php +1 −0 Go to diff View file
M src/common/WebAssembly/WASMValidResponse.php +1 −0 Go to diff View file