Files
loki/scripts/run.sh

51 lines
1.1 KiB
Bash

#!/bin/bash
set -e
SKILL_DIR="$(dirname "$(dirname "$0")")"
LOKI_PORT="${LOKI_PORT:-3100}"
# Start Loki in background
start_loki() {
echo "Starting Loki on port $LOKI_PORT..."
loki -config.file="$SKILL_DIR/config/loki.yaml" &
LOKI_PID=$!
sleep 3
if ! kill -0 $LOKI_PID 2>/dev/null; then
echo "Failed to start Loki"
exit 1
fi
echo "Loki running (PID $LOKI_PID)"
}
# Start Promtail in background
start_promtail() {
echo "Starting Promtail..."
promtail -config.file="$SKILL_DIR/config/promtail.yaml" &
PROMTAIL_PID=$!
sleep 2
if ! kill -0 $PROMTAIL_PID 2>/dev/null; then
echo "Failed to start Promtail"
exit 1
fi
echo "Promtail running (PID $PROMTAIL_PID)"
}
# Cleanup on exit
cleanup() {
echo "Shutting down..."
[ -n "$PROMTAIL_PID" ] && kill $PROMTAIL_PID 2>/dev/null
[ -n "$LOKI_PID" ] && kill $LOKI_PID 2>/dev/null
exit 0
}
trap cleanup SIGTERM SIGINT
start_loki
start_promtail
echo "Loki stack running. Query at http://localhost:$LOKI_PORT/loki/api/v1/query"
# Wait for either process to exit
wait