[00:07:23] !log awjrichards Started syncing Wikimedia installation... : Updating MobileFrontend, per https://www.mediawiki.org/wiki/Extension:MobileFrontend/Deployments/2012-10-01 [00:07:34] Logged the message, Master [00:45:09] crikey every time i run scap it takes longer to run :( [00:45:39] it's still running after 50 minutes! [00:46:58] that's pretty terrible :( [00:47:34] there are some more granular options that are faster, yes? sync-file / sync-dir [00:48:24] (for stuff without i18n changes) [00:50:22] !log asher synchronized wmf-config/db.php 'pulling db25, returning es10' [00:50:33] Logged the message, Master [00:50:55] Eloquence: yeah, but sometimes you just gotta do scap :( [00:51:35] it can cause problems for MobileFrontend particularly for js/css resources since we can't use ResourceLoader; so sometimes we run into weird caching problems during a scap [00:51:36] As I showed Patrick today, you can actually do l10n changes without scap using a workaround [00:51:45] orly! [00:51:57] Basically, you manually rebuild the l10n cache, then run 'sync-l10nupdate-1 1.20wmf12' [00:52:04] (or 1.21wmf1 as appropriatE) [00:52:08] RoanKattouw: sweet, is that documented somewhere? [00:52:16] Nope, we only cooked that up today [00:52:22] There is a command for rebuilding the l10n cache somewhere too [00:52:24] RoanKattouw: is there any reason to run scap then if we can just sync-dir and rebuild the cache? [00:52:49] Not really [00:52:53] well dang [00:53:03] RoanKattouw: can you add that to the deployment docs? [00:53:07] Sure [00:53:12] \o/ [00:53:13] thanks dude [00:53:15] So the full list of things you would do is [00:53:29] mw-update-l10n (this is a new command to just rebuild the l10n cache, thanks hashar) [00:53:37] sync-l10nupdate-1 [00:53:49] Ah, sorry, sync-l10nupdate-1 1.20wmf12 , it requires a version parameter [00:53:57] sync-dir [00:56:40] awjr: https://wikitech.wikimedia.org/view/How_to_deploy_code#Alternative_to_scap [00:56:55] yay! [00:57:13] RoanKattouw: when would you actually want to run scap as opposed to doing the alternative? [00:57:36] Given how crappy it currently is, basically never [00:57:46] Unless your name is Sam Reed and it's a Monday [00:57:48] lol [00:57:52] duly noted. [00:58:03] thanks for the pro tip :D [00:58:07] lol [00:58:08] And even that can probably be done with sync-dir [00:58:15] Oh, I see another case [00:58:34] Adding a brand new extension, or adding brand new i18n *files* to extensions [00:58:42] Those cases still need certain processing steps that exist only in scap [00:58:56] ah ok [00:59:01] jeepers it's been over an hour now [00:59:07] Oh God [00:59:15] There's a way you can check its progress, sort of [00:59:37] Open a separate shell on fenari, run top, then type u awjr [ENTER] c [00:59:46] (replace awjr with whatever your shell username is) [01:00:04] That should show you which processes are running as you with their full command lines, and you should see server names in there [01:00:11] !log awjrichards Finished syncing Wikimedia installation... : Updating MobileFrontend, per https://www.mediawiki.org/wiki/Extension:MobileFrontend/Deployments/2012-10-01 [01:00:20] ah yes cool [01:00:23] wow finally done [01:00:23] Logged the message, Master [01:00:25] Ha well speak of the devil [01:00:33] 65minutes [01:00:38] My God [01:00:49] I can't wait till we have git-deploy [01:01:15] is that the scap replacement? [01:01:30] It replaces the entire deployment system, yes [01:02:36] Ryan_Lane: BTW, another weird-ass thing that git-deploy needs to support is that currently, wmf-config/ExtensionMessages-$VERSION.php is generated from wmf-config/extension-list; the latter is versioned while the former is not. ExtensionMessages is regenerated from extension-list on every scap; this regeneration is needed when adding extensions, and when adding new i18n files to extensions [01:03:56] * Eloquence is tempted to put all features projects on ice til deployment system is fixed :p [01:04:09] hahaha [01:04:33] well, I didn't get to work on deployment at all last week [01:04:42] I wouldn't do that just yet ;) [01:04:52] TS + some labs issues have been eating my time [01:04:57] is anyone helping you with git-deploy or is it just you for now? [01:05:04] that said, I'm pretty close to being finished with git-deploy [01:05:15] I puppetized it. I just need to push that in [01:05:16] just me [01:05:54] maybe we can get some more hands and eyes from the platform folks on that soon .. it's definitely badly needed [01:06:01] once I get things pushed in and in testing mode in eqiad it may make sense for someone else to help out [01:06:58] yeah. I think I'll be able to get it into testing mode this week [01:07:03] awesome [01:09:06] that's super exciting [01:09:25] oh, great, the new version of salt was released too. that should help [01:16:19] Eloquence: I helped [01:16:22] Whoops [01:17:02] Eloquence: I helped Ryan fix a weird issue related to extension submodules earlier, but other than that I haven't been involved really, just making sure he's doing reasonable things that platform will actually want to use [01:17:42] I'm assuming that once it's in testing mode, people like Tim and Chad will want to look at it [01:18:08] Tim being the expert re our deployment system, Chad re git, and me somewhere in between [01:33:09] !log tstarling synchronized wmf-config/CommonSettings.php [01:33:20] Logged the message, Master [01:33:33] just got a [01:33:33] [6caedd47] 2012-10-02 01:33:01: Fatal exception of type MWException [01:33:45] PHP fatal error in Unknown line 0: [01:33:45] Exception thrown without a stack frame [01:34:00] [2eaf57ee] 2012-10-02 01:33:41: Fatal exception of type MWException [01:34:11] Wikipedia's down :O [01:34:29] TimStarling: Maybe your change? [01:35:18] !log tstarling synchronized wmf-config/CommonSettings.php [01:35:21] I'm reverting it just in case [01:35:22] back now [01:35:29] Logged the message, Master [01:35:30] yep, fixed it [01:35:34] thanks TimStarling! [01:36:09] Weird, it wasn't a syntax error, right? (sync would've caught that) [01:36:11] I was scared bro [01:36:27] no [01:36:28] 2012-10-02 01:35:11 srv283 dewiki: [f50aa397] /wiki/Besatzungszone Exception from line 75 of /usr/local/apache/common-local/php-1.20wmf12/includes/objectcache/RedisBagOStuff.php: RedisBagOStuff requires the phpredis extension: https://github.com/nicolasff/phpredis [01:36:48] binasher said it was installed, I neglected to check [01:37:14] deployed, or packaged? [01:37:50] Did he graceful apache after installing it? [01:38:50] it is indeed in mediawiki::packages [01:39:01] TimStarling: FYI Krinkle and I collaboratively reverted the change in git as well [01:39:38] it seems to be installed. likely RoanKattouw is right [01:39:39] Ah nice, gerrit-wm is now moved to -tech as well. [01:39:46] from* [01:39:47] it's installed, it's just that apache hadn't been restarted [01:39:50] to -operations [01:40:42] RoanKattouw: that's not really going to make it easier to fix [01:41:03] maybe try on test wiki next time (after restarting apaches). just in case :) [01:41:13] TimStarling: I can very easily revert the revert if you like, I'm sorry if I inconvenienced you [01:41:30] !log restarting all apaches to get redis PHP extension [01:41:40] Logged the message, Master [01:41:55] srv190: /etc/init.d/apache2: 55: [: nice: unexpected operator [01:42:07] wtf [01:43:00] it's because a string has spaces in it [01:43:08] you know shell script can't handle strings with spaces in them [01:43:18] Ugh [01:46:25] Collaboratively reverted? [01:46:28] TimStarling: Alright whenever you're done gracefulling just approve https://gerrit.wikimedia.org/r/#/c/25984/ [01:46:38] Brooke: Krinkle submitted the revert commit and I merged it [01:46:47] Tag team! [01:47:10] Damn right [01:47:13] * RoanKattouw raises a Dutch flag [01:47:14] well, at least open testwiki before syncing :) [01:47:15] or something [01:48:06] Reedy: I'm surprised you didn't go with 1.21wmf0. [01:48:14] Just to keep things interesting. [01:48:44] RoanKattouw: its weird, you sound more american when you're a bit tired on a hackathon day (someone linked me to our berlin '12 presentation and can't help notice the transition from quick dutchy me to low bass american you) [01:49:11] s/low/deep [01:49:25] haha [01:50:17] My ability to juggle multiple languages does diminish as I get tired, yes [01:51:42] For american it works for you though. I mean, from my observation, I beleive facial muscles are more relaxed when talking American, compared to british. [01:52:17] hah [01:52:30] James would call American pronunciation "lazy", I think. [01:55:09] !log tstarling synchronized wmf-config/CommonSettings.php [01:55:22] Logged the message, Master [01:55:40] RoanKattouw: I can't believe I wrote this [01:55:42] "It is important that neither don't exceed either string" [01:55:47] omg, that's horrible [01:55:56] I bet that went through various iterations [01:56:13] !log send sessions to both the existing memcached and also redis, to fill redis and allow for a graceful complete switch later [01:56:24] Logged the message, Master [01:57:55] Krinkle: As I said, even the grammatically corrected version of that doesn't make a lot of sense to me. Are you saying you need the one index to stay within its space and not creep into the other's space? [01:58:27] (Also, Matmarex is awesome) [01:59:21] RoanKattouw: I was trying to emphasise that "foo" -> "foofoo" is avoided by the Math.min() call below. [01:59:37] It has to look back for one and look forward for the other (because content can be added in the middle) [01:59:50] but it must never look behind the min() otherwise it'll think nothing was added [02:00:14] Or other weirdnesses [02:00:24] Right [02:00:33] I'll rewrite that paragraph. [02:03:44] Hmm, after we merge and backport 24681 but before we actually release a tarball, I suppose TWN needs to work its magic to move the translations [02:05:46] I already requested that :) [02:05:56] Shouldn't be a problem. They have a script for it [02:06:19] Good [02:10:29] RoanKattouw: The while loop optimisation you propose, I considered that but I choose to keep the body of the while fast instead of having one while loop that covers all cases. [02:10:59] I guess it wouldn't be that much of a problem, but I did notice issues earlier where there was a noticeable delay. [02:11:15] I guess it was caused by a number of factors though, not this one thing. [02:11:35] Right [02:12:29] and to not have function calls if not needed. Its not really stable optimisation (in that, if there is a function, it will have to call it, so if function calls are a problem, this doesn't eliminate it, just avoids it if possible) [02:13:27] wherever? I never knew that. Thanks. [02:13:42] didn't* [02:14:50] Yeah I understand why you don't want to call the function if it's not needed, that's why I suggested an alternative to the fn = fn || approach [02:15:06] which would add weight to the while body. [02:15:09] I guess that's okay though [02:15:11] The other approach I suggested tests the truthiness of fn more often, but duplicates less code [02:15:28] Testing the truthiness of fn is gonna be much faster than calling a no-op function [02:15:34] maybe try on test wiki next time (after restarting apaches). just in case :) [02:15:40] testwiki is just one server [02:16:03] there's no guarantee that it would have reproduced the error [02:16:08] srv193 might accidentally have been gracefulled already, I suppose [02:16:13] Sure, but apaches are usually restarted together, so it would've failed there as well. [02:16:21] ah, testwiki is restarted more often, true [02:16:22] the error didn't happen on every server, I was watching the traffic on the redis server [02:16:45] Ha, so a random collection of servers was broken, nice [02:16:58] TimStarling: I don't claim it would've prevented the 10 second down time, but I was editing test wiki at the time and ajax preview gave me a 500 error. [02:17:10] graceful restart generally doesn't change the binary versions of things that are loaded into apache [02:17:23] but it could've helped, anyway, you know what you're doing :) [02:17:36] what I should have done was checked php.ini on all the servers [02:17:42] I mean phpinfo() [02:17:50] which is what I did after I restarted them [02:18:35] when you're deploying a change that needs a new PHP extension, phpinfo() on the webserver, not CLI, is the only way to check [02:18:39] Oh man I'm glad to see the 1000-line behemoth that is mwsuggest.js go away [02:21:28] !log LocalisationUpdate completed (1.20wmf12) at Tue Oct 2 02:21:28 UTC 2012 [02:21:39] Logged the message, Master [02:25:26] RoanKattouw: btw, it would get a bit more ugly (re: while loop if fn), as it would have to be inline (not stored in a joined variable) because it is in the while statement itself. [02:26:40] while ( $.byteLength( fn ? fn( inpParts.join( '' ) ) : inpParts.join( '' ) ) > byteLimit ) { [02:26:57] Argh right, it's in the condition [02:27:13] and inpParts.join can't be cached because it is modified in the loop [02:27:22] Technically, you can do while ( foo = inpParts.join( '' ), $.byteLength( fn ? fn( foo ) : foo ) > byteLimit ) { [02:27:33] But I don't think anyone will know what that means [02:28:08] so I'll keep the if wrapper, its 3 lines of code duplicates, but no execution duplication. different kind of performance [02:28:25] RIght, yeah let's just keep it as is, it'sf ine [02:28:35] It's harder to eliminate that duplication than I thought [02:35:55] RoanKattouw: "Wherever" reminds me of when I tried to unmount on linux [02:36:13] Unix, saving the world one character at a time. [02:36:24] they just couldn't name it unmount could they! [02:36:32] It *had* to be umount [02:36:48] Yeah they just had to do it [02:36:49] Bastards [02:37:57] !log LocalisationUpdate completed (1.21wmf1) at Tue Oct 2 02:37:57 UTC 2012 [02:38:07] Logged the message, Master [02:43:08] Unix haters unite. [03:26:59] hey, going to sync a JS file change to prod in a few if no one objects [03:27:28] At this hour? Is it a bug fix? [03:28:56] !log olivneh synchronized php-1.20wmf12/extensions/E3Experiments/experiments/openTask.js [03:29:07] Logged the message, Master [03:31:28] ack! sorry, i missed your message [03:31:52] No worries, it's already done [03:31:54] didn't realize my buffer was scrolled up [03:39:40] You can include a reason when syncing a file. [03:44:37] Brooke: you're right. i didn't know that. [03:44:53] You have to be careful with $ and such, I think. [03:44:59] And it'll get mangled in various media. [03:45:07] On the Twitter and such. [03:50:18] i'll need to update my sync-file script. i have a wrapper that prints a warning and waits 15 seconds before actually performing the sync. [03:51:11] i'm going to sync the same file again to remove a stray console.log call that snuck past me. [03:51:44] !log olivneh synchronized php-1.20wmf12/extensions/E3Experiments/experiments/openTask.js [03:51:54] Logged the message, Master [05:47:59] Krinkle: re https://bugzilla.wikimedia.org/show_bug.cgi?id=38334#c8 [05:48:13] Yes :) [05:48:13] you are not, a '?' was lost after "ask Krinkle" :p [05:48:35] Krinkle: but I thought you considered it a bug worth considering because you set it as "blocker" [05:48:55] * Nemo_bis knows nothing, relies on the others :p [05:49:19] sure [06:05:45] Ryan_Lane: can I point https://bugzilla.wikimedia.org/show_bug.cgi?id=31828 to your attention? I would need an approval for a peculiar Labs use. [06:10:32] "(2) Fastily today has still an issue" is the silliest reason ever read :p [06:10:45] of course uploads on Commons will always have limits ;) [06:12:07] it's to read as "we've at least one user who need this service" [06:12:19] that's not a valid use case [06:12:46] I can't see any actual description if the service, what purpose it would serve and how it would look like [06:12:46] The valid use case is "We need a temporary place to store files pending shell upload intervention." [06:12:53] pfff [06:12:59] it could take 3 weeks [06:13:05] archive.org [06:13:06] and some video files are 1 Gb [06:14:15] What about http://archive.org/about/terms.php ? [06:15:07] Use archive.org to publish the video for educative value would be okay. [06:15:22] But our use of archive.org as a storage transitionnal service wouldn't. [06:15:24] "Access to the Archive’s Collections is provided at no cost to you and is granted for scholarship and research purposes only." [06:16:47] archive.org scope is much broader than Commons' [06:16:59] with "for scholarship and research purposes only"? oO [06:17:02] anyway I've updated the bug according to your comment [06:17:41] what about that? there are licenses [06:18:05] that's about private collections, probably [06:19:24] "You agree that we may contact you from time to time with surveys or other questions regarding your opinions about and uses of the Archive, as well as with information we believe may be of interest to you." [06:19:41] "In addition, we request that, according to standard academic practice, if you use the Archive's Collections for any research that results in an article, a book, or other publication, you list the Archive as a resource in your bibliography. " [06:20:20] what's the problem with the second? [06:20:36] This highlights the fact they mainly target academic use. [06:20:44] the first is just boilerplate legal text, they do waaaaay less of that stuff than the WMF (aka absolute 0) [06:20:55] you obviously don't know IA [06:21:11] No, I only use it. [06:21:21] are you an academic? [06:22:01] I'm so violating the terms. But I'm not going to imply the Wikimedia community should encourage some members to violate terms. [06:22:59] you're not violating any terms [06:25:15] and of course uploading any file which is acceptable on Commons is within their scope [06:25:27] (by the way, is archive.org provides way to upload videos comfortably with a resume if the connection disconnects?) [06:26:26] yes [06:26:43] much better than anything else you might invent from zero [06:42:22] And you don't have any problem with having to say to people "If you need to upload a large file on a Wikimedia site, please go to see IA site ?" [06:44:45] Uploading big files is not part of what Commons offers, period. [06:44:56] Server-side upload is just a workaround. [06:45:44] And archive.org is obviously better: 1) it requires no access requests of any sort nor technical knowledge, 2) files are immediately available to anyone without any restriction of size or whatever. [06:46:25] "Please upload on this other site of ours" is not different from "Please upload on Dropbox, Google Docs or whatever". [06:48:47] Anyway, of course, if Labs can be used this way why not, one more option. [15:06:02] notpeter: for imagescalers, how can one test them? [15:06:35] for instance, how can I see which scaler produced a thumb, if I want to verify whether a thumb has been broken/fixed by the upgrade? [15:10:54] ok, already got sick of purging and hard-refreshing my svg test case :p [15:44:22] isn't gitweb terribly slow right now? O_o [15:45:45] <^demon> gitweb is always slow. [15:45:54] <^demon> I'm planning to replace it [15:49:27] heh [15:49:45] ^demon: of course I mean "even [much] slower then usual" [15:50:02] It needs more ponies. [15:50:35] <^demon> Its authors need to learn how to cache. [15:51:21] kernel.org uses it, so it can't be that bad [15:51:50] O_o [15:52:57] Nemo_bis: http://git.kernel.org/ ;) [16:17:44] !log asher synchronized wmf-config/db.php 'adding db64 to s3 in place of db25' [16:17:56] Logged the message, Master [19:35:09] new policy, quiet bots? [19:35:17] siebrand: it's been months [19:35:27] Nemo_bis: what's been months? [19:35:43] siebrand: since the bots silencing [19:36:07] Nemo_bis: oh. This is #wikimedia-tech. I mistook it for #mediawiki [19:36:42] siebrand: ah ok :) [19:36:49] https://bugzilla.wikimedia.org/show_bug.cgi?id=35248 https://bugzilla.wikimedia.org/show_bug.cgi?id=39114 btw [19:38:47] Nemo_bis: ty. [19:39:08] Nemo_bis: Did you move all things from [][Issues and features]] to bugzilla? [19:39:18] siebrand: no, only those Niklas asked [19:39:22] by marking them as such [19:39:39] many are for twn only [19:39:40] Nemo_bis: Nikerabbit's been bugging me about "many new issues", but after catching up on e-mail, I already suspected he had something to do with it.... [19:39:56] omg did I reveal some secret [19:40:00] he didn't actually ask [19:40:20] I just thought that [[bugzilla:XXXXX]] meant "bug report needed" [19:40:24] Nemo_bis: best remove all entries from that page when they're in bugzilla. Would like to get rid of it; it's confusing. [19:41:16] siebrand: yes, a bit, but as we don't have an issue tracker for twn... [19:41:42] there are some other items which would be valid bug reports there, I think [19:41:54] Nemo_bis: we don, bugzilla.wikimedia.org for software issues, and [[support]] for all else that's too specific. [19:42:07] hmm [19:42:35] moving stuff from a wiki page to LQT threads doesn't sound too efficient [19:46:28] siebrand: there are a couple items which would be nice if you could clarify [19:46:40] P3 bugzilla:XXXXX: Javascript performance issue in Special:LanguageStats (still current? browser-specific?). [19:46:54] Special:ImportTranslations is too slow. User should be able to get 1000+ translations imported in one go. Currently with 45-60 seconds processing time, only 25-30 translations are dealt with. [19:47:06] (https://bugzilla.wikimedia.org/show_bug.cgi?id=37166 or not?) [19:47:20] and P2 bugzilla:XXXXX (exists, find the number [not in any bug mentioning fuzzy]): fuzzy.php gives a database error if no input given [19:50:43] Nemo_bis: Special:ImportTranslations is indeed 37166 [19:51:57] Nemo_bis: php fuzzy.php still throws a database error. [19:53:02] Nemo_bis: Javascript performance: Most probably still present, specifically in the MediaWiki extensions group. Expanding 600 or so rows is lightly intensive. Should be partially resolved now that extensions still in subversion are dropped from Translate/twn. [19:53:12] siebrand: but what's the bug about db error? [19:53:22] Nemo_bis: bad input checking. [19:53:35] siebrand: I mean the bug number, I couldn't find it [19:53:56] Nemo_bis: oh. Then it probably doesn't exist. [19:57:24] ok [20:27:36] AaronSchulz, can you review https://www.mediawiki.org/w/index.php?title=Extension:Scribunto/Deployment_priorities&oldid=583530&diff=cur and maybe grant Rical autochecked? [20:31:53] Uh no hang on, you're not the one doing Scribunto, are you.. Sorry [20:32:49] * Krenair pokes Tim-away [20:48:03] Wait a couple of hours at least ;) [23:17:36] gn8 folks [23:19:10] !log deploying Damianz's OpenStackManager change for adding/removing bastion users on shell access on labsconsole [23:19:21] Logged the message, Master [23:19:24] yay [23:19:43] now a user to test this on..... [23:20:37] I'll just make a test user [23:21:23] you could remove Mardetanha's access and re-add it since they aren't in any projects and are a new user. [23:21:35] making a test user is easier [23:21:52] heh [23:22:02] also the last change date on the completed search looks dodgy [23:22:21] eh? [23:22:41] https://labsconsole.wikimedia.org/w/index.php?title=Special:Ask&offset=0&limit=500&q=%5B%5BCategory%3AShell+Access+Requests%5D%5D%5B%5BIs+Completed%3A%3Atrue%5D%5D&p=format%3Dbroadtable%2Fheaders%3Dshow%2Fsearchlabel%3DCompleted-20Requests%2Fdefault%3D%28No-20completed-20requests%29&po=%3FShell+Justification%0A%3FModification+date%0A&sort=Modification+date&order=asc [23:22:56] unless they really where all apart from 1 done on the 29th [23:23:09] oh [23:23:10] weird [23:23:30] oh [23:23:33] someone modified the form [23:23:47] I'm not sure why that would modify the page too, but whatever [23:24:01] hm [23:24:11] modification date is just wrong [23:24:12] bleh [23:24:14] stupid SMW [23:25:30] that seems to be working. [23:25:58] ah. remove from all projects is default? [23:26:00] good :) [23:26:27] dunno, I added 2 options since andrew had different thoughts can't remember which one I set to true heh [23:26:34] :D [23:26:43] well, wgOpenStackManagerRemoveUserFromAllProjectsOnShellDisable is defaulted to true [23:26:47] which is what we want [23:26:49] so, that's good [23:26:56] Yeah [23:27:18] The other/being able to change the single project name was more for just in case that usefulness. [23:27:47] that is indeed useful [23:28:15] if anyone other than us ever uses this software, they'd likely want that [23:29:20] Assuming they didn't just have a PTP vpn, probably :) [23:30:14] it's working perfectly [23:30:30] thanks for the change! [23:30:33] nice to know since I havn't actully tested it since the last misc changes heh [23:30:39] heh [23:30:41] * ori-l is going to push a small js change [23:30:54] ori-l: to where? the site? [23:31:44] enwiki, yeah [23:32:02] is that okay? are you in the midst of something? [23:32:39] ^ Ryan_Lane [23:32:49] I'm not. no [23:33:51] is anyone else? this involves a small change to an extension's JS file. let me know if it's a problem. [23:34:42] did you check the calendar? [23:34:45] and the wiki? [23:36:23] Ryan_Lane: yes [23:39:53] ori-l-afk: then you should be good to go [23:44:33] !log reedy synchronized php-1.21wmf1/extensions/Collection/ [23:44:43] Logged the message, Master [23:45:38] !log olivneh synchronized php-1.20wmf12/extensions/E3Experiments/experiments/openTask.js 'Updating event format for OpenTask funnel' [23:45:49] Logged the message, Master