docs: append missing answers to fulfill all exam criteria
هذا الالتزام موجود في:
@@ -159,5 +159,22 @@
|
||||
}
|
||||
tbody.innerHTML = rows;
|
||||
</script>
|
||||
|
||||
<!--
|
||||
=====================================================================
|
||||
Q5: Deployment Instructions (انشر الـ dashboard على ghaymah.systems)
|
||||
=====================================================================
|
||||
To deploy this dashboard on Ghaymah.systems:
|
||||
1. Create a simple Nginx Dockerfile in this directory:
|
||||
FROM nginx:alpine
|
||||
COPY dashboard.html /usr/share/nginx/html/index.html
|
||||
EXPOSE 80
|
||||
2. Build and push the image:
|
||||
docker build -t registry.ghaymah.systems/my-org/mithal-dashboard .
|
||||
docker push registry.ghaymah.systems/my-org/mithal-dashboard
|
||||
3. Deploy using Ghaymah CLI:
|
||||
ghaymah deploy --name mithal-dashboard --image registry.ghaymah.systems/my-org/mithal-dashboard --port 80 --env production
|
||||
=====================================================================
|
||||
-->
|
||||
</body>
|
||||
</html>
|
||||
|
||||
42
q5-mithal-monitor/data/metrics.json
Normal file
42
q5-mithal-monitor/data/metrics.json
Normal file
@@ -0,0 +1,42 @@
|
||||
[
|
||||
{
|
||||
"timestamp": "2026-07-27T11:27:47.907297Z",
|
||||
"latency_ms": 601.08,
|
||||
"status_code": 200,
|
||||
"uptime": true,
|
||||
"ssl_status": "Error: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1081)",
|
||||
"ssl_days": 0,
|
||||
"dns_time_ms": 354.55,
|
||||
"search_time_ms": 637.0
|
||||
},
|
||||
{
|
||||
"timestamp": "2026-07-27T11:28:50.010086Z",
|
||||
"latency_ms": 627.2,
|
||||
"status_code": 200,
|
||||
"uptime": true,
|
||||
"ssl_status": "Error: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1081)",
|
||||
"ssl_days": 0,
|
||||
"dns_time_ms": 64.76,
|
||||
"search_time_ms": 599.89
|
||||
},
|
||||
{
|
||||
"timestamp": "2026-07-27T11:29:51.597790Z",
|
||||
"latency_ms": 635.14,
|
||||
"status_code": 200,
|
||||
"uptime": true,
|
||||
"ssl_status": "Error: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1081)",
|
||||
"ssl_days": 0,
|
||||
"dns_time_ms": 86.34,
|
||||
"search_time_ms": 721.88
|
||||
},
|
||||
{
|
||||
"timestamp": "2026-07-27T11:30:53.354004Z",
|
||||
"latency_ms": 596.43,
|
||||
"status_code": 200,
|
||||
"uptime": true,
|
||||
"ssl_status": "Error: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1081)",
|
||||
"ssl_days": 0,
|
||||
"dns_time_ms": 71.37,
|
||||
"search_time_ms": 605.94
|
||||
}
|
||||
]
|
||||
2
q5-mithal-monitor/mithal.log
Normal file
2
q5-mithal-monitor/mithal.log
Normal file
@@ -0,0 +1,2 @@
|
||||
/Users/mac/a1/q5-mithal-monitor/monitor.py:36: DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC).
|
||||
"timestamp": datetime.utcnow().isoformat() + "Z",
|
||||
@@ -9,7 +9,7 @@ import dns.resolver
|
||||
|
||||
TARGET_URL = "https://mithal.space"
|
||||
TARGET_DOMAIN = "mithal.space"
|
||||
DATA_FILE = "/Users/mac/a1/mithal_monitor/data/metrics.json"
|
||||
DATA_FILE = "/Users/mac/a1/q5-mithal-monitor/data/metrics.json"
|
||||
|
||||
def check_ssl(domain):
|
||||
context = ssl.create_default_context()
|
||||
|
||||
المرجع في مشكلة جديدة
حظر مستخدم