Size: a a a

2020 July 22

P

Pavel in cesbo_ru
Та мне бы просто чтоб настроечки не на сервере напрямую в конфиге прописывать , а в морде. Я на Джанго сейчас панельку рисую ...
источник

P

Pavel in cesbo_ru
Я уже говорил про сервер типа PBI )
источник

DB

Dmitriy Belousov in cesbo_ru
Типа PBI у меня взлетало, но я так и не подцепил CI
источник

DB

Dmitriy Belousov in cesbo_ru
проц там говно
источник

DN

Dmitriy Novash progr... in cesbo_ru
Pavel
Та мне бы просто чтоб настроечки не на сервере напрямую в конфиге прописывать , а в морде. Я на Джанго сейчас панельку рисую ...
а причем здесь мониторинг тогда?
у меня такая хрень была - генерила луа конфиг
источник

P

Pavel in cesbo_ru
Dmitriy Novash programer
а причем здесь мониторинг тогда?
у меня такая хрень была - генерила луа конфиг
Коллектор для зяблика хочу
источник

P

Pavel in cesbo_ru
Мне в морде он не нужен
источник

P

Pavel in cesbo_ru
Так то можно и на 5 выводить это все
источник

P

Pavel in cesbo_ru
Но хотелось бы ... Да бы мешает
источник

P

Pavel in cesbo_ru
Пока как то так
источник

DB

Dmitriy Belousov in cesbo_ru
Ну так дописывай коллектор для агрегации данных.
источник

DB

Dmitriy Belousov in cesbo_ru
там 3 стоки
источник

DB

Dmitriy Belousov in cesbo_ru
from aiohttp import web
import asyncio
from time import time



async def receiveDataFromStreamAstra(request):
 json = await request.json()
 json = json.pop()
 if "channel" in json:
   request.app.cfgch[json["channel"]["id"]] = json
   return web.Response(text = "ok")
 if "channel_id" in json:
   request.app.channels[json["channel_id"]] = json
   return web.Response(text = "ok")
 if "dvb" in json:
   request.app.cfgdvb[json["dvb"]["id"]] = json
   return web.Response(text = "ok")
 if "dvb_id" in json:
   request.app.dvbs[json["dvb_id"]] = json
   return web.Response(text = "ok")
 raise RuntimeError("Ошибка!")


async def getChannelInfo(request):
 channelId = request.match_info['channelId']
 if channelId not in request.app.channels:
   return web.Response(text = "Not found channel with id = {}".format(channelId), status = 404)
 return web.json_response(request.app.channels[channelId])

async def getChannelsInfo(request):
 return web.json_response(request.app.channels)

async def getCfgChannels(request):
 return web.json_response(request.app.cfgch)

async def getDvbInfo(request):
 dvbId = request.match_info['dvbId']
 if dvbId not in request.app.dvbs:
   return web.Response(text = " Not found dvb with id = {}".format(dvbId), status = 404)
 return web.json_response(request.app.dvbs[dvbId])

async def getDvbsInfo(request):
 return web.json_response(request.app.dvbs)

async def getCfgDvbs(request):
 return web.json_response(request.app.cfgdvb)



app = web.Application(loop = asyncio.get_event_loop())
app.router.add_post('/astra/', receiveDataFromStreamAstra)
app.router.add_get('/channel/{channelId}', getChannelInfo)
app.router.add_get('/channels/', getChannelsInfo)
app.router.add_get('/cfg_channels/', getCfgChannels)
app.router.add_get('/dvb/{dvbId}', getDvbInfo)
app.router.add_get('/dvbs/', getDvbsInfo)
app.router.add_get('/cfg_dvbs/', getCfgDvbs)
app.cfgch = {}
app.cfgdvb = {}
app.channels = {}
app.dvbs = {}



# стирает данные если мониторинг не присылает их больше 5 минут
async def removeExpiredData(app):
 try:
   otmetka = time() - 60 * 5
   for channel, data in app.channels.items():
     timestamp = int(data["timestamp"])
     if timestamp < otmetka:
       del(app.channels[channel])
 except Exception as e:
   pass
 finally:
   await asyncio.sleep(5)
   app.loop.create_task(removeExpiredData(app))


app.loop.create_task(removeExpiredData(app))

if __name__ == "__main__":
 web.run_app(app, port = 8080)
источник

DB

Dmitriy Belousov in cesbo_ru
тебе надо то, что json будет собирать и в некую sql складывать, а оттуда тоталом отдавать
источник

P

Pavel in cesbo_ru
Dmitriy Belousov
там 3 стоки
Сначала морду доделаю )
источник

V

Valerii in cesbo_ru
Dmitriy Belousov
убери днс 1.1.1.1
О, а почему?
источник

DB

Dmitriy Belousov in cesbo_ru
Valerii
О, а почему?
оттуда секьюр ответы пытаются придти а астра не умеет этого
источник

DB

Dmitriy Belousov in cesbo_ru
в 65 добавили
источник

СВ

Сергей Ветютнев... in cesbo_ru
народ как у вас с 85Е?
источник

А

Алексей in cesbo_ru
Сергей Ветютнев
народ как у вас с 85Е?
работает
источник