Honeywell HC900을 Modbus TCP로 직접 폴링 → gRPC → C# 크롤러 → PostgreSQL. 기존 Experion OPC UA 데이터 경로를 HC900 직접 통신으로 대체. - industrial-comm/cpp: C++ Modbus 게이트웨이 (gRPC 서버) - src: C# .NET 8 ASP.NET Core 크롤러 + 웹 UI (3-Layer) - mcp-server: Python FastMCP (RAG/NL2SQL/P&ID) - 다중 컨트롤러(N-Controller) 지원 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
46 lines
1.4 KiB
Bash
Executable File
46 lines
1.4 KiB
Bash
Executable File
#!/bin/bash
|
|
# HC900Crawler 시작 스크립트
|
|
# 사용: ./start.sh [--background]
|
|
|
|
PROJ=/home/windpacer/projects/hc900_ax
|
|
LOG=/tmp/hc900_crawler.log
|
|
|
|
# Docker 컨테이너 확인
|
|
echo "[1/3] Docker 컨테이너 확인..."
|
|
for NAME in iiot-timescaledb qdrant-index; do
|
|
if docker ps --format '{{.Names}}' | grep -q "^${NAME}$"; then
|
|
echo " ✓ $NAME 실행 중"
|
|
else
|
|
echo " ! $NAME 중지됨 → 시작 시도"
|
|
docker start "$NAME" 2>/dev/null && echo " ✓ $NAME 시작" || echo " ✗ $NAME 시작 실패"
|
|
fi
|
|
done
|
|
|
|
# 기존 프로세스 정리
|
|
echo "[2/3] 기존 프로세스 정리..."
|
|
pkill -f "Hc900Crawler" 2>/dev/null && echo " 기존 크롤러 종료" || true
|
|
pkill -f "hc900_gateway" 2>/dev/null && echo " 기존 게이트웨이 종료" || true
|
|
sleep 2
|
|
|
|
# 크롤러 시작 (게이트웨이 자동 포함)
|
|
echo "[3/3] HC900Crawler 시작..."
|
|
cd "$PROJ/src/Hc900Crawler"
|
|
|
|
if [[ "$1" == "--background" || "$1" == "-b" ]]; then
|
|
nohup dotnet run > "$LOG" 2>&1 &
|
|
PID=$!
|
|
sleep 5
|
|
if kill -0 $PID 2>/dev/null; then
|
|
echo " ✓ 백그라운드 실행 중 (PID=$PID)"
|
|
echo " ✓ 로그: tail -f $LOG"
|
|
echo " ✓ 웹 UI: http://localhost:5000"
|
|
else
|
|
echo " ✗ 시작 실패 — 로그 확인: $LOG"
|
|
fi
|
|
else
|
|
echo " 포그라운드 실행 (Ctrl+C로 종료)"
|
|
echo " 로그: $LOG"
|
|
echo " 웹 UI: http://localhost:5000"
|
|
dotnet run
|
|
fi
|