*** witek has joined #openstack-monasca | 07:56 | |
*** elod has quit IRC | 09:03 | |
*** elod has joined #openstack-monasca | 09:12 | |
*** dougsz has joined #openstack-monasca | 09:14 | |
*** ivve has joined #openstack-monasca | 09:53 | |
*** fungi has quit IRC | 11:24 | |
*** fungi has joined #openstack-monasca | 11:27 | |
*** Wasaac has quit IRC | 12:00 | |
*** Wasaac has joined #openstack-monasca | 12:00 | |
*** Wasaac has quit IRC | 12:11 | |
*** Wasaac has joined #openstack-monasca | 12:12 | |
*** chaconpiza has joined #openstack-monasca | 12:39 | |
*** Dobroslaw has joined #openstack-monasca | 12:59 | |
witek | #startmeeting monasca | 13:00 |
---|---|---|
openstack | Meeting started Tue Feb 11 13:00:46 2020 UTC and is due to finish in 60 minutes. The chair is witek. Information about MeetBot at http://wiki.debian.org/MeetBot. | 13:00 |
openstack | Useful Commands: #action #agreed #help #info #idea #link #topic #startvote. | 13:00 |
*** openstack changes topic to " (Meeting topic: monasca)" | 13:00 | |
*** adriancz has joined #openstack-monasca | 13:00 | |
openstack | The meeting name has been set to 'monasca' | 13:00 |
witek | hello everyone | 13:00 |
adriancz | Hi | 13:01 |
chaconpiza | Hello | 13:01 |
Dobroslaw | hi | 13:01 |
witek | the agenda seems to be light | 13:01 |
witek | https://etherpad.openstack.org/p/monasca-team-meeting-agenda | 13:01 |
witek | let's start | 13:01 |
witek | #topic ujson replacement | 13:02 |
*** openstack changes topic to "ujson replacement (Meeting topic: monasca)" | 13:02 | |
witek | I've sent a question to requirements team at openstack-discuss | 13:02 |
*** bandorf has joined #openstack-monasca | 13:02 | |
witek | http://lists.openstack.org/pipermail/openstack-discuss/2020-February/012376.html | 13:02 |
witek | orjson seems not to be the good option for including into global requirements | 13:03 |
witek | because of complicated build process | 13:04 |
witek | do we have any performance evaluation results already? | 13:04 |
chaconpiza | I compared ujson, json and simplejson in devstack | 13:05 |
chaconpiza | all these are available in devstack already | 13:05 |
chaconpiza | This is the way I did the checks: | 13:06 |
chaconpiza | 1. After stacking devstack, I stopped the log-agent, metric-agent and the persister. | 13:06 |
chaconpiza | 2. I modified the scale_perf/agent_simulator.py from Monasca-perf in order to work with devstack. | 13:06 |
chaconpiza | 3. I sent 690 calls with 1000 points each one using 4 Python Processes. Every point had this form: | 13:07 |
chaconpiza | {'dimensions': {'cloud_name': 'monasca', | 13:07 |
chaconpiza | 'cluster': 'compute', | 13:07 |
chaconpiza | 'component': 'vm', | 13:07 |
chaconpiza | 'container': 'container_0', | 13:07 |
chaconpiza | 'control_plane': 'ccp', | 13:07 |
chaconpiza | 'hostname': 'agent_0', | 13:07 |
chaconpiza | 'resource_id': '34c0ce14-9ce4-4d3d-84a4-172e1ddb26c4', | 13:07 |
chaconpiza | 'service': 'service_0', | 13:07 |
chaconpiza | 'tenant_id': '71fea2331bae4d98bb08df071169806d', | 13:07 |
chaconpiza | 'zone': 'nova'}, | 13:07 |
chaconpiza | 'name': 'aaa.perf_428', | 13:07 |
chaconpiza | 'timestamp': 1581424933000, | 13:07 |
chaconpiza | 'value': 781} | 13:07 |
chaconpiza | where: 'name' can be [aaa.perf_000 to aaa.perf_999] | 13:07 |
chaconpiza | 'value' a randon [000 to 999] | 13:07 |
chaconpiza | and 'hostname': ['agent_0' to 'agent_3'] | 13:08 |
chaconpiza | This point is quite similar to those we have in production. | 13:08 |
chaconpiza | Cardinality: 1000 metrics X 4 agents X 1 containers X 1 services = 4000 | 13:08 |
chaconpiza | 4. Changed from 30 to 1000 the batch_size of the metrics in the persister | 13:08 |
chaconpiza | 5. Set a log.warn in the json.loads https://github.com/openstack/monasca-persister/blob/master/monasca_persister/repositories/utils.py#L21 | 13:09 |
chaconpiza | 6. Started the persister manually redirecting the output to a file waiting to consume all the 690000 points waiting in kafka. | 13:09 |
chaconpiza | 7. Checked the time difference in the log from the first deserialization (log.warn) to the last. | 13:10 |
chaconpiza | I repeated the process for simplejson and json, by changing the import at | 13:11 |
chaconpiza | https://github.com/openstack/monasca-persister/blob/master/monasca_persister/repositories/utils.py#L16 | 13:11 |
chaconpiza | The results: json took 2 min 20 sec in the first test and 2 min 22 sec in the second test. | 13:12 |
chaconpiza | ujson took 1 min 53 sec in the first test and 1 min 51 in the second | 13:13 |
chaconpiza | simplejson took 1 min 59 in both tries. | 13:13 |
witek | from this test simplejson seems to be a good compromise | 13:14 |
chaconpiza | and at least in devstack is already available without any change | 13:15 |
witek | we could test rapidjson as well, but I don't expect it to be much faster the ujson | 13:16 |
chaconpiza | Yes, I have all the mini-infrastructure to test it | 13:16 |
chaconpiza | *Note that I only tested the deserialization (json.loads), I left the serialization (json.dumps) using ujson. | 13:17 |
chaconpiza | https://github.com/openstack/monasca-persister/blob/a4addd0f5e8c60f631a77fd280f2810b8f222203/monasca_persister/repositories/influxdb/metrics_repository.py#L48 | 13:17 |
*** adriancz has quit IRC | 13:17 | |
*** adriancz has joined #openstack-monasca | 13:18 | |
*** adriancz has joined #openstack-monasca | 13:18 | |
witek | that's fine, we were interested in deserialization because of persister beeing the bottleneck | 13:18 |
chaconpiza | cool | 13:18 |
witek | any other comments on that? | 13:20 |
Dobroslaw | well, it's good if there is no need to add it to global requirements and is fast enough | 13:21 |
witek | agree | 13:21 |
chaconpiza | Probably the profiling test in the internet show differences because of the size of the string to be deserializated. | 13:22 |
chaconpiza | *tests | 13:22 |
witek | sure, it depends strongly on the structure of the object | 13:22 |
chaconpiza | yes like the nesting level of the object | 13:23 |
chaconpiza | Besides of the dimensions: we use a 'flat' object | 13:24 |
witek | so do we agree on using simplejson, or do you still want to test rapidjson as well? | 13:25 |
chaconpiza | can rapidjson be installed easy-way with pip? | 13:26 |
adriancz | I think simplejson should be good enough | 13:26 |
chaconpiza | I can do the check just after the meeting | 13:26 |
witek | I'm fine with simplejson as well, we can still change it in future if proves to cause any problems | 13:29 |
witek | #topic aob | 13:29 |
*** openstack changes topic to "aob (Meeting topic: monasca)" | 13:29 | |
witek | do we have any other topics for today? | 13:29 |
chaconpiza | no from my part | 13:30 |
witek | OK, let's wrap it up then | 13:31 |
witek | thanks for joining | 13:31 |
witek | and for the tests | 13:31 |
chaconpiza | thanks | 13:32 |
witek | see you next time | 13:32 |
Dobroslaw | thank you | 13:32 |
bandorf | Thanks, bye everybody | 13:32 |
witek | #endmeeting | 13:32 |
*** openstack changes topic to "OpenStack Monitoring as a Service | https://wiki.openstack.org/wiki/Monasca" | 13:32 | |
openstack | Meeting ended Tue Feb 11 13:32:19 2020 UTC. Information about MeetBot at http://wiki.debian.org/MeetBot . (v 0.1.4) | 13:32 |
openstack | Minutes: http://eavesdrop.openstack.org/meetings/monasca/2020/monasca.2020-02-11-13.00.html | 13:32 |
openstack | Minutes (text): http://eavesdrop.openstack.org/meetings/monasca/2020/monasca.2020-02-11-13.00.txt | 13:32 |
openstack | Log: http://eavesdrop.openstack.org/meetings/monasca/2020/monasca.2020-02-11-13.00.log.html | 13:32 |
*** bandorf has quit IRC | 13:32 | |
dougsz | Sorry I missed the meeting, chaconpiza, thanks for doing the benchmarking. +1 for simplejson. | 13:42 |
*** witek has quit IRC | 14:41 | |
*** vishalmanchanda has joined #openstack-monasca | 14:51 | |
*** elod has quit IRC | 14:57 | |
*** elod has joined #openstack-monasca | 14:58 | |
*** openstackgerrit has joined #openstack-monasca | 15:14 | |
openstackgerrit | Merged openstack/monasca-api master: Set DEBUG log level for Elastisearch https://review.opendev.org/696889 | 15:14 |
*** witek has joined #openstack-monasca | 15:35 | |
*** ivve has quit IRC | 16:13 | |
*** Wasaac has quit IRC | 16:48 | |
*** Wasaac has joined #openstack-monasca | 16:49 | |
*** ivve has joined #openstack-monasca | 17:16 | |
*** gmann is now known as gmann_afk | 17:20 | |
*** dougsz has quit IRC | 17:56 | |
*** arseni-lipinski has quit IRC | 18:08 | |
*** gmann_afk is now known as gmann | 18:49 | |
*** vishalmanchanda has quit IRC | 19:43 | |
*** Wasaac has quit IRC | 20:15 | |
*** Wasaac_ has joined #openstack-monasca | 20:15 | |
*** Wasaac_ is now known as Wasaac | 20:16 | |
*** Wasaac has quit IRC | 21:11 | |
*** Wasaac has joined #openstack-monasca | 21:12 | |
*** jonmills_nasa has joined #openstack-monasca | 22:41 | |
jonmills_nasa | I think I'm struggling to understand something about setting up monasca. I have a working monasca-api, a working monasca-persister, and monasca-agents. I have a working kafka and zookeeper and influxdb. I can log into influxdb and see all the metrics that have been gathered there. but I see nothing when I try to query this from monasca's | 22:45 |
jonmills_nasa | pythonclient | 22:46 |
jonmills_nasa | it's almost like monasca is gathering metrics which at the same time, it knows nothing about. i guess they aren't defined anywhere? but there's almost nothing in the docs to explain this | 22:46 |
*** witek has quit IRC | 22:47 | |
*** jonmills_nasa has left #openstack-monasca | 23:05 | |
*** jonmills_nasa has joined #openstack-monasca | 23:06 | |
jonmills_nasa | hello? | 23:10 |
*** jonmills_nasa has quit IRC | 23:21 |
Generated by irclog2html.py 2.15.3 by Marius Gedminas - find it at mg.pov.lt!