![](/img/trans.png)
[英]How do you create and load modules dynamically at runtime in Elixir, or Erlang?
[英]How do you check the uptime of a Phoenix/Elixir/Erlang application?
你如何檢查Phoenix / Elixir / Erlang應用程序的正常運行時間? 如果執行:observer.start()並查看“系統”選項卡,則可以在“統計”區域中查看正常運行時間。 但我希望能夠以編程方式提取該信息並將其包含在報告中。 我已經找到了從哪里獲取大部分數據,但我沒有看到它從哪里獲取正常運行時間。
您可以使用statistics(runtime)
:
返回有關運行時的信息,以毫秒為單位。
這是Erlang運行時系統中所有線程的運行時間總和,因此可能大於掛鍾時間。
或statistics(wall_clock)
:
返回有關掛鍾的信息。 wall_clock可以與運行時相同的方式使用,除了測量實時而不是運行時或CPU時間。
在這兩種情況下,您需要在程序開頭調用它們以重置其計時器。 當你想打印傳遞的時間時,只需:
{_, Time1} = statistics(runtime).
要么
{_, Time2} = statistics(wall_clock).
因此,然后你將有時間Time1
或Time2
。 有關更多信息,請查看erlang:statistics/1
注意:如果您想要自Erlang VM啟動以來經過的總時間,您可以從元組中獲取第一個元素: {Total_Time, Time_Since_Last_Call} = statistics(wall_clock).
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.