@masuidrive/procman 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +149 -0
- package/dist/src/cli/commands/clear-log.d.ts +10 -0
- package/dist/src/cli/commands/clear-log.d.ts.map +1 -0
- package/dist/src/cli/commands/clear-log.js +77 -0
- package/dist/src/cli/commands/clear-log.js.map +1 -0
- package/dist/src/cli/commands/exit.d.ts +10 -0
- package/dist/src/cli/commands/exit.d.ts.map +1 -0
- package/dist/src/cli/commands/exit.js +65 -0
- package/dist/src/cli/commands/exit.js.map +1 -0
- package/dist/src/cli/commands/help.d.ts +10 -0
- package/dist/src/cli/commands/help.d.ts.map +1 -0
- package/dist/src/cli/commands/help.js +340 -0
- package/dist/src/cli/commands/help.js.map +1 -0
- package/dist/src/cli/commands/list.d.ts +11 -0
- package/dist/src/cli/commands/list.d.ts.map +1 -0
- package/dist/src/cli/commands/list.js +130 -0
- package/dist/src/cli/commands/list.js.map +1 -0
- package/dist/src/cli/commands/load.d.ts +11 -0
- package/dist/src/cli/commands/load.d.ts.map +1 -0
- package/dist/src/cli/commands/load.js +250 -0
- package/dist/src/cli/commands/load.js.map +1 -0
- package/dist/src/cli/commands/log.d.ts +18 -0
- package/dist/src/cli/commands/log.d.ts.map +1 -0
- package/dist/src/cli/commands/log.js +282 -0
- package/dist/src/cli/commands/log.js.map +1 -0
- package/dist/src/cli/commands/restart.d.ts +11 -0
- package/dist/src/cli/commands/restart.d.ts.map +1 -0
- package/dist/src/cli/commands/restart.js +99 -0
- package/dist/src/cli/commands/restart.js.map +1 -0
- package/dist/src/cli/commands/start.d.ts +11 -0
- package/dist/src/cli/commands/start.d.ts.map +1 -0
- package/dist/src/cli/commands/start.js +105 -0
- package/dist/src/cli/commands/start.js.map +1 -0
- package/dist/src/cli/commands/stop.d.ts +12 -0
- package/dist/src/cli/commands/stop.d.ts.map +1 -0
- package/dist/src/cli/commands/stop.js +105 -0
- package/dist/src/cli/commands/stop.js.map +1 -0
- package/dist/src/cli/index.d.ts +3 -0
- package/dist/src/cli/index.d.ts.map +1 -0
- package/dist/src/cli/index.js +28 -0
- package/dist/src/cli/index.js.map +1 -0
- package/dist/src/cli/parser.d.ts +14 -0
- package/dist/src/cli/parser.d.ts.map +1 -0
- package/dist/src/cli/parser.js +131 -0
- package/dist/src/cli/parser.js.map +1 -0
- package/dist/src/cli/signal-handler.d.ts +51 -0
- package/dist/src/cli/signal-handler.d.ts.map +1 -0
- package/dist/src/cli/signal-handler.js +129 -0
- package/dist/src/cli/signal-handler.js.map +1 -0
- package/dist/src/cli/utils/error-handler.d.ts +39 -0
- package/dist/src/cli/utils/error-handler.d.ts.map +1 -0
- package/dist/src/cli/utils/error-handler.js +200 -0
- package/dist/src/cli/utils/error-handler.js.map +1 -0
- package/dist/src/cli/utils/error-utils.d.ts +16 -0
- package/dist/src/cli/utils/error-utils.d.ts.map +1 -0
- package/dist/src/cli/utils/error-utils.js +48 -0
- package/dist/src/cli/utils/error-utils.js.map +1 -0
- package/dist/src/cli/utils/ipc-client.d.ts +80 -0
- package/dist/src/cli/utils/ipc-client.d.ts.map +1 -0
- package/dist/src/cli/utils/ipc-client.js +275 -0
- package/dist/src/cli/utils/ipc-client.js.map +1 -0
- package/dist/src/config/config-loader.d.ts +74 -0
- package/dist/src/config/config-loader.d.ts.map +1 -0
- package/dist/src/config/config-loader.js +229 -0
- package/dist/src/config/config-loader.js.map +1 -0
- package/dist/src/config/config-normalizer.d.ts +135 -0
- package/dist/src/config/config-normalizer.d.ts.map +1 -0
- package/dist/src/config/config-normalizer.js +309 -0
- package/dist/src/config/config-normalizer.js.map +1 -0
- package/dist/src/config/config-reporter.d.ts +183 -0
- package/dist/src/config/config-reporter.d.ts.map +1 -0
- package/dist/src/config/config-reporter.js +311 -0
- package/dist/src/config/config-reporter.js.map +1 -0
- package/dist/src/config/config-validator.d.ts +163 -0
- package/dist/src/config/config-validator.d.ts.map +1 -0
- package/dist/src/config/config-validator.js +489 -0
- package/dist/src/config/config-validator.js.map +1 -0
- package/dist/src/config/config-watcher.d.ts +161 -0
- package/dist/src/config/config-watcher.d.ts.map +1 -0
- package/dist/src/config/config-watcher.js +245 -0
- package/dist/src/config/config-watcher.js.map +1 -0
- package/dist/src/config/index.d.ts +36 -0
- package/dist/src/config/index.d.ts.map +1 -0
- package/dist/src/config/index.js +41 -0
- package/dist/src/config/index.js.map +1 -0
- package/dist/src/config/secure-config-loader.d.ts +77 -0
- package/dist/src/config/secure-config-loader.d.ts.map +1 -0
- package/dist/src/config/secure-config-loader.js +326 -0
- package/dist/src/config/secure-config-loader.js.map +1 -0
- package/dist/src/daemon/base-socket-connection.d.ts +66 -0
- package/dist/src/daemon/base-socket-connection.d.ts.map +1 -0
- package/dist/src/daemon/base-socket-connection.js +192 -0
- package/dist/src/daemon/base-socket-connection.js.map +1 -0
- package/dist/src/daemon/component-manager.d.ts +180 -0
- package/dist/src/daemon/component-manager.d.ts.map +1 -0
- package/dist/src/daemon/component-manager.js +794 -0
- package/dist/src/daemon/component-manager.js.map +1 -0
- package/dist/src/daemon/crash-recovery.d.ts +71 -0
- package/dist/src/daemon/crash-recovery.d.ts.map +1 -0
- package/dist/src/daemon/crash-recovery.js +282 -0
- package/dist/src/daemon/crash-recovery.js.map +1 -0
- package/dist/src/daemon/daemon-main.d.ts +18 -0
- package/dist/src/daemon/daemon-main.d.ts.map +1 -0
- package/dist/src/daemon/daemon-main.js +160 -0
- package/dist/src/daemon/daemon-main.js.map +1 -0
- package/dist/src/daemon/daemon-state-manager.d.ts +111 -0
- package/dist/src/daemon/daemon-state-manager.d.ts.map +1 -0
- package/dist/src/daemon/daemon-state-manager.js +194 -0
- package/dist/src/daemon/daemon-state-manager.js.map +1 -0
- package/dist/src/daemon/data-directory.d.ts +51 -0
- package/dist/src/daemon/data-directory.d.ts.map +1 -0
- package/dist/src/daemon/data-directory.js +136 -0
- package/dist/src/daemon/data-directory.js.map +1 -0
- package/dist/src/daemon/index.d.ts +20 -0
- package/dist/src/daemon/index.d.ts.map +1 -0
- package/dist/src/daemon/index.js +24 -0
- package/dist/src/daemon/index.js.map +1 -0
- package/dist/src/daemon/ipc-client-base.d.ts +153 -0
- package/dist/src/daemon/ipc-client-base.d.ts.map +1 -0
- package/dist/src/daemon/ipc-client-base.js +476 -0
- package/dist/src/daemon/ipc-client-base.js.map +1 -0
- package/dist/src/daemon/ipc-command-handler.d.ts +107 -0
- package/dist/src/daemon/ipc-command-handler.d.ts.map +1 -0
- package/dist/src/daemon/ipc-command-handler.js +483 -0
- package/dist/src/daemon/ipc-command-handler.js.map +1 -0
- package/dist/src/daemon/ipc-factory.d.ts +92 -0
- package/dist/src/daemon/ipc-factory.d.ts.map +1 -0
- package/dist/src/daemon/ipc-factory.js +210 -0
- package/dist/src/daemon/ipc-factory.js.map +1 -0
- package/dist/src/daemon/ipc-server-base.d.ts +158 -0
- package/dist/src/daemon/ipc-server-base.d.ts.map +1 -0
- package/dist/src/daemon/ipc-server-base.js +491 -0
- package/dist/src/daemon/ipc-server-base.js.map +1 -0
- package/dist/src/daemon/message-protocol.d.ts +132 -0
- package/dist/src/daemon/message-protocol.d.ts.map +1 -0
- package/dist/src/daemon/message-protocol.js +252 -0
- package/dist/src/daemon/message-protocol.js.map +1 -0
- package/dist/src/daemon/named-pipe-client.d.ts +61 -0
- package/dist/src/daemon/named-pipe-client.d.ts.map +1 -0
- package/dist/src/daemon/named-pipe-client.js +221 -0
- package/dist/src/daemon/named-pipe-client.js.map +1 -0
- package/dist/src/daemon/named-pipe-server.d.ts +40 -0
- package/dist/src/daemon/named-pipe-server.d.ts.map +1 -0
- package/dist/src/daemon/named-pipe-server.js +102 -0
- package/dist/src/daemon/named-pipe-server.js.map +1 -0
- package/dist/src/daemon/orphan-detector.d.ts +66 -0
- package/dist/src/daemon/orphan-detector.d.ts.map +1 -0
- package/dist/src/daemon/orphan-detector.js +208 -0
- package/dist/src/daemon/orphan-detector.js.map +1 -0
- package/dist/src/daemon/pid-manager.d.ts +49 -0
- package/dist/src/daemon/pid-manager.d.ts.map +1 -0
- package/dist/src/daemon/pid-manager.js +110 -0
- package/dist/src/daemon/pid-manager.js.map +1 -0
- package/dist/src/daemon/procman-daemon.d.ts +188 -0
- package/dist/src/daemon/procman-daemon.d.ts.map +1 -0
- package/dist/src/daemon/procman-daemon.js +802 -0
- package/dist/src/daemon/procman-daemon.js.map +1 -0
- package/dist/src/daemon/reconnection-system.d.ts +113 -0
- package/dist/src/daemon/reconnection-system.d.ts.map +1 -0
- package/dist/src/daemon/reconnection-system.js +223 -0
- package/dist/src/daemon/reconnection-system.js.map +1 -0
- package/dist/src/daemon/resource-manager.d.ts +204 -0
- package/dist/src/daemon/resource-manager.d.ts.map +1 -0
- package/dist/src/daemon/resource-manager.js +423 -0
- package/dist/src/daemon/resource-manager.js.map +1 -0
- package/dist/src/daemon/signal-handler.d.ts +58 -0
- package/dist/src/daemon/signal-handler.d.ts.map +1 -0
- package/dist/src/daemon/signal-handler.js +142 -0
- package/dist/src/daemon/signal-handler.js.map +1 -0
- package/dist/src/daemon/simple-resource-manager.d.ts +95 -0
- package/dist/src/daemon/simple-resource-manager.d.ts.map +1 -0
- package/dist/src/daemon/simple-resource-manager.js +180 -0
- package/dist/src/daemon/simple-resource-manager.js.map +1 -0
- package/dist/src/daemon/unix-socket-client.d.ts +69 -0
- package/dist/src/daemon/unix-socket-client.d.ts.map +1 -0
- package/dist/src/daemon/unix-socket-client.js +313 -0
- package/dist/src/daemon/unix-socket-client.js.map +1 -0
- package/dist/src/daemon/unix-socket-server.d.ts +61 -0
- package/dist/src/daemon/unix-socket-server.d.ts.map +1 -0
- package/dist/src/daemon/unix-socket-server.js +262 -0
- package/dist/src/daemon/unix-socket-server.js.map +1 -0
- package/dist/src/daemon/zombie-reaper.d.ts +83 -0
- package/dist/src/daemon/zombie-reaper.d.ts.map +1 -0
- package/dist/src/daemon/zombie-reaper.js +278 -0
- package/dist/src/daemon/zombie-reaper.js.map +1 -0
- package/dist/src/process-manager/index.d.ts +13 -0
- package/dist/src/process-manager/index.d.ts.map +1 -0
- package/dist/src/process-manager/index.js +11 -0
- package/dist/src/process-manager/index.js.map +1 -0
- package/dist/src/process-manager/interfaces/index.d.ts +31 -0
- package/dist/src/process-manager/interfaces/index.d.ts.map +1 -0
- package/dist/src/process-manager/interfaces/index.js +14 -0
- package/dist/src/process-manager/interfaces/index.js.map +1 -0
- package/dist/src/process-manager/interfaces/process-group.d.ts +200 -0
- package/dist/src/process-manager/interfaces/process-group.d.ts.map +1 -0
- package/dist/src/process-manager/interfaces/process-group.js +10 -0
- package/dist/src/process-manager/interfaces/process-group.js.map +1 -0
- package/dist/src/process-manager/interfaces/process-lifecycle.d.ts +97 -0
- package/dist/src/process-manager/interfaces/process-lifecycle.d.ts.map +1 -0
- package/dist/src/process-manager/interfaces/process-lifecycle.js +10 -0
- package/dist/src/process-manager/interfaces/process-lifecycle.js.map +1 -0
- package/dist/src/process-manager/interfaces/process-monitor.d.ts +118 -0
- package/dist/src/process-manager/interfaces/process-monitor.d.ts.map +1 -0
- package/dist/src/process-manager/interfaces/process-monitor.js +10 -0
- package/dist/src/process-manager/interfaces/process-monitor.js.map +1 -0
- package/dist/src/process-manager/interfaces/process-persistence.d.ts +125 -0
- package/dist/src/process-manager/interfaces/process-persistence.d.ts.map +1 -0
- package/dist/src/process-manager/interfaces/process-persistence.js +10 -0
- package/dist/src/process-manager/interfaces/process-persistence.js.map +1 -0
- package/dist/src/process-manager/managed-process-info.d.ts +307 -0
- package/dist/src/process-manager/managed-process-info.d.ts.map +1 -0
- package/dist/src/process-manager/managed-process-info.js +650 -0
- package/dist/src/process-manager/managed-process-info.js.map +1 -0
- package/dist/src/process-manager/process-group-manager.d.ts +103 -0
- package/dist/src/process-manager/process-group-manager.d.ts.map +1 -0
- package/dist/src/process-manager/process-group-manager.js +400 -0
- package/dist/src/process-manager/process-group-manager.js.map +1 -0
- package/dist/src/process-manager/process-lifecycle-manager.d.ts +68 -0
- package/dist/src/process-manager/process-lifecycle-manager.d.ts.map +1 -0
- package/dist/src/process-manager/process-lifecycle-manager.js +372 -0
- package/dist/src/process-manager/process-lifecycle-manager.js.map +1 -0
- package/dist/src/process-manager/process-manager.d.ts +296 -0
- package/dist/src/process-manager/process-manager.d.ts.map +1 -0
- package/dist/src/process-manager/process-manager.js +659 -0
- package/dist/src/process-manager/process-manager.js.map +1 -0
- package/dist/src/process-manager/process-monitor.d.ts +95 -0
- package/dist/src/process-manager/process-monitor.d.ts.map +1 -0
- package/dist/src/process-manager/process-monitor.js +357 -0
- package/dist/src/process-manager/process-monitor.js.map +1 -0
- package/dist/src/process-manager/process-persistence.d.ts +68 -0
- package/dist/src/process-manager/process-persistence.d.ts.map +1 -0
- package/dist/src/process-manager/process-persistence.js +364 -0
- package/dist/src/process-manager/process-persistence.js.map +1 -0
- package/dist/src/process-manager/utils/mutex.d.ts +82 -0
- package/dist/src/process-manager/utils/mutex.d.ts.map +1 -0
- package/dist/src/process-manager/utils/mutex.js +172 -0
- package/dist/src/process-manager/utils/mutex.js.map +1 -0
- package/dist/src/services/index.d.ts +8 -0
- package/dist/src/services/index.d.ts.map +1 -0
- package/dist/src/services/index.js +8 -0
- package/dist/src/services/index.js.map +1 -0
- package/dist/src/services/log-manager-config.d.ts +65 -0
- package/dist/src/services/log-manager-config.d.ts.map +1 -0
- package/dist/src/services/log-manager-config.js +145 -0
- package/dist/src/services/log-manager-config.js.map +1 -0
- package/dist/src/services/log-manager-factory.d.ts +134 -0
- package/dist/src/services/log-manager-factory.d.ts.map +1 -0
- package/dist/src/services/log-manager-factory.js +203 -0
- package/dist/src/services/log-manager-factory.js.map +1 -0
- package/dist/src/services/log-manager.d.ts +170 -0
- package/dist/src/services/log-manager.d.ts.map +1 -0
- package/dist/src/services/log-manager.js +1199 -0
- package/dist/src/services/log-manager.js.map +1 -0
- package/dist/src/services/log-path-validator.d.ts +121 -0
- package/dist/src/services/log-path-validator.d.ts.map +1 -0
- package/dist/src/services/log-path-validator.js +302 -0
- package/dist/src/services/log-path-validator.js.map +1 -0
- package/dist/src/services/process-log-integration.d.ts +62 -0
- package/dist/src/services/process-log-integration.d.ts.map +1 -0
- package/dist/src/services/process-log-integration.js +157 -0
- package/dist/src/services/process-log-integration.js.map +1 -0
- package/dist/src/shared/config.d.ts +67 -0
- package/dist/src/shared/config.d.ts.map +1 -0
- package/dist/src/shared/config.js +92 -0
- package/dist/src/shared/config.js.map +1 -0
- package/dist/src/shared/constants-streaming.d.ts +39 -0
- package/dist/src/shared/constants-streaming.d.ts.map +1 -0
- package/dist/src/shared/constants-streaming.js +39 -0
- package/dist/src/shared/constants-streaming.js.map +1 -0
- package/dist/src/shared/constants.d.ts +60 -0
- package/dist/src/shared/constants.d.ts.map +1 -0
- package/dist/src/shared/constants.js +71 -0
- package/dist/src/shared/constants.js.map +1 -0
- package/dist/src/shared/errors.d.ts +70 -0
- package/dist/src/shared/errors.d.ts.map +1 -0
- package/dist/src/shared/errors.js +101 -0
- package/dist/src/shared/errors.js.map +1 -0
- package/dist/src/shared/index.d.ts +14 -0
- package/dist/src/shared/index.d.ts.map +1 -0
- package/dist/src/shared/index.js +22 -0
- package/dist/src/shared/index.js.map +1 -0
- package/dist/src/shared/ipc.d.ts +402 -0
- package/dist/src/shared/ipc.d.ts.map +1 -0
- package/dist/src/shared/ipc.js +85 -0
- package/dist/src/shared/ipc.js.map +1 -0
- package/dist/src/shared/logger.d.ts +38 -0
- package/dist/src/shared/logger.d.ts.map +1 -0
- package/dist/src/shared/logger.js +139 -0
- package/dist/src/shared/logger.js.map +1 -0
- package/dist/src/shared/logs.d.ts +53 -0
- package/dist/src/shared/logs.d.ts.map +1 -0
- package/dist/src/shared/logs.js +26 -0
- package/dist/src/shared/logs.js.map +1 -0
- package/dist/src/shared/process.d.ts +102 -0
- package/dist/src/shared/process.d.ts.map +1 -0
- package/dist/src/shared/process.js +55 -0
- package/dist/src/shared/process.js.map +1 -0
- package/dist/src/shared/types.d.ts +15 -0
- package/dist/src/shared/types.d.ts.map +1 -0
- package/dist/src/shared/types.js +8 -0
- package/dist/src/shared/types.js.map +1 -0
- package/dist/src/types/index.d.ts +19 -0
- package/dist/src/types/index.d.ts.map +1 -0
- package/dist/src/types/index.js +5 -0
- package/dist/src/types/index.js.map +1 -0
- package/dist/src/utils/event-cleanup.d.ts +30 -0
- package/dist/src/utils/event-cleanup.d.ts.map +1 -0
- package/dist/src/utils/event-cleanup.js +32 -0
- package/dist/src/utils/event-cleanup.js.map +1 -0
- package/dist/src/utils/memory/memory-monitor.d.ts +126 -0
- package/dist/src/utils/memory/memory-monitor.d.ts.map +1 -0
- package/dist/src/utils/memory/memory-monitor.js +246 -0
- package/dist/src/utils/memory/memory-monitor.js.map +1 -0
- package/package.json +74 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 masuidrive
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
# @masuidrive/procman
|
|
2
|
+
|
|
3
|
+
[](https://www.npmjs.com/package/@masuidrive/procman)
|
|
4
|
+
[](https://opensource.org/licenses/MIT)
|
|
5
|
+
[](https://nodejs.org/)
|
|
6
|
+
|
|
7
|
+
Node.jsベースのプロセス管理デーモンツール。開発環境における複数のサーバープロセスを統合的に管理し、開発者の生産性向上を目的とする。pm2の軽量版として、開発に必要な最小限の機能に絞って実装。
|
|
8
|
+
|
|
9
|
+
## 概要
|
|
10
|
+
|
|
11
|
+
procmanは、開発環境でのプロセス管理を簡単にするためのCLIツールです。Unix Domain Socket(Linux/macOS)またはNamed Pipe(Windows)を使用してデーモンプロセスと通信し、複数のアプリケーションプロセスを効率的に管理します。
|
|
12
|
+
|
|
13
|
+
## 主要機能
|
|
14
|
+
|
|
15
|
+
- プロセスのライフサイクル管理(起動、停止、再起動)
|
|
16
|
+
- 設定ファイルベースの一括管理
|
|
17
|
+
- 構造化されたログの集約と管理
|
|
18
|
+
- メモリ使用量によるプロセス自動再起動
|
|
19
|
+
- namespaceによるプロセスのグループ管理
|
|
20
|
+
- メモリリーク検出と防止機能
|
|
21
|
+
|
|
22
|
+
## インストール
|
|
23
|
+
|
|
24
|
+
### npmから公開パッケージをインストール
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
# グローバルインストール(CLIとして使用)
|
|
28
|
+
npm install -g @masuidrive/procman
|
|
29
|
+
|
|
30
|
+
# ローカルプロジェクトにインストール
|
|
31
|
+
npm install @masuidrive/procman
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
### 使用方法
|
|
35
|
+
|
|
36
|
+
グローバルインストール後、`procman`コマンドが使用可能になります:
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
# ヘルプを表示
|
|
40
|
+
procman --help
|
|
41
|
+
|
|
42
|
+
# バージョンを表示
|
|
43
|
+
procman --version
|
|
44
|
+
|
|
45
|
+
# プロセス状態を表示
|
|
46
|
+
procman status
|
|
47
|
+
|
|
48
|
+
# 設定ファイルを使ってプロセスを起動
|
|
49
|
+
procman start <service-name>
|
|
50
|
+
|
|
51
|
+
# プロセスを停止
|
|
52
|
+
procman stop <service-name>
|
|
53
|
+
|
|
54
|
+
# ヘルスチェック(メモリ使用状況含む)
|
|
55
|
+
procman health
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## サポートOS
|
|
59
|
+
|
|
60
|
+
- Linux(完全サポート)
|
|
61
|
+
- macOS(完全サポート)
|
|
62
|
+
- Windows(基本サポート)
|
|
63
|
+
|
|
64
|
+
## 設定ファイル例
|
|
65
|
+
|
|
66
|
+
procmanは設定ファイルを使用してプロセスを管理します:
|
|
67
|
+
|
|
68
|
+
```javascript
|
|
69
|
+
// procman.config.js
|
|
70
|
+
module.exports = {
|
|
71
|
+
apps: [{
|
|
72
|
+
name: 'my-app',
|
|
73
|
+
script: './app.js',
|
|
74
|
+
max_memory_restart: '500M' // 500MB超過で自動再起動
|
|
75
|
+
}]
|
|
76
|
+
};
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
### メモリ管理機能
|
|
80
|
+
|
|
81
|
+
procmanはPM2互換のメモリ管理機能を提供し、長期稼働でも安定した動作を実現します:
|
|
82
|
+
|
|
83
|
+
- **プロセスメモリ制限**: `max_memory_restart` オプションでプロセス毎のメモリ上限を設定
|
|
84
|
+
- **自動再起動**: メモリ制限を超えたプロセスを自動的に再起動
|
|
85
|
+
- **EventEmitterリーク防止**: シンプルなクリーンアップパターンで確実なリスナー解放
|
|
86
|
+
- **グレースフルシャットダウン**: 状態保存とコネクションドレイニング
|
|
87
|
+
- **ヘルスチェック**: `procman health` でメモリ使用状況を監視
|
|
88
|
+
|
|
89
|
+
詳細は [Memory Management Documentation](docs/technical/memory-management.md) を参照してください。
|
|
90
|
+
|
|
91
|
+
## 開発者向け情報
|
|
92
|
+
|
|
93
|
+
### 開発環境セットアップ
|
|
94
|
+
|
|
95
|
+
#### 必要な環境
|
|
96
|
+
|
|
97
|
+
- Node.js 18.x LTS
|
|
98
|
+
|
|
99
|
+
#### ローカル開発
|
|
100
|
+
|
|
101
|
+
```bash
|
|
102
|
+
# リポジトリをクローン
|
|
103
|
+
git clone <repository-url>
|
|
104
|
+
cd procman
|
|
105
|
+
|
|
106
|
+
# 依存関係をインストール
|
|
107
|
+
npm install
|
|
108
|
+
|
|
109
|
+
# プロジェクトをビルド
|
|
110
|
+
npm run build
|
|
111
|
+
|
|
112
|
+
# ローカルでテスト使用
|
|
113
|
+
npm link
|
|
114
|
+
procman --help
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
#### 利用可能なスクリプト
|
|
118
|
+
|
|
119
|
+
- `npm run build` - TypeScriptをJavaScriptにコンパイル
|
|
120
|
+
- `npm run dev` - 開発モードでCLIを実行
|
|
121
|
+
- `npm run clean` - ビルド成果物を削除
|
|
122
|
+
- `npm run test` - テストをウォッチモードで実行
|
|
123
|
+
- `npm run test:run` - テストを一度実行
|
|
124
|
+
- `npm run test:coverage` - カバレッジレポート付きでテスト実行
|
|
125
|
+
- `npm run lint` - ESLintを実行
|
|
126
|
+
- `npm run lint:fix` - ESLintで自動修正
|
|
127
|
+
- `npm run format` - Prettierでコードフォーマット
|
|
128
|
+
- `npm run format:check` - コードフォーマットをチェック
|
|
129
|
+
|
|
130
|
+
### アーキテクチャ
|
|
131
|
+
|
|
132
|
+
このCLIツールは以下で構築されています:
|
|
133
|
+
|
|
134
|
+
- **TypeScript** - 型安全性とモダンなJavaScript機能
|
|
135
|
+
- **Commander.js** - CLIフレームワーク
|
|
136
|
+
- **Vitest** - テストフレームワーク
|
|
137
|
+
- **ESLint + Prettier** - コード品質とフォーマット
|
|
138
|
+
|
|
139
|
+
### 開発
|
|
140
|
+
|
|
141
|
+
プロジェクトは厳密なTypeScript設定に従い、コード品質のためESLintとPrettierを使用しています。全てのコミットはリントとフォーマットチェックを通す必要があります。
|
|
142
|
+
|
|
143
|
+
```bash
|
|
144
|
+
# 全てのチェックを実行
|
|
145
|
+
./bin/test-unit.sh
|
|
146
|
+
./bin/test-integration.sh
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
このプロジェクトは devcontainer を使用して開発します。詳細は `./bin/README.md` を参照してください。
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Clear-log command implementation
|
|
3
|
+
*
|
|
4
|
+
* This command clears logs for processes managed by the daemon.
|
|
5
|
+
*/
|
|
6
|
+
export interface ClearLogCommandOptions {
|
|
7
|
+
namespace?: string;
|
|
8
|
+
}
|
|
9
|
+
export declare function execute(args: string[], _options: ClearLogCommandOptions): Promise<void>;
|
|
10
|
+
//# sourceMappingURL=clear-log.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clear-log.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/clear-log.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,MAAM,WAAW,sBAAsB;IACrC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAsB,OAAO,CAC3B,IAAI,EAAE,MAAM,EAAE,EAEd,QAAQ,EAAE,sBAAsB,GAC/B,OAAO,CAAC,IAAI,CAAC,CA4Ef"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Clear-log command implementation
|
|
3
|
+
*
|
|
4
|
+
* This command clears logs for processes managed by the daemon.
|
|
5
|
+
*/
|
|
6
|
+
import chalk from 'chalk';
|
|
7
|
+
import { handleCLIError } from '../utils/error-utils.js';
|
|
8
|
+
import { executeCommand } from '../utils/ipc-client.js';
|
|
9
|
+
export async function execute(args,
|
|
10
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
11
|
+
_options) {
|
|
12
|
+
try {
|
|
13
|
+
// Ensure HOME environment variable is set before any IPC operations
|
|
14
|
+
if (!process.env.HOME && !process.env.USERPROFILE) {
|
|
15
|
+
try {
|
|
16
|
+
const os = await import('os');
|
|
17
|
+
const detectedHome = os.homedir();
|
|
18
|
+
if (detectedHome) {
|
|
19
|
+
process.env.HOME = detectedHome;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
catch {
|
|
23
|
+
// If we can't detect home, continue anyway and let the IPC error handler deal with it
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
// Get target from args
|
|
27
|
+
const target = args[0];
|
|
28
|
+
if (!target) {
|
|
29
|
+
console.error(chalk.red('Error:'), 'Target process name is required');
|
|
30
|
+
console.error(chalk.yellow('Usage:'), 'procman clear-log <target> [--namespace <ns>]');
|
|
31
|
+
process.exit(1);
|
|
32
|
+
}
|
|
33
|
+
console.log(chalk.blue('Clearing logs for:'), target);
|
|
34
|
+
try {
|
|
35
|
+
// Send clear-log command to daemon
|
|
36
|
+
const response = await executeCommand('clear-log', {
|
|
37
|
+
target,
|
|
38
|
+
});
|
|
39
|
+
if (response.success) {
|
|
40
|
+
const data = response.data;
|
|
41
|
+
if (data?.cleared && data.cleared.length > 0) {
|
|
42
|
+
console.log(chalk.green('✓'), 'Logs cleared successfully');
|
|
43
|
+
console.log(chalk.gray('\nCleared log files:'));
|
|
44
|
+
for (const file of data.cleared) {
|
|
45
|
+
console.log(' •', chalk.gray(file));
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
console.log(chalk.yellow('No logs to clear for:'), target);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
console.error(chalk.red('Error:'), response.error?.message || 'Failed to clear logs');
|
|
54
|
+
process.exit(1);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
catch (error) {
|
|
58
|
+
// Handle daemon not running case gracefully for backward compatibility
|
|
59
|
+
if (error instanceof Error &&
|
|
60
|
+
(error.message.includes('Cannot connect to daemon') ||
|
|
61
|
+
error.message.includes('DAEMON_NOT_RUNNING') ||
|
|
62
|
+
error.message.includes('Failed to expand socket path') ||
|
|
63
|
+
error.message.includes('ECONNREFUSED'))) {
|
|
64
|
+
// For clear-log command failures, show a basic message for backward compatibility
|
|
65
|
+
console.log(chalk.yellow(`Logs cleared for: ${target} (daemon not running)`));
|
|
66
|
+
// Exit successfully for backward compatibility
|
|
67
|
+
process.exit(0);
|
|
68
|
+
}
|
|
69
|
+
// Re-throw other errors
|
|
70
|
+
throw error;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
catch (error) {
|
|
74
|
+
handleCLIError(error, 'Failed to execute command');
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=clear-log.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clear-log.js","sourceRoot":"","sources":["../../../../src/cli/commands/clear-log.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Exit command implementation
|
|
3
|
+
*
|
|
4
|
+
* This command shuts down the daemon and all managed processes.
|
|
5
|
+
*/
|
|
6
|
+
export interface ExitCommandOptions {
|
|
7
|
+
force?: boolean;
|
|
8
|
+
}
|
|
9
|
+
export declare function execute(args: string[], options: ExitCommandOptions): Promise<void>;
|
|
10
|
+
//# sourceMappingURL=exit.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exit.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/exit.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,MAAM,WAAW,kBAAkB;IACjC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,wBAAsB,OAAO,CAC3B,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAiEf"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Exit command implementation
|
|
3
|
+
*
|
|
4
|
+
* This command shuts down the daemon and all managed processes.
|
|
5
|
+
*/
|
|
6
|
+
import chalk from 'chalk';
|
|
7
|
+
import { handleCLIError } from '../utils/error-utils.js';
|
|
8
|
+
import { executeCommand } from '../utils/ipc-client.js';
|
|
9
|
+
export async function execute(args, options) {
|
|
10
|
+
try {
|
|
11
|
+
// Ensure HOME environment variable is set before any IPC operations
|
|
12
|
+
if (!process.env.HOME && !process.env.USERPROFILE) {
|
|
13
|
+
try {
|
|
14
|
+
const os = await import('os');
|
|
15
|
+
const detectedHome = os.homedir();
|
|
16
|
+
if (detectedHome) {
|
|
17
|
+
process.env.HOME = detectedHome;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
catch {
|
|
21
|
+
// If we can't detect home, continue anyway and let the IPC error handler deal with it
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
// Confirm shutdown
|
|
25
|
+
if (!options.force) {
|
|
26
|
+
console.log(chalk.yellow('Warning:'), 'This will shut down the daemon and all managed processes.');
|
|
27
|
+
}
|
|
28
|
+
console.log(chalk.blue('Shutting down daemon...'));
|
|
29
|
+
try {
|
|
30
|
+
// Send exit command to daemon
|
|
31
|
+
const response = await executeCommand('exit', {});
|
|
32
|
+
if (response.success) {
|
|
33
|
+
console.log(chalk.green('✓'), 'Daemon shutdown initiated successfully');
|
|
34
|
+
// Display shutdown info if available
|
|
35
|
+
const data = response.data;
|
|
36
|
+
if (data?.processCount !== undefined) {
|
|
37
|
+
console.log(chalk.gray(`Stopped ${data.processCount} process(es)`));
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
console.error(chalk.red('Error:'), response.error?.message || 'Failed to shut down daemon');
|
|
42
|
+
process.exit(1);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
catch (error) {
|
|
46
|
+
// Handle daemon not running case gracefully for backward compatibility
|
|
47
|
+
if (error instanceof Error &&
|
|
48
|
+
(error.message.includes('Cannot connect to daemon') ||
|
|
49
|
+
error.message.includes('DAEMON_NOT_RUNNING') ||
|
|
50
|
+
error.message.includes('Failed to expand socket path') ||
|
|
51
|
+
error.message.includes('ECONNREFUSED'))) {
|
|
52
|
+
// For exit command when daemon is already not running, that's success
|
|
53
|
+
console.log(chalk.yellow('Daemon is not running (already stopped)'));
|
|
54
|
+
// Exit successfully for backward compatibility
|
|
55
|
+
process.exit(0);
|
|
56
|
+
}
|
|
57
|
+
// Re-throw other errors
|
|
58
|
+
throw error;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
catch (error) {
|
|
62
|
+
handleCLIError(error, 'Failed to execute command');
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=exit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exit.js","sourceRoot":"","sources":["../../../../src/cli/commands/exit.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAOxD,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,IAAc,EACd,OAA2B;IAE3B,IAAI,CAAC;QACH,oEAAoE;QACpE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;YAClD,IAAI,CAAC;gBACH,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC9B,MAAM,YAAY,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;gBAClC,IAAI,YAAY,EAAE,CAAC;oBACjB,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,YAAY,CAAC;gBAClC,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,sFAAsF;YACxF,CAAC;QACH,CAAC;QAED,mBAAmB;QACnB,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,EACxB,2DAA2D,CAC5D,CAAC;QACJ,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC;QAEnD,IAAI,CAAC;YACH,8BAA8B;YAC9B,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAElD,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACrB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,wCAAwC,CAAC,CAAC;gBAExE,qCAAqC;gBACrC,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAwB,CAAC;gBAC/C,IAAI,IAAI,EAAE,YAAY,KAAK,SAAS,EAAE,CAAC;oBACrC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,YAAY,cAAc,CAAC,CAAC,CAAC;gBACtE,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EACnB,QAAQ,CAAC,KAAK,EAAE,OAAO,IAAI,4BAA4B,CACxD,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,uEAAuE;YACvE,IACE,KAAK,YAAY,KAAK;gBACtB,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAC;oBACjD,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC;oBAC5C,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,8BAA8B,CAAC;oBACtD,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,EACzC,CAAC;gBACD,sEAAsE;gBACtE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,yCAAyC,CAAC,CAAC,CAAC;gBACrE,+CAA+C;gBAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,wBAAwB;YACxB,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,cAAc,CAAC,KAAK,EAAE,2BAA2B,CAAC,CAAC;IACrD,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Help command implementation
|
|
3
|
+
*
|
|
4
|
+
* This command displays usage information for the procman CLI.
|
|
5
|
+
*/
|
|
6
|
+
export interface HelpCommandOptions {
|
|
7
|
+
format?: 'markdown' | 'text';
|
|
8
|
+
}
|
|
9
|
+
export declare function execute(args: string[], options: HelpCommandOptions): Promise<void>;
|
|
10
|
+
//# sourceMappingURL=help.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/help.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC;CAC9B;AA2ND,wBAAsB,OAAO,CAC3B,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAqBf"}
|