[07:10:43] Analytics-Tech-community-metrics, DevRel-April-2016: top-contributors should have real names for the main contributors - https://phabricator.wikimedia.org/T124346#2167114 (Aklapper) a:Aklapper [07:13:15] Analytics-Tech-community-metrics, Developer-Relations, Differential, DevRel-April-2016, DevRel-March-2016: Make MetricsGrimoire/korma support gathering Code Review statistics from Phabricator's Differential - https://phabricator.wikimedia.org/T118753#2167120 (Aklapper) [08:49:18] elukey: Hi ! [08:50:05] joal: aloha! [09:07:05] (PS1) Amire80: Show the top user name along with the top article count [analytics/limn-language-data] - https://gerrit.wikimedia.org/r/280827 [09:33:43] joal: if you have time after lunch we could upgrade aqs to node 4.2/3 [09:33:53] elukey: sounds good ! [09:34:00] all right! [09:34:11] elukey: I'd also like to make my first deploy of aqs, so if you're ok, we'll do everything :) [09:36:51] joal: it will be my first too, but let's not couple too many things on a Friday.. deployment seems more important, the upgrade can wait monday/tuesday [09:36:54] what do you think? [09:37:12] elukey: works for me :) [09:37:27] all right! [09:37:38] elukey: if we deploy and weekend is smooth, we can ping services team on monday for restbase frontend upgrade [09:37:43] : [09:37:45] ) [10:06:56] Analytics-EventLogging, Analytics-Kanban, scap, Patch-For-Review, Scap3 (Scap3-Adoption-Phase1): Use scap3 to deploy eventlogging/eventlogging - https://phabricator.wikimedia.org/T118772#2167804 (mobrovac) [10:07:40] Analytics, ArchCom-RfC, Discovery, EventBus, and 7 others: EventBus MVP - https://phabricator.wikimedia.org/T114443#2167807 (mobrovac) [10:19:06] Analytics-Tech-community-metrics, Developer-Relations: Who are the top 50 independent contributors and what do they need from the WMF? - https://phabricator.wikimedia.org/T85600#2167895 (Aklapper) I'd say this task is now something that could be worked on (I'll fix T124346 in the next days, trivial) but I... [10:29:17] Analytics-Kanban, Operations, Traffic, Patch-For-Review: varnishkafka integration with Varnish 4 for analytics - https://phabricator.wikimedia.org/T124278#2167924 (elukey) Update: we added all the patches (mine + BBlack's) to the latest version of vk's deb package and installed it on cp1043/cp1044... [10:30:00] Analytics-Tech-community-metrics, Developer-Relations, DevRel-April-2016, DevRel-March-2016, developer-notice: Check whether it is true that we have lost 40% of (Git) code contributors in the past 12 months - https://phabricator.wikimedia.org/T103292#2167926 (Aklapper) >>! In T103292#2117626, @Ak... [11:01:18] Analytics, Datasets-General-or-Unknown, Operations, Traffic, Patch-For-Review: http://dumps.wikimedia.org should redirect to https:// - https://phabricator.wikimedia.org/T128587#2167989 (ArielGlenn) I'm sending mail to wikitech-l announcing that the switch will go live Monday (Apr 4). [11:09:44] ----^ milimetric [11:24:03] question of the day after reading https://cwiki.apache.org/confluence/display/KAFKA/Committing+and+fetching+consumer+offsets+in+Kafka [11:24:17] Fortunately, Kafka now provides an ideal mechanism for storing consumer offsets. Consumers can commit their offsets in Kafka by writing them to a durable (replicated) and highly available topic. Consumers can fetch offsets by reading from this topic (although we provide an in-memory offsets cache for faster access). i.e., offset commits are regular producer requests (which are inexpensive) and [11:24:23] offset fetches are fast memory look ups. [11:24:36] that makes sense, Zookeeper is not meant to scale for tons of writes [11:25:14] my question is: where does a consumer stores its offset related to.. the offsets of the topic it is reading? :D [11:26:10] I mean, from what I gathered a consumer will use a regular topic to store offsets related to other topics/partitions it is reading [11:26:54] so it will need a way to store its offset [11:33:49] mmm probably kafka just returns the last one [11:33:58] using special topics [11:34:15] * elukey talks with himself like a crazy homeless [12:06:56] elukey: ! [12:07:14] elukey: I'am ready for aqs deploy AND some answers on kafka :) [12:11:25] :) [12:11:36] all right we can start with the deploy [12:11:56] elukey: https://wikitech.wikimedia.org/wiki/Analytics/AQS#Deploying [12:12:08] The source part is ready, need to care the deploy part [12:12:17] elukey: batcave ? [12:14:12] quick coffee then batcave, brb! [12:15:23] joal: why aren't you using the automatic deploy-repo-build script for building the deploy repo? [12:16:46] https://wikitech.wikimedia.org/wiki/Services/FirstDeployment#Source_Repo_Configuration && https://wikitech.wikimedia.org/wiki/Services/Deployment#Regular_Deployment [12:17:12] mobrovac: didn't even know it existed ! [12:17:24] that's a valid reason :) [12:17:33] thanks for the pointers mobrovac, will read then update our docs [12:17:39] sure [12:17:45] awesome :) [12:17:47] if you try it and get stuck, lemme know [12:18:15] mobrovac: sure ! hopefully things will work, the weekend wiull be ok, and we'll ping you on monday for frontend update :) [12:18:55] cool [12:19:03] * mobrovac crosses fingers [12:19:32] mmmm mobrovac https://wikitech.wikimedia.org/wiki/Services/Deployment#Regular_Deployment should be similar to what joal was going to do no? [12:20:14] yes elukey, but i was referring to the first part about building the patch [12:20:28] the latter link was just to get that shiny new page some exposure [12:20:29] :P [12:21:21] ahahhaah [12:21:22] okok :) [12:22:21] * mobrovac needs to get better at marking his work [12:24:22] mobrovac: this time it worked well (work promotion) [12:24:39] elukey: will try to follow auto-config for deploy [12:31:36] hehehe [12:31:48] s/marking/marketing/ [12:31:50] wth? [12:31:51] haha [12:36:13] mobrovac: quick question, the lock file is to prevent multiple concurrent delopys, right ? [12:36:33] in the scap config, you mean? [12:36:35] yeah [12:36:40] yes [12:36:42] ok [12:36:59] So, in fact, there was almost nothing to change on my scap config ! [12:37:06] mobrovac: --^ [12:37:12] nice! [12:37:20] that means my guide works in practice too [12:37:22] hehe [12:37:32] mobrovac: the next thing is, I don't know how to automagically rebuild/merge the deploy repo [12:37:47] mobrovac: I did follow the thing on purpose :)( [12:39:03] should be just ./server.js build --deploy-repo --force --review if you've done https://wikitech.wikimedia.org/wiki/Services/FirstDeployment#Local_Git and https://wikitech.wikimedia.org/wiki/Services/FirstDeployment#Deploy_Repo_Set-up [12:39:08] mobrovac: Found it ! second page ... [12:39:15] right ... [12:39:16] yup [12:39:21] * joal is slow this afternoon [12:39:51] joal: note that you need to add your user to the docker group (last part of the deploy repo set-up) [12:40:03] otherwise you'll need to run the server.js script as root [12:40:09] mobrovac: I have docker setup for myself, done already :) [12:40:22] docker is cool [12:40:26] nice! [12:41:13] with the --review switch it automatically sends it to gerrit for review [12:41:21] with a nice commit msg [12:41:42] mobrovac: so, given that packages and git push are made by docker, no need to have the node-modules in my base deploy repo, correct ? docker [12:42:29] the node modules are built inside docker, but are on your file system in the deploy repo dir [12:42:38] git commit and git review are done as your user [12:42:44] form your host, not inside docker [12:42:55] ok [12:43:17] example patch created by the script: https://gerrit.wikimedia.org/r/#/c/278969/ [12:43:29] so the docker you use uses a volume that is in the deploy repo, right (just to get some basic understanding) [12:44:03] yup, it mounts the deploy repo dir inside the docker container [12:44:41] mobrovac: then deletes it's content and rebuilds everything using npm [12:44:45] and the whole operation is safe because it's all done on a separate local git branch, so if things go awry it's easy to revert the state [12:44:54] awesome [12:45:27] joal: it does git rm -rf node_modules && npm install on that local branch [12:45:40] other question (possibly last), no need for the package.json link then ? [12:45:52] what do you mean? [12:45:53] mobrovac: --^ [12:46:18] in the deploy folder, we have a link to the package.json in the src folder [12:46:22] the link is needed because otherwise npm install would do nothing [12:46:44] you still need to install the modules in the deploy repo, not the source repo [12:47:05] Analytics-Kanban, Operations, Traffic: varnishkafka logrotate cronspam - https://phabricator.wikimedia.org/T129344#2168509 (elukey) [12:47:09] but yeah, in theory package.json probably becomes redundant [12:47:20] as we could move files around in the docker container [12:47:27] but, oh well [12:47:31] mobrovac: looks like this part (link creation) is missing from the FirstDeploy tutorial [12:47:33] * mobrovac writing off to tech debt [12:47:50] joal: the script does that for you if the link is not present [12:48:06] ok, no need for doc then :) [12:48:07] also, the script defines the submodule if it's not present too [12:48:17] the script is smart [12:48:17] :D [12:48:20] script looks like magic ;) [12:48:29] Will test it right now :) [12:48:32] cool [12:48:42] mobrovac: stay tunes, put your healmet ! [12:49:11] * mobrovac hides in a bunker and waits for the explosion [12:49:55] mobrovac: I think I don't have the last version of service.js [12:50:09] server.js you mean? [12:50:14] what's wrong? [12:50:48] mobrovac: https://gist.github.com/jobar/e0fc65138805620bab5f0eff4992e11c [12:51:32] joal: are you executing that from the source repo? [12:51:39] mobrovac: yes [12:51:46] mobrovac: I'll double check [12:51:52] YES [12:52:02] and node_modules/service-runner exists in there? [12:52:27] mobrovac: I have not npm install modules in source :) [12:52:31] That's the thing :) [12:52:35] hehehe [12:52:42] I always run my tests in a dock :) [12:52:46] ah [12:52:47] :) [12:52:56] you've gone docker full-on [12:53:16] not full, but for some, yes [12:53:33] Particularly when it involves building various versions of stuff [12:55:35] but for that deploy thin, it won't work --> UIser should be me [12:55:39] mobrovac: --^ [12:55:55] which deploy things? [12:56:03] plus deploy folder setup etc [12:56:15] Actually, would be a good test to build an image doing that: ) [12:56:52] joal: the docker container's commands are run under a user whose uid/gid are taken from yours [12:56:56] so the mapping works [12:57:04] the files end up being owned as you [12:57:04] mobrovac: didn't know that [12:57:12] i told you, the script is smart [12:57:14] :P [13:01:56] mobrovac: should I give the server.js a test config file (it fails because of no config.yaml file in repo) ? [13:02:21] no config.yaml? [13:02:29] hmmm, that shouldn't be needed for building the repo [13:02:48] Error while reading config file: Error: ENOENT, open '/home/jo/wmf/code/analytics/aqs/config.yaml' [13:02:52] mobrovac: --^ [13:03:11] lemme take a quick look at the code [13:04:19] bah, that's completely unneeded [13:04:32] joal: you can just ln -s config.test.yaml config.yaml [13:04:42] the config reallly makes no difference for the build step [13:04:50] * mobrovac shall fix the script [13:05:04] mobrovac: or -c config.test.yaml ? [13:05:30] mobrovac: --^ it works :) [13:05:49] hehehe [13:05:51] good! [13:06:10] mobrovac: Your docker stuff downloads the entire wooooooorld ! [13:06:13] :D [13:06:24] nah, just the internet [13:06:26] :) [13:06:37] mobrovac: not sure it's smaller ;) [13:06:42] hahaha [13:11:18] (PS1) Joal: Update aqs to cabb367 [analytics/aqs/deploy] - https://gerrit.wikimedia.org/r/280902 [13:11:31] mobrovac: ssems to have worked --^ [13:12:10] \o/ [13:12:24] elukey: do you mind reviewing --^ ? [13:12:53] joal: looked at the patch, looking good! [13:13:35] joal: some other magic that the script does is that it does not install the packages needed for testing, only the ones needed to run the service and it also de-dedupes them [13:13:52] mobrovac: awesome++ :) [13:14:12] joal: this is why there are a lot of deleted files in your patch [13:14:15] mobrovac: Will self merge, and try to deploy using the --limit to only have it done on aqs1001 [13:14:21] cool [13:14:33] joal: the patch is huge and I have no idea how to read it, sorry :( [13:14:47] (CR) Joal: [C: 2 V: 2] "Self merging for deploy" [analytics/aqs/deploy] - https://gerrit.wikimedia.org/r/280902 (owner: Joal) [13:14:50] elukey: :) [13:15:05] elukey: I didn't check it either, I tust mobrovac's magics ! [13:15:33] * joal bows and prays for the magic to happen again @ [13:16:12] joal: elukey: essentially, the important part of the patch is the last line, where the submodule sha1 is updated [13:16:26] all of the other changes are "it just works magic" [13:16:27] :P [13:17:55] ahhhhh okok [13:23:25] mobrovac, elukey : doc updated https://wikitech.wikimedia.org/wiki/Analytics/AQS#Deploying [13:23:43] !log Deploying aqs in aqs1001 from tin [13:23:44] Logged the message at https://www.mediawiki.org/wiki/Analytics/Server_Admin_Log, Master [13:24:34] cool! [13:24:57] mobrovac: your doc pages will get higher page-rank :-P [13:25:17] :) [13:27:32] elukey, mobrovac : this is a SUCESS ! [13:27:35] :D [13:27:54] nice! [13:28:19] will wait for a few minutes before deploying on other aqs [13:28:20] joal: it should be much easier and safer from now on to do the deploys [13:28:27] joal: \o/ [13:28:28] mobrovac: Thanks a lot for your help ! [13:28:46] mobrovac: And thanks for the magics ! [13:28:55] algo: (a) issue a simple command for a magic script; (b) drink coffee/beer/etc while it does all the work for you [13:28:56] :P [13:29:11] mobrovac: particularly for repeated steps :) [13:29:18] hehehe [13:29:26] speaking of which, coffee time for me [13:29:31] We have plans to invest in magic scripts for our deploys as well :) [13:29:38] mobrovac: enjoy ! [13:30:05] it's instant israeli coffee, but i'll survive :) [13:30:22] mobrovac: Wooow, you are at hackathon, rihgt :) [13:30:27] Good luck ;) [13:30:28] yup [13:30:30] thnx [13:35:32] !log Deploying aqs in aqs1002 from tin [13:35:33] Logged the message at https://www.mediawiki.org/wiki/Analytics/Server_Admin_Log, Master [13:37:09] Analytics, Operations, Traffic, Varnish: Sort out analytics service dependency issues for cp* cache hosts - https://phabricator.wikimedia.org/T128374#2168736 (ema) [13:38:39] !log Deploying aqs in aqs1003 from tin [13:38:40] Logged the message at https://www.mediawiki.org/wiki/Analytics/Server_Admin_Log, Master [13:39:32] WE HAZ UNIQZ ! [13:42:03] woa! [13:51:33] congrats people [13:51:40] do you already have data loaded for it? [13:55:59] ! :) [13:56:18] mobrovac: some, currently loading more [13:56:34] kk [13:56:55] we should then wait for some to load before exposing it to the public [13:56:56] mobrovac: I'll ping you on PR on monday :) [13:57:11] One deploy on friday is enough ;) [13:57:50] interestingly scary: http://collapse-thedivisiongame.ubi.com/en/ [14:01:56] hm, i typed in the address of the hackathon venue and nothing happened ... [14:02:05] is that a good sign? [14:02:06] :P [14:02:22] * joal not underatand :P [14:02:30] hahahaha [14:02:32] telnet telnet.wmflabs.org [14:03:42] this is too good [14:04:51] wesome telnet :) [14:05:51] haha [14:06:48] ottomata: o/ vk-puppet has been upgraded, all good [14:07:04] the last step is to purge rsyslog/logrotate entries from the package [14:07:38] aye, ok with me [14:18:52] telnet wiki!!! [14:19:11] congrats on the deploy joal, thanks for learning the new easier way [14:20:37] np milimetric :) Happy tp have learnt some :) [14:22:10] what did yall learn? :) [14:22:56] the scap-friendly version of Marko's scripts [14:23:12] they like build and push the source, help with deploy [14:23:19] hm cool [14:23:36] jo updated the docs: https://wikitech.wikimedia.org/wiki/Analytics/AQS#Deploying [14:24:02] elukey: thanks for the heads up on the https change, I don't think it'll affect anything but maybe I'll send out an email to analytics-l [14:24:30] :) [14:43:28] Analytics-Tech-community-metrics, DevRel-April-2016, Developer-Relations (April-2016): Mismatch between numbers for code merges per organization - https://phabricator.wikimedia.org/T129910#2169162 (Qgil) [14:43:30] Analytics-Tech-community-metrics, DevRel-April-2016, Developer-Relations (April-2016): top-contributors should have real names for the main contributors - https://phabricator.wikimedia.org/T124346#2169165 (Qgil) [14:43:32] Analytics-Tech-community-metrics, DevRel-April-2016, Developer-Relations (April-2016): Play with Bitergia's Kabana UI (which might potential replace our current UI on korma.wmflabs.org) - https://phabricator.wikimedia.org/T127078#2169164 (Qgil) [14:43:36] Analytics-Tech-community-metrics, Differential, DevRel-April-2016, Developer-Relations (April-2016): Make MetricsGrimoire/korma support gathering Code Review statistics from Phabricator's Differential - https://phabricator.wikimedia.org/T118753#2169169 (Qgil) [14:43:43] Analytics-Tech-community-metrics, DevRel-April-2016, Developer-Relations (April-2016), developer-notice: Check whether it is true that we have lost 40% of (Git) code contributors in the past 12 months - https://phabricator.wikimedia.org/T103292#2169170 (Qgil) [14:51:39] (PS1) Joal: Update scap deployment configuration for aqs [analytics/aqs/deploy] - https://gerrit.wikimedia.org/r/280921 [15:03:15] milimetric: i think the shimmies for twix are missing on require js [15:04:13] I saw some bugs with that but just did a bower install and they went away nuria [15:05:44] milimetric: i did an install too, but unless it has a special config in require js i do not think twix would be able to access moment [15:06:00] let me see how is moment defined [15:06:01] (PS1) Joal: Correct cassandra daily jobs [analytics/refinery] - https://gerrit.wikimedia.org/r/280925 [15:06:53] (CR) Joal: [C: 2 V: 2] "Self merging bug in cassandra loading jobs." [analytics/refinery] - https://gerrit.wikimedia.org/r/280925 (owner: Joal) [15:10:21] milimetric: ok, i think is fine but let me re-check [15:10:43] k, sure. I see it working ok on my machine but maybe I accidentally set something up manually [15:11:50] milimetric: i am impressed, you did so many changes! [15:16:25] milimetric: funny how bingbot is there despite us have agent='user' ... [15:16:48] heh, yea, it's good that the data is easy to look at [15:16:56] I'm crossing my fingers hoping Erik's gonna like it [15:17:10] thanks, but these changes were very quick, don't be fooled that I spent a lot of time on them [15:17:17] dashiki's just a pleasure to work with, so fast [15:17:24] Analytics-Kanban: Investigate why bigbot appears on browser list when we are restricting pageviews to "user" agent type - https://phabricator.wikimedia.org/T131512#2169292 (Nuria) [15:17:43] we already discussed that milimetric, but I'm I'd not be so fast :) [15:19:35] (PS1) Joal: Correct typo in cassandra daily coordinator [analytics/refinery] - https://gerrit.wikimedia.org/r/280930 [15:20:03] a-team I'm sorry for the gerrit spams ... Fighting with cassandra loading for the bundle to start correctly before tonight [15:20:22] (CR) Joal: [C: 2 V: 2] "Self merging bug." [analytics/refinery] - https://gerrit.wikimedia.org/r/280930 (owner: Joal) [15:20:36] joal: if you catch me up I'll work on it so you can have a normal Friday [15:20:45] I've just got a small pageview API bug today [15:21:00] milimetric: I finish the one I'm on, then sure ! [15:21:07] k [15:30:26] (PS1) Milimetric: Fix double-decode issue in pageview article route [analytics/aqs] - https://gerrit.wikimedia.org/r/280934 (https://phabricator.wikimedia.org/T131369) [15:31:05] a-team: staddduppppp [15:31:21] soooory [15:34:31] (PS1) Joal: Correct second typo in cassandra daily coord [analytics/refinery] - https://gerrit.wikimedia.org/r/280935 [15:34:54] (CR) Joal: [C: 2 V: 2] "self merging bug" [analytics/refinery] - https://gerrit.wikimedia.org/r/280935 (owner: Joal) [15:35:45] Analytics-Kanban: Make beeline easier to use as a Hive client {hawk} - https://phabricator.wikimedia.org/T116123#2169363 (madhuvishy) a:madhuvishy [15:36:23] Analytics-Kanban: Make beeline easier to use as a Hive client {hawk} - https://phabricator.wikimedia.org/T116123#2169366 (Ottomata) I'd like to work on this as soon as I get through eventlogging on scap [15:49:23] oh madhuvishy if you are working on beeline cool, i just saw dan's update to it and commented that i'd work on it. but if you are on it please ignore! [15:49:39] ottomata: aah i missed your comment! [15:50:40] no go right ahead, i didn't realize anyone else would work on it! :) glad you are [15:50:44] happy to help if you need some too [15:50:47] on bash stuff [16:09:31] ottomata: do you know where librdkafka/kafkacat stores the offset commit for Kafka 0.8? I saw that zookeeper is not supported in favor of a file on disk [16:10:03] but running strace with kafkacat -C -b kafka1012.eqiad.wmnet:9092 -t webrequest_maps -c 1 doesn't really tell me anything [16:10:24] you are probably wondering: what is the end question? [16:10:52] I am curious about where kafkacat stores its commit offset becuause I've been reading about it today [16:10:55] :P [16:11:16] kafkacat? [16:11:19] i think you need to tell it to store them [16:11:30] ottomata: Can you give milimetric hue rights to rerun oozie jobs ? [16:12:13] yeah [16:12:16] elukey: cwd [16:12:17] if you do [16:12:18] -o stored [16:14:18] ottomata: and if you don't? how does kafkacat stores the last offset between invocations? [16:14:39] if you don't, it doesn't [16:15:27] ah ok I thought it was mandatory because kafka <= 0.8.1 delegates the offset commit tracking to consumers [16:18:01] naw, offset tracking is optional always, even in newer versions [16:20:38] ok now I am totally lost, need to restart reading kafka stuff again [16:20:40] buuuuu [16:20:54] so, elukey low level consumers [16:20:58] are different than high level consumers [16:21:02] low levels are: [16:21:24] consume N messsages from topic A partition 0 starting at offset X [16:21:53] its like reading a file. you have to specify the start position, number of bytes to read, etc. [16:21:56] and seek if you want to keep going [16:22:06] high level consumers wrap all of that up [16:22:23] by abstracting partitions away from you, and dealing with offset management, and distributed consumer balacning [16:22:41] but, underneath they are just using the low level kafka protocol [16:22:45] in newer versions of kafka [16:22:54] consumer balancing and offset management are built into the kafka protocol [16:23:05] but your client doesn't have to use them to read messages from kafk [16:23:06] a [16:23:14] you can still just read whatever you want manually out of kakfa [16:25:30] ottomata: yep this was my understanding but if I got it correctly a high level consumer needs to use zookeeper (or a special kafka topic in the newer versions) or a file to keep track of the offsets.. kafkacat seems to be a high lever consumer since each time I invoke it it returns different messages [16:25:35] (As expected) [16:25:58] elukey: i think it reads from the very end everytime [16:26:29] ahhhhh so it is me being stupid then! [16:26:45] everytime I reach the same conclusion :D [16:26:51] nawww [16:26:58] ottomata: I gooottt itttttt [16:27:35] thanks madhuvishy, now my background mental thread that remembers me stuff that I don't know is happy [16:28:04] yeah, ah, default for kafkacat is to start from end [16:28:29] ja, in new version, it is in a 'special topic', but that is abstracted from consumers, they just use the kafka protocol to commit offsets to kafka [16:28:43] confirmed running kafkacat -C -b kafka1012.eqiad.wmnet:9092 -t webrequest_maps -c 1, sequence is very different between calls [16:28:58] ottomata: yep yep mistery solved :) [16:29:05] what is -c? [16:29:24] should me messages to consume [16:29:38] -c Limit message count [16:30:48] all right, going offline, thanks a lot! [16:30:54] have a good weekend folks :) [16:31:27] aah yes [16:31:28] cool [16:31:39] good night elukey :) have a nice weekend [16:37:31] laaters! [16:47:55] madhuvishy: then the status of the jenkins task is waiting for anyone on release engineering to be able to collaborate on that? [16:52:57] nuria: yes [16:53:45] madhuvishy: did antoine knew what your problem was but was he too busy to help? or rather he did not have time to look at it? [17:02:36] nuria: not enough time to look at it [17:03:33] madhuvishy: Can you describe teh issues you run into in the ticket that way maybe i can pick it up once i ma done merging dan's chnages to dashiki [17:03:36] *the [17:03:50] gosh [17:04:33] madhuvishy: Can you describe the issues you run into in the ticket that way maybe I can pick it up once I am done merging Dan's changes to dashiki [17:04:37] sorry [17:06:10] nuria: I already did. But I can keep working on it once someone on their team is available [17:06:20] madhuvishy: ok, thank you [17:09:34] Analytics: Bug: Rendering hierarchy chart int tabs layout - https://phabricator.wikimedia.org/T131524#2169645 (Milimetric) [17:09:58] * milimetric going to lunch [17:24:06] joal: do you still see problems with this one? https://gerrit.wikimedia.org/r/#/c/279447/ [17:26:03] * nuria looks at code she wrote on dashiki and feels like she is in memento [17:32:06] (CR) Nuria: [C: 2 V: 2] "Merging this one." [analytics/dashiki] - https://gerrit.wikimedia.org/r/280253 (https://phabricator.wikimedia.org/T130144) (owner: Milimetric) [17:33:45] (PS2) Nuria: WIP: Allow filtering of data breakdowns [analytics/dashiki] - https://gerrit.wikimedia.org/r/278395 (owner: Jdlrobson) [18:08:19] nuria: should I deploy the browser-reports [18:09:23] milimetric: we normally do not deploy on fridays but given the risk i think we are ok, I need to announce the tool after this deploy [18:11:16] ok, I'll deploy and we'll tell Erik about it [18:11:29] then he has the weekend to check it out, we can announce after that? [18:11:46] but what do you think about his point of holding off the announcement so people can give all their attention to the edit report prioritization? [18:11:57] the community that's looking at this does have limited time / attention [18:12:46] hm, maybe I should fix https://phabricator.wikimedia.org/T131524#2169645 first [18:13:01] i thought it was always there but it's not happening in the currently deployed version [18:13:21] I'll send a patch after I check up on the cassandra load job [18:15:58] ottomata: can I get those run permissions so I can restart workflows? [18:16:10] (the failures here: https://hue.wikimedia.org/oozie/list_oozie_coordinator/0046183-160310183127745-oozie-oozi-C/) [18:16:17] joseph said to restart them once in a while if they fail) [18:17:56] milimetric: you probably have them, no? [18:18:20] joseph said when I check the box next to the workflow I want to restart, a "RESTART" button should appear and I'm not seeing that [18:18:24] he said that means I have no rights [18:18:41] hmm i see a rerun button, but not a restart button [18:18:42] I see "Sync Workflow" [18:18:43] do you see rerun? [18:18:45] hmmm [18:18:46] rerun yea [18:18:50] I don't see rerun [18:18:52] hmm [18:19:03] you can def do it from oozie cli, lemme check hue stuff... [18:19:52] milimetric: how about now? [18:20:28] hm, now I have Suspend, Kill, Edit, Sync Workflow [18:20:52] ah yeah, and rerun at the top [18:21:30] great! [18:22:16] thx! [18:22:32] I'm not sure how to do it from oozie, is it the same as "run a job" in the docs on wikitech? [18:22:36] (from cli) [18:25:04] milimetric: we cannot announce it iuntil we have percentages I think [18:25:06] *until [18:25:18] oh yeah, I was thinking about that [18:25:24] as i think we will get a ton of requests [18:25:28] it would be really easy to add that to the TimeseriesData [18:25:28] on teh subject [18:25:31] to toggle [18:25:37] milimetric: nah, teh backend shoudl do it [18:25:39] and it could default on percentages [18:25:44] *the backend [18:25:48] yeah but you need both if we want to drill down at all [18:26:00] not both, just raw numbers [18:26:06] drill down on what? [18:26:10] sorry [18:26:17] drill down on what graph? [18:26:43] cc milimetric [18:26:48] I'm thinking of a more consolidated dashboard without as many graphs, where you can pivot on different columns [18:26:54] but that's later [18:27:13] milimetric: i do not think dashiki is for drill downs though, its use case is "at-a-glance" [18:27:24] for now, changing from percent to absolute is trivial in TimeseriesData, it's a short function that would get chained into the getData call [18:28:17] yeah, but it doesn't have to be a fancy drill-down. It could be as simple as pivoting on the OS / Major columns in the table layout [18:28:30] which is useless the way it is, at a glance or otherwise [18:28:45] only the most determined people will actually get value out of that :) [18:29:02] I think that is scope creep more so given that marcel has percentages wip [18:29:48] the least the ui does the faster it will be [18:30:54] hm, let's make sure Timo's original request doesn't also ask for totals though, percentages might not work for them in all cases [18:31:18] milimetric: his request is for % [18:31:19] I disagree that this is a performance problem. The slowest thing right now by *far* is rendering the table [18:32:51] milimetric: i did not say it was a problem yet but that in general the slimmer the UI the better [18:34:04] I agree, I just think in this case performance is a non-issue either way. We loop over those values anyway, using them as-is or turning them into percentages will probably make a difference of a millisecond [18:34:18] milimetric: mm... when you select a date range [18:34:41] is there amny agreggation of results on that date range? [18:34:45] *any [18:37:16] it's not aggregation, it's just changing the values passed to the visualizer [18:37:23] you can see it most easily in the line graphs [18:37:37] but the pie charts might be having the problem that I'm working on now [18:37:42] they don't seem to re-render properly [18:37:49] btw, this is what I was confused about: https://phabricator.wikimedia.org/T118329#2009850 [18:38:08] it doesn't specifically say percentages for the first two graphs. But it's probably what's needed in all 4 cases [18:38:47] so it's ok, but I still thing it's much easier to do in dashiki than on the server. Either way, we have both versions of the code so we can switch to that if we need to [18:40:08] milimetric: i think percentages are all it is needed in all those cases yes. [18:40:30] milimetric: i had forgotten about the request of stats per country, will create ticket about that [18:40:55] sure, that'll be fairly easy yea [18:41:36] milimetric: I think that perf probably calculating percentages is nothing compared to re-rendering of sunburts, true [18:42:57] it's funny actually, the html table is waay way worse than the sunburst [18:43:12] milimetric: that sounds real strange [18:43:20] milimetric: as in .. ahem.. impossible [18:43:21] there's a great update in knockout 3.4, they turned on deferred updates by default [18:43:27] it kind of works a little bit like React [18:43:48] no, tables have always been terrible to render dynamically [18:43:59] on the client side that is, browsers just hate it when you add lots of rows [18:44:03] milimetric: depends [18:44:13] milimetric: if you add all rows and swap innerHTML [18:44:15] is mega-fast [18:44:26] there used to be this amazing js grid thing that pioneered shadow-dom stuff a few years ago, yea [18:44:41] milimetric: you do not need shadow dom [18:44:50] but, knockout does some of that, however due to the styled table we have I think it's still sucking [18:45:02] milimetric: you can create a dom node old fashion append to it [18:45:19] I wonder if the deferred updates help [18:45:24] milimetric: and after put the whole node as a child of the parent one in one try [18:45:27] yeah, knockout does that I'm pretty sure [18:45:33] milimetric: it is a real old trick [18:45:39] milimetric: if it is slow that is not ahppening [18:45:42] *happening [18:45:53] as an update like that is really fast [18:47:03] it's fast now 'cause it's only got 200 rows. But when you get to 100,000 rows, no trick helps, browsers just hate rendering tables [18:47:05] milimetric: let me make sure we are taking about the same thing, [18:47:16] milimetric: this is from 2009: https://www.nczonline.net/blog/2009/02/03/speed-up-your-javascript-part-4/ [18:47:30] that slickgrid thing I mention was rendering millions of rows fluidly [18:48:16] milimetric: ok but wait.. are you saying table is slow now with 200 rows? [18:48:24] yeah, that's how knockout does its updates. You can try playing with it and see what you find. The parameter to change is in table-timeseries.js [18:48:27] it's set to 200 [18:48:32] no, it's fine with 200 [18:48:36] but it's a bit slow with 1000 [18:48:40] and it's too slow with 10,000 [18:50:24] milimetric: ok. If needed i can look at that when i am done with jon's patch [18:50:48] no big deal for us, it just seemed like you were curious [18:50:56] I think more than 200 rows isn't useful anyway [18:51:04] milimetric: even 200 is a lot [18:51:33] it is sounding like that table will disappear in not too long... [18:52:53] yeah, I think it serves a good role now, to figure out what people really need, and make a proper viz out of that [19:02:56] Analytics-Kanban: Bug: Rendering hierarchy chart in tabs layout - https://phabricator.wikimedia.org/T131524#2170107 (Milimetric) [19:03:07] Analytics-Kanban: Bug: Rendering hierarchy chart in tabs layout - https://phabricator.wikimedia.org/T131524#2169645 (Milimetric) a:Milimetric [19:18:18] oiy :) [19:18:29] this race condition is an interaction between d3 and knockout [19:18:33] * milimetric puts on his hardcore hat [19:50:24] hey nuria [19:50:27] arouned ? [19:50:32] (PS3) Nuria: Allow filtering of data breakdowns [analytics/dashiki] - https://gerrit.wikimedia.org/r/278395 (owner: Jdlrobson) [19:50:42] joal: yes [19:50:52] few minutes for pageview code ? [19:50:55] nuria: --^ [19:51:12] sure, batcave? [19:51:15] sure [19:51:42] milimetric: updated jdlrobson patch , need to create ticket for it [19:51:58] Thx milimetric for having restarted the failed oozie job ! [19:58:44] milimetric: should we push browser code then? [20:01:01] nuria: no, this bug is awful [20:01:09] it only happens sometimes but makes the pie charts useless [20:01:19] milimetric: the re-rendering of sunburst [20:01:21] I should be able to figure it out today though [20:01:36] milimetric: sounds 'deep-on-the-bowels-of-d3' [20:01:40] yeah, it's rendering it twice, I had to take a quick break but I'm looking at it again [20:01:47] no, it's not too deep [20:01:53] k [20:01:55] this code in the bindings is on purpose not the highest quality. [20:02:06] *on purpose jajaja [20:02:11] because it's componentized and we were never too harsh with it, yea [20:02:24] but the d3 ones could definitely use a fresh look [20:02:45] copy pasting d3 examples, even from Bostock himself is not always a great idea [20:03:12] ay ay [20:03:22] joal: I got your back man, no problem, I can check for red and hit rerun till the cows come home, I'm pro at that :) [20:03:27] I am scared of d3 [20:03:38] :) fear, in this case, is a good thing [20:03:44] you rock, cowboy ;) [20:03:51] lol [20:04:16] I did a rerun myself few seconds ago, but now heading bed :) [20:04:22] Have a good weekend a-team ! [20:04:45] nite [20:07:40] milimetric: we are killing it with browser reports, all 7 unique users as of today [20:08:46] wait 'till Erik announces it :) [20:09:14] the users were definitely there before, if they don't keep coming maybe they hate the change [20:11:10] nah, we will get users [20:11:40] the "compare ve dashboard" is sandness when it comes to usage [20:12:13] if it gets less visits than vital signs is getting none basically [20:15:30] lol, we have 100% written as "1.0e+2%" [20:16:19] (PS1) Milimetric: Fix double rendering of hierarchy [analytics/dashiki] - https://gerrit.wikimedia.org/r/280972 (https://phabricator.wikimedia.org/T131524) [20:16:31] ok nuria, I fixed it, can you test / merge? [20:16:49] milimetric: i never shaw the bug but let me look [20:17:08] so what you do is basically try to keep it busy. switch tabs a couple times, select / deselect a graph [20:17:22] then if you click to zoom in any pie chart, it should double-render [20:17:37] there are various ways to fix it, but I think I chose the easiest for now [20:17:42] milimetric: that fix is vodoo [20:18:14] I just inspected the graph when it was having the problem and it had two g elements [20:18:25] meaning it doesn't clean up the element properly every time [20:18:38] also this " // not sure about this pattern, saving references in DOM elements... hm " [20:18:42] garbage collection is weird and usually you'd register a dispose callback with knockout [20:18:45] yeah, that's old [20:18:51] that's necessary for the whole thing to work [20:18:56] and could certainly be improved upon [20:19:01] but harder for a quick fix [20:19:21] (it's old because it's in the other sunburst too) [20:22:40] milimetric: and I take that remove does not error if element does not exist? [20:23:00] can you point me to where dispose callbacks are registered [20:23:02] ? [20:24:38] nuria: correct, d3.select('g') returns an empty array which still has the remove function, and it would do nothing in that case [20:24:51] (PS4) Nuria: Look at filters before looking at the Pageview tagging on x-analytics [analytics/refinery/source] - https://gerrit.wikimedia.org/r/279447 (https://phabricator.wikimedia.org/T128612) [20:25:06] milimetric: ok, will merge [20:25:08] dispose callback example: https://github.com/wikimedia/analytics-dashiki/blob/master/src/app/ko-extensions/datepicker-binding.js#L28 [20:25:20] notice the actual destroy is commented out because it doesn't exist :) [20:25:27] ok, I'll deploy after that [20:25:32] so we can see what Erik thinks [20:26:16] (CR) Nuria: [C: 2 V: 2] "Merging, fix looks to be so because DOM elements are not being disposed correctly when re-rendering. More of a a workaround than a fix." [analytics/dashiki] - https://gerrit.wikimedia.org/r/280972 (https://phabricator.wikimedia.org/T131524) (owner: Milimetric) [20:33:20] milimetric: ok, i can deploy too [20:33:36] I just deployed to testing [20:34:12] k, looks good, I'm doing prod [20:34:33] Analytics-Kanban: Allow filtering of data breakdowns in pageview metric - https://phabricator.wikimedia.org/T131547#2170390 (Nuria) [20:35:07] (PS4) Nuria: Allow filtering of data breakdowns [analytics/dashiki] - https://gerrit.wikimedia.org/r/278395 (https://phabricator.wikimedia.org/T131547) (owner: Jdlrobson) [20:35:33] milimetric: ok, will test once you deploy [20:35:46] milimetric: just created ticket for jdlrobson request [20:37:11] nuria: ok, I deployed [20:37:18] milimetric: k looking [20:37:19] I'm thinking of moving the sunburst in the middle and the table at the bottom [20:37:26] because scrolling sucks with that table in the middle [20:37:44] milimetric: that legend is sooo fancyyy [20:38:04] yeah? I thought it was kinda too big and splotchy with colors like an angry peacock or something [20:38:17] but I figured that'd be better than no color matching which was very confusing [20:39:34] milimetric: i think once we decide about percentages we are good here [20:39:44] milimetric: there is a bunch of things we can move to done now [20:40:01] Analytics-Kanban, Patch-For-Review: Add piwik reporting to browser reports [1] - https://phabricator.wikimedia.org/T130653#2170415 (Nuria) Open>Resolved [20:40:12] cool [20:40:37] Analytics-Kanban, Analytics-Wikistats, Patch-For-Review: Feed Wikistats traffic reports with aggregated hive data {lama} [21 pts] - https://phabricator.wikimedia.org/T114379#2170420 (Nuria) Open>Resolved [20:40:50] Analytics-Kanban, Analytics-Wikistats, Patch-For-Review: Send email out to community notifying of change {lama} [1 pts] - https://phabricator.wikimedia.org/T115922#2170423 (Nuria) [20:40:53] Analytics-Kanban, Analytics-Wikistats, Patch-For-Review: Feed Wikistats traffic reports with aggregated hive data {lama} [21 pts] - https://phabricator.wikimedia.org/T114379#1710279 (Nuria) [20:40:55] Analytics-Kanban, Analytics-Wikistats: Publish new pageview dataset with clear documentation {lama} - https://phabricator.wikimedia.org/T115344#2170422 (Nuria) Open>Resolved [20:41:01] Analytics-Kanban, Analytics-Wikimetrics: Usernames with commas not supported {dove} - https://phabricator.wikimedia.org/T129422#2170426 (Nuria) Open>Resolved [20:41:19] Analytics-Kanban, Patch-For-Review: Make Unique Devices dataset public {mole} - https://phabricator.wikimedia.org/T126767#2170428 (Nuria) [20:41:21] Analytics-Kanban: Write Unique devices blogpost - https://phabricator.wikimedia.org/T129498#2170427 (Nuria) Open>Resolved [20:41:49] Analytics-Cluster, Analytics-Kanban, Patch-For-Review: Create regular backups of Analytics MySQL Meta instance - https://phabricator.wikimedia.org/T127991#2170430 (Nuria) [20:41:52] Analytics-Cluster, Analytics-Kanban, Patch-For-Review: Enable purging of old jobs and coordinators in oozie - https://phabricator.wikimedia.org/T127988#2170429 (Nuria) Open>Resolved [20:42:02] Analytics-Cluster, Analytics-Kanban: Story: Community has periodic browser stats report generated from Hadoop data - https://phabricator.wikimedia.org/T69053#2170432 (Nuria) [20:42:04] Analytics-Kanban, Patch-For-Review: Create reportupdater browser reports that query hive's browser_general table {lama} - https://phabricator.wikimedia.org/T127326#2170431 (Nuria) Open>Resolved [20:42:24] Analytics-Kanban, Patch-For-Review: Make Unique Devices dataset public {mole} - https://phabricator.wikimedia.org/T126767#2022824 (Nuria) Open>Resolved [20:42:28] * milimetric high fives nuria [20:42:33] jaja [20:42:35] :) [20:42:41] i did nothing on this one [20:42:52] but boy what a milestone! [20:42:54] *we* did all this [20:42:59] together [20:43:14] through sometimes rocky times for each of us, our team just keeps going [20:43:17] it's pretty awesome :) [20:43:28] jaja, ya i created the tickets on pahbricator HEY!!!! [20:43:34] #whatadayasay [20:43:57] Analytics-Kanban: Change the Pageview API's RESTBase docs for the top endpoint - https://phabricator.wikimedia.org/T120019#2170436 (Nuria) Open>Resolved [20:58:21] Analytics, Pageviews-API, Services, RESTBase-API: Document that wikimedia pageviews API is blocked by ad blockers - https://phabricator.wikimedia.org/T126947#2170465 (Milimetric) hm, that exception for tools.wmflabs.org makes me a little hopeful that we can convince them. Do you think it'd be usef... [21:03:14] Analytics-Kanban, Analytics-Wikistats, Reading-Admin: {lama} Wikistats traffic reports 2.0 - https://phabricator.wikimedia.org/T107175#2170474 (Milimetric) Hm, I don't really agree with https://phabricator.wikimedia.org/T107175#2148129, I would've changed the title back, but it looks like we're managin... [21:06:43] ottomata: if i want to replace the occurence of an option with nothing, like -n madhuvishy with empty string in a bash script, what'd I do? [21:06:57] i've been trying to find all morning but haven't succeeded [21:07:40] like if my string was the value of $@ and I wanted to delete two options that have values [21:09:51] (PS1) Milimetric: Update for March [analytics/reportcard/data] - https://gerrit.wikimedia.org/r/281039 [21:10:05] (CR) Milimetric: [C: 2 V: 2] Update for March [analytics/reportcard/data] - https://gerrit.wikimedia.org/r/281039 (owner: Milimetric) [21:24:36] madhuvishy: ? [21:24:53] i'm about to head out but i'm not sure i understand your q [21:25:02] ottomata: ummm np lets talk monday [21:25:05] oook [21:25:10] i might just write the script in python :P [21:25:11] are you parsing args manuualy? [21:25:12] so much easier [21:25:16] yeah [21:25:17] python would be fine too [21:25:19] oh [21:25:21] what about get opt [21:25:23] orrr a loop [21:25:31] ya that's all doable i think [21:25:47] i want to set defaults for user and connection string [21:25:53] but allow user to override them [21:26:06] and everything else the user passes, pass it along to beeline [21:26:20] madhuvishy: for defaults [21:26:27] uhhhh yeah [21:26:30] you need shift [21:26:35] and [21:26:37] uhh [21:26:38] does shift delete? [21:26:42] yes [21:26:44] aaah [21:26:48] it moves all of the $@ down one [21:26:50] its like pop [21:26:51] that's the bit i didn't understand [21:26:57] i thought what shift! [21:26:58] okay [21:27:00] then ya [21:27:05] i think i can use getopt [21:27:07] thanks [21:27:19] oook i gotta run [21:27:22] lets talk omreon monday [21:27:22] byeee [21:27:23] byyye [21:27:24] thanks [22:15:15] Analytics, Pageviews-API, Services, RESTBase-API: Document that wikimedia pageviews API is blocked by ad blockers - https://phabricator.wikimedia.org/T126947#2170767 (kaldari) @Milimetric: yes. [22:35:28] Analytics-Kanban: Browser reports improvements (parent task) - https://phabricator.wikimedia.org/T130405#2170817 (Krinkle) [22:35:30] Analytics-Kanban: Browser report has odd "Not named" labels - https://phabricator.wikimedia.org/T130415#2170814 (Krinkle) Open>Resolved a:Krinkle Thanks! [22:35:48] Analytics-Kanban: Browser report has odd "Not named" labels - https://phabricator.wikimedia.org/T130415#2170818 (Krinkle) [22:40:53] Analytics-Cluster, Analytics-Kanban: Story: Community has periodic browser stats report generated from Hadoop data - https://phabricator.wikimedia.org/T69053#2170839 (Krinkle)