Monday, 2017-02-06

dmsimarddotplus: just saw your question about role duration01:49
dmsimardso I think last I checked the notion of role doesn't get passed down to callbacks, which is what ARA leverages to record data -- the callback doesn't know the relationship between roles and tasks01:50
dmsimardclosest we have is the file path to the role01:50
dmsimardWhile probably not super convenient, maybe a way to narrow down the duration of a role would be per play01:51
dmsimardWe have duration for a whole play -- if there is only one role in a play, you'll get the duration for that role effectively01:51
dmsimardThere is otherwise a "search" function at the task level that is coming eventually02:17
dmsimardYou can see an early prototype here https://www.youtube.com/watch?v=h3vY87_EWHw02:17
*** karimb has joined #ara08:55
*** permalac has quit IRC09:08
*** permalac has joined #ara09:19
*** karimb has quit IRC09:31
*** permalac has quit IRC09:33
*** permalac has joined #ara09:35
*** karimb has joined #ara09:52
*** karimb has quit IRC11:07
*** karimb has joined #ara11:35
*** karimb has quit IRC12:45
*** karimb has joined #ara13:26
*** themurph has joined #ara13:58
dotplushmm. So the answer is currently, "You can't because Ansible doesn't give role information to callbacks". But I might be able to get that by proxy if I were to search by path (correct if we're careful about role names, which we are) matching 'roles/[org].[rolename]/'. But currently, I would need to that in "post-processing" directly against the DB.14:40
dotplusSince the ultimate goal is to be able to understand where the delays/bottlenecks are in our Ansible runs and whether a particular branch/patchset results in a improvement, I'm assuming that we're going to want to make graphs-over-time from this data which probably means getting it into something like ELK.14:42
dmsimarddotplus: I asked #ansible-devel this morning about role info being passed down to callbacks but heard nothing but crickets ;)14:43
dotplusPerhaps I'm trying to use ARA to hammer a screw and I would be better off writing a separate callback plugin to shovel timing data in to ELK and doing all the processing/graphing in "one" place. Thought?14:43
dmsimarddotplus: but yeah, you could probably filter it down either directly through the DB or maybe with the CLI14:43
dmsimardFWIW I am very interested in the ELK use case (for my own purposes) but I haven't had the chance to try it out yet. I definitely want to document how to do it.14:44
dmsimarddotplus: ara uses the same CLI framework as python-openstackclient (cliff) so you can export CLI results out to JSON, YAML or any other format that might be more convenient to re-use with systems like ELK14:45
dotplusunfortunately this is apparently a low priority if not quite exactly skunkworks, so I can't give much time (to my chagrin). But if I get any useful progress on Ansible timing data -> ELK, I'll let you know.14:46
dmsimarddotplus: np, it's something I want/need to work on in the short term so I'll let you know as well if I figure something out14:47
dotplusyeah, I recognised the output stuff in the --help, I'm familiar with python-openstackclient.14:47
dmsimarddotplus: in the meantime, I don't know how possible it is for you but like I said, a workaround would be to have a one-to-one role/play relationship14:47
dmsimardso that all tasks are grouped under one play and easily filterable out of the box14:48
dotplusno, I have no control over that. It's already grown *far* beyond that sort of thing.14:48
dmsimardokay, because for instance in http://logs.openstack.org/11/429011/4/check/gate-ara-integration-latest-centos-7/b8777f2/logs/build/playbook/9a6e7b6c-24c4-40e2-b254-9dc32af7d6a0/index.html there's two plays with their respective durations14:48
dotplusyeah, I wish.14:51
dotplusbtw, links to http://logs.openstack.org/11/429011/4/check/gate-ara-integration-* render completely unstyled for me. Is that expected?14:52
dmsimardHm, works for me. What browser/OS are you reproducing it on ?14:53
dotplusfirefox/OSX. I'll check something else14:55
dotplusok, weird. works in chrome.14:55
dotplusmeh, this is why I hate graphical anything.14:56
dotplusnever mind, I'll just use chrome for this. don't waste an iota of your precious brain cycles on this.14:56
dmsimarddotplus: there's some .gz encoding magic going on, since logs.o.o compresses things automatically15:14
dmsimardperhaps it's related to that.15:14
boxrick1dmsimard: I have a question regarding ansible.cfg Priorities and ARA15:43
dmsimardboxrick1: shoot15:43
boxrick1I have been deploying it using ENV vars, which works fine for most of my stuff15:43
boxrick1However when using Ansible-Openstack it requires a number of its own plugins.15:44
boxrick1And this all breaks if I have ARA configured using env vars15:44
boxrick1Sadly they cannot live alongside each other since the ansible-openstack stuff blatts over the .cfg file with its own stuff15:44
boxrick1Any suggestions ?15:44
boxrick1I almost need the configs to merge.15:45
dmsimardboxrick1: openstack-ansible knows about ARA so they might have some tips -- I've never personally used it, but it looks like they setup a default callback path in /etc/ansible, i.e: https://review.openstack.org/#/c/396324/5/scripts/gate-check-commit.sh15:45
dmsimardboxrick1: it looks like in https://review.openstack.org/#/c/396565/11/test-ansible-env-prep.sh they symlink the ara callback plugin dir to the default dir15:46
boxrick1So its almost as if it is already catered for.15:47
dmsimardwell my understanding is that those are gate-specific15:48
dmsimardbut maybe you could do something similar15:48
dmsimardin an actual deploymenty15:48
boxrick1Both of those are different options that help me get around the problem though :)15:53
boxrick1Cheers15:53
dmsimardwoohoo :)15:54
dmsimardany other questions ? :P15:54
boxrick1Sure while you are here, hows your new interface going?15:54
dmsimardpretty bad.15:55
dmsimardI need help from jrist for just a silly first step of it but in reality we're both busy with the upcoming release of Ocata15:55
jristconfirmed15:56
jristI need to load up all of the ara bits in a test env15:56
jristso I can load the UI :)15:56
dmsimardand to make matters worse I'm going down to Boston this week T_T15:56
dmsimardwell, Westford15:56
dmsimardjrist: you happen to be in westford office by chance? :p15:56
boxrick1So what do you guys both do full time then?15:57
dmsimardI'm part of the RDO engineering team at Red Hat, I help build, package, test and ship things.15:58
dmsimardARA is a side/personal-ish project that I want to help me in my job15:58
dmsimardA lot of our tooling and CI is based on Ansible so making things easier to troubleshoot is one of my goals16:00
boxrick1Ah cool, fair enough. That all makes sense. Big fan of Redhat, sadly where I am right now favours Ubuntu.16:03
jristdmsimard: nope, remote16:06
jristboxrick1: one of the leads on tripleo-ui team16:07
dotplusboxrick1: If I understand what you're saying, you need to tell Ansible to look in multiple paths for plugins? you can do things like "callback_plugins = /usr/share/ansible/plugins/callback:/path/to/ansible-openstack/plugins/callbacks:$VIRTUAL_ENV/lib/python2.7/site-packages/ara/plugins/callbacks"16:39
boxrick1Yea thats what I ended up doing16:39
boxrick1I have a role which deploys ARA, then later on something else tried to add its own plugins path.16:39
boxrick1So I just define them both now within my role using ^^^ so it isn't upset.16:40
dotplusyup. we have similar constraints.16:40
*** cliles has quit IRC16:55
*** cliles has joined #ara16:56
openstackgerritDavid Moreau Simard proposed openstack/ara master: Add new ara_record types: list and dict  https://review.openstack.org/42901117:24
*** karimb has quit IRC17:36
*** Ravi_ has joined #ara18:39
*** Ravi_ has quit IRC19:56
*** karimb has joined #ara22:40
*** karimb has quit IRC23:40

Generated by irclog2html.py 2.14.0 by Marius Gedminas - find it at mg.pov.lt!