Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
D
docker_health_check
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
CI / CD Analytics
Repository Analytics
Value Stream Analytics
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
jithu.tagore
docker_health_check
Commits
ba3ae033
Commit
ba3ae033
authored
Nov 17, 2022
by
jithu.tagore
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Update infra_as_service_monitor.py
parent
dc092403
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
49 additions
and
22 deletions
+49
-22
infra_as_service_monitor.py
infra_as_service_monitor.py
+49
-22
No files found.
infra_as_service_monitor.py
View file @
ba3ae033
...
...
@@ -55,6 +55,7 @@ filesystem = config["disk"]["filesystem"]
server
=
config
[
"type"
][
"server"
]
include_all_filesystem
=
config
[
"disk"
][
"include_all_filesystem"
]
service_list
=
config
[
"service"
][
"service_list"
]
.
split
(
","
)
container_list
=
config
[
"docker_container"
][
"container_list"
]
.
split
(
","
)
status_dict
=
{}
container_restart
=
[]
data
=
[]
...
...
@@ -173,28 +174,54 @@ def restart(service_name):
def
docker_container
():
docker_client
=
docker
.
from_env
()
containers
=
docker_client
.
containers
.
list
(
all
=
True
)
for
i
in
containers
:
print
(
i
)
if
i
.
attrs
[
"State"
][
"Status"
]
==
"restarting"
or
i
.
attrs
[
"State"
][
"Status"
]
==
"exited"
:
container_restart
.
append
(
i
)
start
=
i
.
attrs
[
"State"
][
"StartedAt"
]
end
=
i
.
attrs
[
"State"
][
"FinishedAt"
]
start_date
=
dateutil
.
parser
.
isoparse
(
start
)
end_date
=
dateutil
.
parser
.
isoparse
(
end
)
time
=
((
end_date
-
start_date
)
.
total_seconds
())
if
i
.
attrs
[
"State"
][
"Status"
]
==
"running"
or
i
.
attrs
[
"State"
][
"Status"
]
==
"created"
:
start_date
=
dateutil
.
parser
.
isoparse
(
start
)
end_date
=
datetime
.
datetime
.
now
(
tz
=
datetime
.
timezone
.
utc
)
time
=
(
end_date
.
astimezone
(
datetime
.
timezone
.
utc
)
-
start_date
.
astimezone
(
datetime
.
timezone
.
utc
))
.
total_seconds
()
if
time
>
3600
:
time
=
time
/
3600
timing
=
str
(
int
(
time
))
+
"hour"
elif
time
<
60
:
timing
=
str
(
int
(
time
))
+
"seconds"
elif
time
>
60
:
time
=
time
/
60
timing
=
str
(
int
(
time
))
+
"minute"
data
.
append
([
i
.
name
,
i
.
id
,
i
.
attrs
[
"State"
][
"Status"
],
timing
])
if
len
(
container_list
)
!=
0
:
for
each
in
container_list
:
container
=
docker_client
.
containers
.
get
(
each
)
if
container
in
containers
:
if
container
.
attrs
[
"State"
][
"Status"
]
==
"restarting"
or
container
.
attrs
[
"State"
][
"Status"
]
==
"exited"
:
container_restart
.
append
(
i
)
start
=
i
.
attrs
[
"State"
][
"StartedAt"
]
end
=
i
.
attrs
[
"State"
][
"FinishedAt"
]
start_date
=
dateutil
.
parser
.
isoparse
(
start
)
end_date
=
dateutil
.
parser
.
isoparse
(
end
)
time
=
((
end_date
-
start_date
)
.
total_seconds
())
if
container
.
attrs
[
"State"
][
"Status"
]
==
"running"
or
container
.
attrs
[
"State"
][
"Status"
]
==
"created"
:
start_date
=
dateutil
.
parser
.
isoparse
(
start
)
end_date
=
datetime
.
datetime
.
now
(
tz
=
datetime
.
timezone
.
utc
)
time
=
(
end_date
.
astimezone
(
datetime
.
timezone
.
utc
)
-
start_date
.
astimezone
(
datetime
.
timezone
.
utc
))
.
total_seconds
()
if
time
>
3600
:
time
=
time
/
3600
timing
=
str
(
int
(
time
))
+
"hour"
elif
time
<
60
:
timing
=
str
(
int
(
time
))
+
"seconds"
elif
time
>
60
:
time
=
time
/
60
timing
=
str
(
int
(
time
))
+
"minute"
data
.
append
([
i
.
name
,
i
.
id
,
i
.
attrs
[
"State"
][
"Status"
],
timing
])
else
:
for
each
in
containers
:
if
each
.
attrs
[
"State"
][
"Status"
]
==
"restarting"
or
each
.
attrs
[
"State"
][
"Status"
]
==
"exited"
:
container_restart
.
append
(
i
)
start
=
i
.
attrs
[
"State"
][
"StartedAt"
]
end
=
i
.
attrs
[
"State"
][
"FinishedAt"
]
start_date
=
dateutil
.
parser
.
isoparse
(
start
)
end_date
=
dateutil
.
parser
.
isoparse
(
end
)
time
=
((
end_date
-
start_date
)
.
total_seconds
())
if
each
.
attrs
[
"State"
][
"Status"
]
==
"running"
or
each
.
attrs
[
"State"
][
"Status"
]
==
"created"
:
start_date
=
dateutil
.
parser
.
isoparse
(
start
)
end_date
=
datetime
.
datetime
.
now
(
tz
=
datetime
.
timezone
.
utc
)
time
=
(
end_date
.
astimezone
(
datetime
.
timezone
.
utc
)
-
start_date
.
astimezone
(
datetime
.
timezone
.
utc
))
.
total_seconds
()
if
time
>
3600
:
time
=
time
/
3600
timing
=
str
(
int
(
time
))
+
"hour"
elif
time
<
60
:
timing
=
str
(
int
(
time
))
+
"seconds"
elif
time
>
60
:
time
=
time
/
60
timing
=
str
(
int
(
time
))
+
"minute"
data
.
append
([
i
.
name
,
i
.
id
,
i
.
attrs
[
"State"
][
"Status"
],
timing
])
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment