如何檢查Phoenix/Elixir/Erlang應用程序的正常運行時間?如果您這樣做:observer.start()並查看系統選項卡,您可以在統計區域中看到正常運行時間。但我希望能夠以編程方式提取該信息並將其包含在報告中。我已經想出了從哪裏獲得大部分數據,但我不知道它從哪裏獲得正常運行時間。如何檢查Phoenix/Elixir/Erlang應用程序的正常運行時間?
7
A
回答
11
您可以使用statistics(runtime)
:
有關運行信息返回,以毫秒爲單位。
這是Erlang運行時系統中所有線程運行時間的總和,因此可以大於掛鐘時間。
或者statistics(wall_clock)
:
約掛鐘返回信息。 wall_clock可以以與運行時相同的方式在 中使用,不同之處在於實時測量值相對於運行時或CPU時間的 。
在這兩種情況下,您都需要在程序開始時調用它們以重置其定時器。當你想打印經過的時間只是做:
{_, Time1} = statistics(runtime).
或者
{_, Time2} = statistics(wall_clock).
因此,然後你將有Time1
或Time2
的時間。欲瞭解更多信息,看看erlang:statistics/1
注:如果你想自二郎山VM開始,你可以從元組採取的第一個元素經過的總時間:{Total_Time, Time_Since_Last_Call} = statistics(wall_clock).
+5
首先,'runtime'參數對於這個問題沒有用處,因爲它是累積的調度器數量,而手冊頁的狀態則可能比掛鐘時間長。對於這個問題,使用'wall_clock'。其次,在程序開始時你並不需要調用它。無論何時調用它,返回元組的第一個數字都是總運行時間。第二個數字是自上次調用'statistics/1'以來的時間。對於這個問題,只需使用第一個數字。 –
相關問題
- 1. 檢查ping和正常運行時間?
- 2. .Net應用程序正常運行時,打破預定時間
- 3. 網絡應用程序的100%正常運行時間
- 4. 更新100%正常運行時間的應用程序
- 5. 獲得程序正常運行時間
- 6. 如何檢查IIS狀態和正常運行時間?
- 7. 如何在Windows 7中檢查系統正常運行時間
- 8. 如何檢查AWS EC2實例當前正常運行時間
- 9. 獲取應用程序正常運行時間
- 10. ANR經過長時間的應用程序正常運行時間後
- 11. 如何檢查我的程序集8086程序是否運行正常
- 12. 如何檢查應用程序是否正在運行,否則運行它?
- 13. 檢查應用程序的運行 - InstallJammer
- 14. 查詢Stackdriver正常運行時間檢查
- 15. 如何使控制檯應用程序,檢查程序正在運行
- 16. 根據時間檢查時間和運行程序的功能。
- 17. 獲取HDA應用程序的遠程服務器正常運行時間
- 18. Oracle正常運行時間查詢
- 19. UWP應用程序的運行時間
- 20. 長時間運行的應用程序
- 21. iphone應用程序運行時異常
- 22. 檢查當前的WPF應用程序是否正在運行?
- 23. Node.js和永遠如何獲得應用程序內的正常運行時間/開始時間
- 24. 如何在正常運行應用程序時在我的web應用程序中進行更改?
- 25. VS2012 - 如何在運行期間檢查程序是否在調試時運行?
- 26. C#在應用程序運行時檢查新的應用程序項目
- 27. 從Silverlight OOB應用程序如何檢查進程是否正在運行
- 28. linux正常運行時間
- 29. StackDriver正常運行時間檢查維護窗口
- 30. 如何檢查我的iPhone應用程序正在運行的硬件?
在Erlang的外殼,如果你有最近版本的Erlang/OTP,您只需輸入「uptime()」。 – RichardC