Esempio n. 1
0
 def _manage_stat(self, start_time, call_result):
     end_time = time.time()
     stat_request = stat_pb2.StatRequest()
     stat_request.request_duration = int((end_time - start_time) * 1000) #In milliseconds
     self.fill_request(stat_request, call_result)
     self.fill_coverages(stat_request)
     self.fill_parameters(stat_request)
     self.fill_result(stat_request, call_result)
     self.publish_request(stat_request)
Esempio n. 2
0
    def _manage_stat(self, start_time, call_result):
        end_time = time.time()
        stat_request = stat_pb2.StatRequest()
        stat_request.request_duration = int((end_time - start_time) * 1000)  # In milliseconds
        self.fill_request(stat_request, start_time, call_result)
        self.fill_coverages(stat_request)
        self.fill_parameters(stat_request)
        self.fill_result(stat_request, call_result)

        retry = retrying.Retrying(
            stop_max_attempt_number=2,
            retry_on_exception=lambda e: not isinstance(e, pybreaker.CircuitBreakerError),
        )
        retry.call(self.breaker.call, self.publish_request, stat_request.api, stat_request.SerializeToString())
Esempio n. 3
0
 def mock_places_stat(self, api, pbf):
     stat = stat_pb2.StatRequest()
     stat.ParseFromString(pbf)
     assert api == stat.api
     self.check_stat_places_to_publish(stat)
Esempio n. 4
0
 def mock_coverage_stat(self, api, pbf):
     stat = stat_pb2.StatRequest()
     stat.ParseFromString(pbf)
     assert api == stat.api
     self.check_stat_coverage_to_publish(stat)
     self.called = True
Esempio n. 5
0
# https://groups.google.com/d/forum/navitia
# www.navitia.io

import kombu
from navitiacommon import stat_pb2
import datetime
import time

connection = kombu.Connection("amqp://*****:*****@localhost:5672//")
exchange_name = "stat_navitia"
topic_name = "stat_sender"
#exchange_object = kombu.Exchange(exchange_name, 'topic', durable = True)
exchange_object = kombu.Exchange(exchange_name, type="direct")
producer = connection.Producer(exchange=exchange_object)

stat_request = stat_pb2.StatRequest()
dt = datetime.datetime.utcnow()
stat_request.request_date = int(time.mktime(dt.timetuple()))
stat_request.user_id = 1
stat_request.user_name = 'Toto'
stat_request.application_id = 2
stat_request.application_name = 'navitia2'
stat_request.request_duration = 4500
stat_request.api = 'places'
stat_request.query_string = '/v1/coverage/centre/places?q=gare'
stat_request.host = 'http://navitia2-ws.ctp.dev.canaltp.fr'
stat_request.client = '127.0.0.1'
stat_request.response_size = 400

#Coverages:
stat_coverage = stat_request.coverages.add()