docs: updated for docker; feat: local and latest dockerfiles; add: .dockerignore file; feat: implemented health check for adrianux app
This commit is contained in:
parent
2b6885055b
commit
fa730cac1b
7 changed files with 87 additions and 16 deletions
32
app.py
32
app.py
|
@ -1,7 +1,10 @@
|
|||
#!/usr/bin/env python3
|
||||
from flask import Flask, render_template, redirect, url_for
|
||||
from concurrent.futures import ThreadPoolExecutor
|
||||
import requests
|
||||
import os
|
||||
import time
|
||||
|
||||
|
||||
app = Flask(__name__)
|
||||
|
||||
|
@ -19,17 +22,18 @@ def homepage():
|
|||
|
||||
@app.route("/monitoring")
|
||||
def monitoring():
|
||||
git_url = os.environ['GIT_URL']
|
||||
website_url = os.environ['WEBSITE_URL']
|
||||
return render_template("monitoring.html", git_status = get_status(git_url), website_status = get_status(website_url) )
|
||||
global git_status
|
||||
global website_status
|
||||
executor = ThreadPoolExecutor(2)
|
||||
executor.submit(monitor)
|
||||
return render_template("monitoring.html", git_status = git_status, website_status = website_status)
|
||||
|
||||
def get_status_code(link):
|
||||
requested_site = requests.get(link)
|
||||
return requested_site.status_code
|
||||
|
||||
def get_status(link):
|
||||
requested_site = requests.get(link)
|
||||
status_code = requested_site.status_code
|
||||
try:
|
||||
match get_status_code(link):
|
||||
match status_code:
|
||||
case 200:
|
||||
return "ONLINE"
|
||||
case _:
|
||||
|
@ -37,6 +41,16 @@ def get_status(link):
|
|||
except:
|
||||
return "OFFLINE"
|
||||
|
||||
def monitor():
|
||||
while True:
|
||||
git_status = get_status(os.environ['GIT_URL'])
|
||||
website_status = get_status(os.environ['WEBSITE_URL'])
|
||||
time.sleep(5)
|
||||
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
mode = os.environ['DEBUG_MODE']
|
||||
app.run(debug=mode)
|
||||
app.run(debug=os.environ['DEBUG_MODE'])
|
||||
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue