aboutsummaryrefslogtreecommitdiff
path: root/src/zenutil/openprocesscache.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Transparent proxy mode (#823)Stefan Boberg4 days1-1/+5
| | | | | | | | | | | | | | | | | Adds a **transparent TCP proxy mode** to zenserver (activated via `zenserver proxy`), allowing it to sit between clients and upstream Zen servers to inspect and monitor HTTP/1.x traffic in real time. Primarily useful during development, to be able to observe multi-server/client interactions in one place. - **Dedicated proxy port** -- Proxy mode defaults to port 8118 with its own data directory to avoid collisions with a normal zenserver instance. - **TCP proxy core** (`src/zenserver/proxy/`) -- A new transparent TCP proxy that forwards connections to upstream targets, with support for both TCP/IP and Unix socket listeners. Multi-threaded I/O for connection handling. Supports Unix domain sockets for both upstream/downstream. - **HTTP traffic inspection** -- Parses HTTP/1.x request/response streams inline to extract method, path, status, content length, and WebSocket upgrades without breaking the proxied data. - **Proxy dashboard** -- A web UI showing live connection stats, per-target request counts, active connections, bytes transferred, and client IP/session ID rollups. - **Server mode display** -- Dashboard banner now shows the running server mode (Zen Proxy, Zen Compute, etc.). Supporting changes included in this branch: - **Wildcard log level matching** -- Log levels can now be set per-category using wildcard patterns (e.g. `proxy.*=debug`). - **`zen down --all`** -- New flag to shut down all running zenserver instances; also used by the new `xmake kill` task. - Minor test stability fixes (flaky hash collisions, per-thread RNG seeds). - Support ZEN_MALLOC environment variable for default allocator selection and switch default to rpmalloc - Fixed sentry-native build to allow LTO on Windows
* added support for dynamic LLM tags (#245)Stefan Boberg2024-12-021-0/+14
| | | | | * added FLLMTag which can be used to register memory tags outside of core * changed `UE_MEMSCOPE` -> `ZEN_MEMSCOPE` for consistency * instrumented some subsystems with dynamic tags
* Skip open process handle caching if we don't have a session id (#94)Dan Engelbrecht2024-06-131-0/+4
| | | * Don't try to cache process handle if we don't have a session id
* improved assert (#37)Dan Engelbrecht2024-04-041-2/+2
| | | | - Improvement: Add file and line to ASSERT exceptions - Improvement: Catch call stack when throwing assert exceptions and log/output call stack at important places to provide more context to caller
* added thread names (#441)Stefan Boberg2023-10-041-0/+2
| | | added names to process handle GC thread and main thread for easier identification in crash dumps / process monitoring
* crash in process cache (#375)Dan Engelbrecht2023-08-231-36/+70
| | | | * - Bugfix: Fix OpenProcessCache state error causing assert/error * changelog
* Cache process handles for FormatPackageMessage (#360)Dan Engelbrecht2023-08-171-0/+150