align for IA agents + grafana
This commit is contained in:
parent
a4db525885
commit
9999eaf401
@ -21,6 +21,9 @@ A déployer par **`lecoffre_node/`** :
|
|||||||
- image: git.4nkweb.com/4nk/bitcoin:latest (pour mainchain et signet custom)
|
- image: git.4nkweb.com/4nk/bitcoin:latest (pour mainchain et signet custom)
|
||||||
- image: git.4nkweb.com/4nk/blindbit-oracle:dev (pour scan des blocs et détection des secrets dans les transaction silent payment)
|
- image: git.4nkweb.com/4nk/blindbit-oracle:dev (pour scan des blocs et détection des secrets dans les transaction silent payment)
|
||||||
- image: containrrr/watchtower (pour la surveillance et mise à jour automatique des images)
|
- image: containrrr/watchtower (pour la surveillance et mise à jour automatique des images)
|
||||||
|
- image: grafana/grafana:latest (pour le monitoring des évènements)
|
||||||
|
- image: grafana/loki:latest
|
||||||
|
- grafana/promtail:latest
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -35,6 +38,7 @@ A déployer par **`lecoffre_node/`** (d'autres projets externes sont ne dépenda
|
|||||||
- **`lecoffre-back-mini/`** (backend pour les API tierces du projet lecoffre)
|
- **`lecoffre-back-mini/`** (backend pour les API tierces du projet lecoffre)
|
||||||
- **`lecoffre-front/`** (frontend du projet lecoffre)
|
- **`lecoffre-front/`** (frontend du projet lecoffre)
|
||||||
- **`lecoffre_node/miner/`** (miner de la blockchain de preuves -layer2 de bitcoin depuis un signet-)
|
- **`lecoffre_node/miner/`** (miner de la blockchain de preuves -layer2 de bitcoin depuis un signet-)
|
||||||
|
- **`status-api`** (interface d'affichage des statuts des interfaces et des services)
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
@ -3,12 +3,14 @@ apiVersion: 1
|
|||||||
datasources:
|
datasources:
|
||||||
- name: Loki
|
- name: Loki
|
||||||
type: loki
|
type: loki
|
||||||
access: proxy
|
access: server
|
||||||
url: http://loki:3100
|
url: http://loki:3100
|
||||||
|
uid: loki
|
||||||
isDefault: true
|
isDefault: true
|
||||||
editable: true
|
editable: true
|
||||||
jsonData:
|
jsonData:
|
||||||
maxLines: 1000
|
maxLines: 1000
|
||||||
|
timeout: 60
|
||||||
derivedFields:
|
derivedFields:
|
||||||
- datasourceUid: loki
|
- datasourceUid: loki
|
||||||
matcherRegex: "traceID=(\\w+)"
|
matcherRegex: "traceID=(\\w+)"
|
||||||
|
@ -49,7 +49,8 @@ test_loki_api() {
|
|||||||
# Test de connectivité Loki
|
# Test de connectivité Loki
|
||||||
loki_response=$(curl -s -u "$ADMIN_USER:$ADMIN_PASS" \
|
loki_response=$(curl -s -u "$ADMIN_USER:$ADMIN_PASS" \
|
||||||
"$GRAFANA_URL/api/datasources/proxy/loki/api/v1/labels" \
|
"$GRAFANA_URL/api/datasources/proxy/loki/api/v1/labels" \
|
||||||
-H "Content-Type: application/json" 2>/dev/null || echo "ERROR")
|
-H "Content-Type: application/json" \
|
||||||
|
-H "X-Scope-OrgID: anonymous" 2>/dev/null || echo "ERROR")
|
||||||
|
|
||||||
if [[ "$loki_response" != "ERROR" ]] && echo "$loki_response" | jq -e '.data' > /dev/null 2>&1; then
|
if [[ "$loki_response" != "ERROR" ]] && echo "$loki_response" | jq -e '.data' > /dev/null 2>&1; then
|
||||||
echo " ✅ API Loki accessible"
|
echo " ✅ API Loki accessible"
|
||||||
@ -77,7 +78,8 @@ test_service_logs() {
|
|||||||
# Test d'une requête simple sur les logs du service
|
# Test d'une requête simple sur les logs du service
|
||||||
loki_response=$(curl -s -u "$ADMIN_USER:$ADMIN_PASS" \
|
loki_response=$(curl -s -u "$ADMIN_USER:$ADMIN_PASS" \
|
||||||
"$GRAFANA_URL/api/datasources/proxy/loki/api/v1/query?query={container=\"$service\"}&limit=1" \
|
"$GRAFANA_URL/api/datasources/proxy/loki/api/v1/query?query={container=\"$service\"}&limit=1" \
|
||||||
-H "Content-Type: application/json" 2>/dev/null || echo "ERROR")
|
-H "Content-Type: application/json" \
|
||||||
|
-H "X-Scope-OrgID: anonymous" 2>/dev/null || echo "ERROR")
|
||||||
|
|
||||||
if [[ "$loki_response" != "ERROR" ]] && echo "$loki_response" | jq -e '.data.result' > /dev/null 2>&1; then
|
if [[ "$loki_response" != "ERROR" ]] && echo "$loki_response" | jq -e '.data.result' > /dev/null 2>&1; then
|
||||||
log_count=$(echo "$loki_response" | jq '.data.result | length')
|
log_count=$(echo "$loki_response" | jq '.data.result | length')
|
||||||
@ -111,7 +113,8 @@ generate_health_report() {
|
|||||||
# Test de connectivité Loki
|
# Test de connectivité Loki
|
||||||
loki_status=$(curl -s -o /dev/null -w "%{http_code}" \
|
loki_status=$(curl -s -o /dev/null -w "%{http_code}" \
|
||||||
-u "$ADMIN_USER:$ADMIN_PASS" \
|
-u "$ADMIN_USER:$ADMIN_PASS" \
|
||||||
"$GRAFANA_URL/api/datasources/proxy/loki/ready")
|
"$GRAFANA_URL/api/datasources/proxy/loki/ready" \
|
||||||
|
-H "X-Scope-OrgID: anonymous")
|
||||||
|
|
||||||
if [ "$loki_status" = "200" ]; then
|
if [ "$loki_status" = "200" ]; then
|
||||||
echo "✅ Loki: Opérationnel (HTTP $loki_status)"
|
echo "✅ Loki: Opérationnel (HTTP $loki_status)"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user