[FastAPI] SocketIO Admin UI

2024. 1. 25. 15:16

 

 

Socket.IO의 admin UI는 Socket.IO 서버의 상태를 실시간으로 모니터링할 수 있는 대시보드다.

 

실시간 통계

현재 연결된 클라이언트 수, 수신 및 전송된 이벤트 수, 데이터 트래픽 등의 통계

 

로그 뷰어

서버의 로그를 실시간으로 확인

 

이벤트 테스터

서버로 이벤트를 보내거나, 서버로부터 이벤트를 받는 것을 시뮬레이션

 

룸 뷰어

서버에 현재 존재하는 room과 그 방에 연결된 클라이언트 확인

 

인증

보안을 위한 인증 기능

인증된 사용자만이 Admin UI에 접근

 

 

# sockets.py
mgr = socketio.AsyncAioPikaManager('amqp://guest:guest@rabbitmq:5672/vhost')
sio_server = socketio.AsyncServer(
    async_mode = 'asgi',
    cors_allowed_origins=[
        'http://localhost:8000/ws',
        'https://admin.socket.io'
        ],
    client_manager=mgr
)

sio_server.instrument(auth={
    'username': 'admin',
    'password': 'admin',
})

sio_app = socketio.ASGIApp(
    socketio_server=sio_server,
    socketio_path='/ws/socket.io'
)

 

서버 설정에 admin을 추가한 후

https://admin.socket.io로 접속하면 된다.

 

 

 

설정에 맞게 접속하면 된다.