Có cách nào để theo dõi trạng thái của máy chủ puma không? đặc biệt nhất, có bao nhiêu công nhân bận rộn và số lượng công việc mà mỗi nhân viên được cấp phép. tốt nhất sẽ là một cái gì đó tương tự như apache's mod_statusLàm thế nào để giám sát một máy chủ puma?
Trả lời
lẽ
$ touch /path/to/your/stats.txt
$ puma -S /path/to/your/stats.txt
trong một thiết bị đầu cuối
$ watch cat /path/to/your/stats.txt
Kết quả trong:
---
pid: 14364
config: !ruby/object:Puma::Configuration
cli_options:
conf:
options:
:min_threads: 0
:max_threads: 16
:quiet: false
:debug: false
:binds:
- tcp://0.0.0.0:9292
:workers: 0
:daemon: false
:mode: :http
:before_fork: []
:worker_timeout: 60
:worker_boot_timeout: 60
:worker_shutdown_timeout: 30
:state: /path/to/your/stats.txt
:config_file:
:control_auth_token: 21c9241912a8e0e7ddaabac667ff5682
:tag: solar
:environment: development
Nhưng trông tĩnh :(
Bắt đầu từ ứng dụng của bạn qua puma như thế này:
$ puma -S /path/to/your/stats.txt -C config/puma.rb --control tcp://0.0.0.0:9191 --control-token foo config.ru
cho phép bạn sau để truy vấn mỗi webbrowser của bạn:
$ http://localhost:9191/stats?token=foo
or
$ pumactl -C tcp://0.0.0.0:9191 -T foo stats
Hệ quả là :
{ "workers": 3, "phase": 0, "booted_workers": 3 }
nào trông năng động hơn ...
Edit_0:
Là người lao động quy trình, người ta có thể cũng công cụ đòn bẩy được cung cấp bởi hệ điều hành để thu thập thông tin, ví dụ trên Linux:
Bắt đầu từ một trường hợp puma:
puma -S p/stats.txt -C config/puma.rb --control tcp://0.0.0.0:9191 --control-token foo config.ru
[1908] Puma starting in cluster mode...
[1908] * Version 2.15.3 (ruby 2.1.5-p273), codename: Autumn Arbor Airbrush
[1908] * Min threads: 8, max threads: 32
[1908] * Environment: development
[1908] * Process workers: 3
[1908] * Preloading application
[1908] * Listening on tcp://0.0.0.0:9292
[1908] Use Ctrl-C to stop
[1908] * Starting control server on tcp://0.0.0.0:9191
[1908] - Worker 0 (pid: 1921) booted, phase: 0
[1908] - Worker 1 (pid: 1929) booted, phase: 0
[1908] - Worker 2 (pid: 1937) booted, phase: 0
Sử dụng hàng đầu để điều tra lao động:
$ top -p1921 -p1929 -p1937 -n 1
cho chúng ta
Tasks: 3 total, 0 running, 3 sleeping, 0 stopped, 0 zombie
%Cpu(s): 8.4 us, 1.5 sy, 0.0 ni, 88.9 id, 1.2 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem: 4058820 total, 1626576 used, 2432244 free, 56456 buffers
KiB Swap: 9609212 total, 0 used, 9609212 free. 424948 cached Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1921 benjamin 20 0 1171600 85484 3116 S 0.0 2.1 0:00.38 puma
1929 benjamin 20 0 1171600 85264 2884 S 0.0 2.1 0:00.37 puma
1937 benjamin 20 0 1171600 85264 2884 S 0.0 2.1 0:00.42 puma
mà từ đó người ta có thể phân tích ra các thông tin có liên quan như Sử dụng CPU hoặc RAM.
Bạn có thể sử dụng công cụ pumactl
:
$ pumactl --help
thx Yuri, nhưng điều này không cho phép tôi theo dõi số lượng công nhân/chủ đề, đó là những gì được yêu cầu. tui bỏ lỡ điều gì vậy? – Tal
- 1. Làm thế nào để giám sát một máy chủ web với daemontools?
- 2. Làm thế nào để chạy Giám sát Elixir theo số
- 3. Làm thế nào để thêm một sự chậm trễ quá trình giám sát trong giám sát - linux
- 4. Làm thế nào để giám sát/tính toán băng thông sử dụng của một máy chủ NodeJS?
- 5. Đo và giám sát Node.JS hiệu suất máy chủ
- 6. Phần mềm giám sát và cảnh báo máy chủ?
- 7. Giám sát máy chủ đơn giản với Java
- 8. Thiết lập Giám sát trên máy chủ AWS AMI Linux
- 9. Giám sát viên Elixir - Làm thế nào để bạn đặt tên một Nhiệm vụ được Giám sát
- 10. Làm thế nào để giám sát tín hiệu QT?
- 11. Giám sát ZooKeeper với Giám sát
- 12. Làm thế nào để giám sát hiệu quả một thư mục để thay đổi trên linux?
- 13. Docker, Giám sát và giám sát-stdout
- 14. Giám sát
- 15. Howto Giám sát một số ứng dụng web (với JMX) trên máy chủ Tomcat?
- 16. Giám sát celerybeat với người giám sát và virtualenv
- 17. Làm thế nào để sử dụng Fiddler để giám sát một Dịch vụ Windows?
- 18. Giám sát lưu lượng mạng
- 19. Giám sát ứng dụng virtualenv django qua người giám sát
- 20. Làm thế nào để giải thích cây giám sát của Erlang?
- 21. Làm thế nào để giám sát "check-in/push-es" đến một kho Mercurial trung tâm?
- 22. Làm thế nào để thiết lập một nhóm trong giám sát?
- 23. Powershell im lặng/không giám sát cài đặt máy chủ sql 2008
- 24. Giám sát USB OSX
- 25. Người giám sát OTP có thể giám sát quy trình trên một nút từ xa không?
- 26. Làm thế nào để giám sát hồ bơi kết nối hoạt động trong SQL Server?
- 27. Giám sát khuôn khổ còn lại django api trên máy chủ sản xuất
- 28. Giám sát IIS 6.0
- 29. Làm thế nào để giám sát quá trình thực hiện chương trình/trong cửa sổ?
- 30. Làm thế nào để giám sát các nhà phát triển dữ liệu công việc trong Eclipse?
thx @benjamin nhưng thông số '-S' được ghi lại ở đâu? – Tal
@Tal, trong phiên bản puma 2.15.3 cuộc gọi tới "puma --help" hiển thị tài liệu ngắn. Tôi sẽ cập nhật câu trả lời của mình để hiển thị cho bạn nội dung ... – benjamin
thx @benjamin, nhưng tiếc là có vẻ như điều này không cung cấp thông tin chính tôi đang tìm kiếm, đó là trạng thái của người lao động (bận/nhàn rỗi) – Tal