summaryrefslogtreecommitdiff
path: root/f3s/prometheus/Justfile
blob: 216e5fc9c36eb6088ea5833e8fbec5b423a63164 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
NAMESPACE := "monitoring"
APP_NAME := "prometheus"

status:
    @echo "=== Prometheus Pods ==="
    @kubectl get pods -n {{NAMESPACE}} -l app.kubernetes.io/name=prometheus
    @echo ""
    @echo "=== Grafana Pods ==="
    @kubectl get pods -n {{NAMESPACE}} -l app.kubernetes.io/name=grafana
    @echo ""
    @echo "=== Alertmanager Pods ==="
    @kubectl get pods -n {{NAMESPACE}} -l app.kubernetes.io/name=alertmanager
    @echo ""
    @echo "=== Services ==="
    @kubectl get svc -n {{NAMESPACE}} | grep prometheus
    @echo ""
    @echo "=== PVCs ==="
    @kubectl get pvc -n {{NAMESPACE}} | grep -E '(prometheus|grafana)'
    @echo ""
    @echo "=== ArgoCD Status ==="
    @kubectl get application {{APP_NAME}} -n cicd -o jsonpath='Sync: {.status.sync.status}, Health: {.status.health.status}' 2>/dev/null && echo ""

logs-prometheus lines="100":
    kubectl logs -n {{NAMESPACE}} -l app.kubernetes.io/name=prometheus --tail={{lines}} -f

logs-grafana lines="100":
    kubectl logs -n {{NAMESPACE}} -l app.kubernetes.io/name=grafana --tail={{lines}} -f

logs-alertmanager lines="100":
    kubectl logs -n {{NAMESPACE}} -l app.kubernetes.io/name=alertmanager --tail={{lines}} -f

port-forward-prometheus port="9090":
    @echo "Forwarding Prometheus to localhost:{{port}}"
    kubectl port-forward -n {{NAMESPACE}} svc/prometheus-kube-prometheus-prometheus {{port}}:9090

port-forward-grafana port="3000":
    @echo "Forwarding Grafana to localhost:{{port}}"
    kubectl port-forward -n {{NAMESPACE}} svc/prometheus-grafana {{port}}:80

port-forward-alertmanager port="9093":
    @echo "Forwarding Alertmanager to localhost:{{port}}"
    kubectl port-forward -n {{NAMESPACE}} svc/prometheus-kube-prometheus-alertmanager {{port}}:9093

sync:
    @echo "Triggering ArgoCD sync..."
    @kubectl annotate application {{APP_NAME}} -n cicd argocd.argoproj.io/refresh=normal --overwrite
    @sleep 2
    @kubectl get application {{APP_NAME}} -n cicd -o jsonpath='Sync: {.status.sync.status}, Health: {.status.health.status}' && echo ""

argocd-status:
    argocd app get {{APP_NAME}} --core

restart-prometheus:
    @echo "Restarting Prometheus..."
    kubectl rollout restart -n {{NAMESPACE}} statefulset/prometheus-prometheus-kube-prometheus-prometheus

restart-grafana:
    @echo "Restarting Grafana..."
    kubectl rollout restart -n {{NAMESPACE}} deployment/prometheus-grafana

restart-alertmanager:
    @echo "Restarting Alertmanager..."
    kubectl rollout restart -n {{NAMESPACE}} statefulset/alertmanager-prometheus-kube-prometheus-alertmanager

restart: restart-grafana