計算Docker實例的運行時間

一,原理上說:運行時長 = 當前系統時間 - 開始時間

T2 =(date --date=¥START+%s) //轉換爲紀元時間
T1 =(date --date=¥STOP+%s)  //轉換爲紀元時間

root ~]# echo ¥(¥T1-¥T2) seconds
root ~]# 9 seconds
root ~]#

二,實例如下:

當前問題時間格式的轉換 docker是 UTC, centos是 CST
#docker inspect 實例名 //獲取細節信息

1.獲取docker實例 XXXX 開始運行的時間
[root@01000006 ~]# docker inspect --format='{{.State.StartedAt}}' XXXX
2020-04-02T08:26:00.005502399Z
[root@01000006 ~]#
2.換成UNIX紀元時間:
[root@01000006 ~]# echo $START_TIMESTAMP seconds
1585815960 seconds
[root@01000006 ~]#
3.如何把當前時間轉換爲unix的紀元時間?
[root@01000006 ~]# echo $(date +%s) seconds
1585824288 seconds
[root@01000006 ~]# 
4.兩者做差,就是運行的時間秒,再轉換爲時分秒
#START=$(docker inspect --format='{{.State.FinishedAt}}' XXXX)
#echo $ (date --date=$START +%s)     //獲得實例的開始運行時間
#echo $(date +%s)  //獲取當前時間
已運行時間=當前時間戳-開始運行時間戳 ?

//開始時間戳從docker裏面獲取,若暫停了容器,以再啓動的時間爲開始時間戳

三,時間邏輯:


12530 秒
12530/3600 =......餘數(秒)
餘數/60        =......餘數(秒)
00:00:00     (時:分:秒)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章