logboard/test_ws.py
Сергей Антропов 04d1ae9a96 feat: добавить поддержку множественных проектов Docker Compose
- Добавлен API эндпоинт /api/projects для получения списка проектов
- Обновлен API /api/services для поддержки фильтрации по множественным проектам
- Добавлен селектор проектов в веб-интерфейс
- Добавлена переменная окружения LOGBOARD_PROJECTS
- Обновлен HTML шаблон с JavaScript функциональностью
- Добавлена функция fetchProjects() для загрузки списка проектов
- Обновлена функция fetchServices() для работы с выбранными проектами

Автор: Сергей Антропов
Сайт: https://devops.org.ru
2025-08-16 12:29:19 +03:00

43 lines
1.3 KiB
Python

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Простой тест WebSocket соединения
Автор: Сергей Антропов
Сайт: https://devops.org.ru
"""
import asyncio
import websockets
import base64
async def test_websocket():
"""Тестирует WebSocket соединение"""
# Параметры подключения
uri = "ws://localhost:9001/ws/logs/c90f6c8bfbb6?tail=10&token=YWRtaW46YWRtaW4%3D"
print(f"🔍 Тестирование WebSocket соединения...")
print(f"URI: {uri}")
print("-" * 50)
try:
async with websockets.connect(uri) as websocket:
print("✅ WebSocket соединение установлено")
# Ждем сообщения
try:
async for message in websocket:
print(f"📨 Получено сообщение: {message[:200]}...")
break # Получаем только первое сообщение
except websockets.exceptions.ConnectionClosed:
print("❌ WebSocket соединение закрыто")
except Exception as e:
print(f"❌ Ошибка WebSocket: {e}")
return False
return True
if __name__ == "__main__":
asyncio.run(test_websocket())