Форум OlegON > Программы и оборудование для автоматизации торговли > ЕГАИС в опте и рознице

простой монитор работоспособности УТМ : ЕГАИС в опте и рознице

28.03.2024 15:08


16.07.2017 07:09
winmasta
 
Цитата:
AndreyZh Не знаю к кому вопрос? Что по "УСЕга": файл лога транспорта открывается только на чтение и сканируется каждая строка на вхождение ключевых фраз из best practic форума ФСРАР, т.е. простой эквивалент рекомендованного просмотра глазками ошибок из данного приложенного к сообщению файла
Почитал, насколько я понял запуск анализатора лога нужно делать руками, а ручной запуск по мне не есть мониторинг в принципе.
16.07.2017 07:58
AndreyZh
 
Вчера удачно набрали ведро земляники, а "бедная" супруга до 2 часов ночи её обрабатывала... Жалко её будить, а посему чуток "поговорю"?

Цитата:
winmasta Почитал, насколько я понял запуск анализатора лога нужно делать руками, а ручной запуск по мне не есть мониторинг в принципе.
Приделать к этой возможности автомат - задача из разряда "как два пальца об асфальт"... Путь к логам назначается в настройке и юзер только нажимает Enter. Что по этой задаче, то просто "худею"... На форуме ФСРАР и ЦИ 10% вопросов и недоумений - сбои УТМ и ЕГАИС, которые определяются в данной задаче и где даются рекомендации по их исправлению. В принципе эти вопросы решаются: вызывается специалист, который несколько часов глазками изучает логи и выносит вердикт и ему с удовольствием башляют... Рад, что кто-то зарабатывает на бедах ЕГАИС

Что по автоматам - как показало моё изучения интереса к ним... Пользуются 6 человек из интернета, да два магазина в реале - запрос остатков, продажа пива и уборка минусов. В тоже время программой пользуются в десятки раз больше. Так, что тема автоматов временно убрана из моих интересов!
16.07.2017 13:26
baggio
 
И правильно что убрана т.к. сам по себе мониторинг утма нужно делать там где можно
Перезапустить утм
Передёрнуть единый клиент и т.д.
Я склоняюсь к забикс...
18.07.2017 12:30
winmasta
 
Дописал скрипт, теперь следим еще и за сроками действия PKI и ГОСТ. Если заканчивается менее чем через 30 дней, пишем WARNING в файл.

Код:
import requests
from io import StringIO
from lxml import etree
from datetime import datetime, timedelta
tree = etree.parse(StringIO(requests.get('http://127.0.0.1:8080').text), etree.HTMLParser())
date = tree.xpath('//div[@class = "tab-pane fade in active"]/pre/text()')[4][0:10]
cert_date = tree.xpath('//div[@class = "tab-pane fade in active"]/pre/text()')[6][68:78]
pki_date = tree.xpath('//div[@class = "tab-pane fade in active"]/pre/text()')[5][45:55]
cert_date = datetime.strptime(cert_date,'%Y-%m-%d')
pki_date = datetime.strptime(cert_date,'%Y-%m-%d')
dd = datetime.today() + timedelta(days=30)
try:
        date = datetime.strptime(date,'%Y-%m-%d')
except ValueError:
        d = None
if isinstance(date, datetime):
        msg = 'WARNING\n'
else:
        if cert_date > dd or pki_date > dd:
                msg = 'WARNING\n'
        msg = 'OK\n'
with open('utm_lastdoc_check.txt', 'w') as output_file:output_file.write(msg.encode('utf-8'))
20.12.2017 08:48
winmasta
 
В версии УТМ 2.1.6 естественно поменяли код главной страницы в связи с чем пришлось перепилить скрипт мониторинга

Код:
#!/usr/bin/python
# -*- coding: utf-8 -*-
import requests
from io import StringIO
from lxml import etree
from datetime import datetime, timedelta


debug = 0

tree = etree.parse(StringIO(requests.get("http://127.0.0.1:8080").text), etree.HTMLParser())

date = etree.tostring(tree.xpath("//div[@class = \"tab-pane fade in active\"]")[0][5][1])[40:50]

try:
        date = datetime.strptime(date,"%Y-%m-%d")
except ValueError:
        date = ""

if debug:
        print "Дата последнего не отправленного документа:", date

cert_date = etree.tostring(tree.xpath("//div[@class = \"tab-pane fade in active\"]")[0][7][1])[174:184]
cert_date = datetime.strptime(cert_date,"%Y-%m-%d")

if debug:
        print "Дата сертификата FSRAR:", cert_date

pki_date = etree.tostring(tree.xpath("//div[@class = \"tab-pane fade in active\"]")[0][6][1])[174:184]
pki_date = datetime.strptime(pki_date,"%Y-%m-%d")

if debug:
        print "Дата сертификата ГОСТ:", pki_date

dd = datetime.today() - timedelta(days=30)

if debug:
        print "Текущая дата:", dd

if isinstance(date, datetime):
        if debug:
                print("WARNING: есть не отправленные документы")
        msg = "WARNING\n"
else:
        if cert_date < dd or pki_date < dd:
                if debug:
                        print("WARNING: истекает срок действия одного из сертификатов")
                msg = "WARNING\n"
        else:
                if debug:
                        print("OK")
                msg = "OK\n"
with open("utm_lastdoc_check.txt", "w") as output_file:output_file.write(msg.encode("utf-8"))
25.04.2018 13:44
winmasta
 
Освежил мониторинг с удовольствием послушаю критику, пожелания, отвечу на issues.
29.05.2018 09:16
Igor_and_35
 
Здравствуйте.
Это скрипт под zabbix?
нет ли под винду?
Часовой пояс GMT +3, время: 15:08.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.