{"action":"created","issue":{"url":"https://api.github.com/repos/concord-consortium/lab/issues/104","labels_url":"https://api.github.com/repos/concord-consortium/lab/issues/104/labels{/name}","comments_url":"https://api.github.com/repos/concord-consortium/lab/issues/104/comments","events_url":"https://api.github.com/repos/concord-consortium/lab/issues/104/events","html_url":"https://github.com/concord-consortium/lab/pull/104","id":117345106,"number":104,"title":"Improve logging, add new event types, cleanup logging & CODAP export","user":{"login":"pjanik","id":767857,"avatar_url":"https://avatars.githubusercontent.com/u/767857?v=3","gravatar_id":"","url":"https://api.github.com/users/pjanik","html_url":"https://github.com/pjanik","followers_url":"https://api.github.com/users/pjanik/followers","following_url":"https://api.github.com/users/pjanik/following{/other_user}","gists_url":"https://api.github.com/users/pjanik/gists{/gist_id}","starred_url":"https://api.github.com/users/pjanik/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/pjanik/subscriptions","organizations_url":"https://api.github.com/users/pjanik/orgs","repos_url":"https://api.github.com/users/pjanik/repos","events_url":"https://api.github.com/users/pjanik/events{/privacy}","received_events_url":"https://api.github.com/users/pjanik/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-11-17T12:29:29Z","updated_at":"2015-11-25T17:29:30Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/concord-consortium/lab/pulls/104","html_url":"https://github.com/concord-consortium/lab/pull/104","diff_url":"https://github.com/concord-consortium/lab/pull/104.diff","patch_url":"https://github.com/concord-consortium/lab/pull/104.patch"},"body":"Summary:\r\n\r\n- There is a new `LogController` which is responsible for logging to parent window (it can be either LARA or CODAP).\r\n- All the components log when user interacts with them (button is clicked, checkbox checked, etc.)\r\n- All basic logs that are not specific to CODAP are extracted from `ExportsController` (e.g. \"StartedModel\", \"ReloadedModel\", \"StoppedModel\").\r\n- Logging can be configured in the interactive JSON, please see [metadata spec](https://github.com/concord-consortium/lab/blob/19cc26efe39bfa4a674672fb4e20b6d7ef61446e/src/lab/common/controllers/interactive-metadata.js#L299-L316).\r\n- Logging is enabled by default, even if you don't specify `logging` section in JSON. Then all the default values from metadata will be used, so we will log interaction with all the components and we will log all the properties that are bound to components (on model start, stop and reload).\r\n\r\nThis pull request introduces kind of breaking change - we used to log some parameters on model start and reload. These parameters were either specified in `exports.perRun` section in the interactive JSON or all the **writable** properties bound to components were used by default (if `exports` was undefined).\r\n\r\nNow, the default strategy is a bit different - we will simply log **all** properties bound to the components. Writable and read-only (=> outputs in most cases). I think it makes sense, as it's simpler. Also, it shouldn't cause any problems, as we will log the same properties + a few more in some (rare) cases.\r\n\r\nIn case interactive JSON lists properties that should be logged explicitly in `exports.perRun`, we need to make sure that new default behaviour coverts that or specify these properties manually in `logging.parameters` list. I'll check all the interactives with `exports` section defined in lab-interactives-site (there are not so many)."},"comment":{"url":"https://api.github.com/repos/concord-consortium/lab/issues/comments/159681691","html_url":"https://github.com/concord-consortium/lab/pull/104#issuecomment-159681691","issue_url":"https://api.github.com/repos/concord-consortium/lab/issues/104","id":159681691,"user":{"login":"sfentress","id":35721,"avatar_url":"https://avatars.githubusercontent.com/u/35721?v=3","gravatar_id":"","url":"https://api.github.com/users/sfentress","html_url":"https://github.com/sfentress","followers_url":"https://api.github.com/users/sfentress/followers","following_url":"https://api.github.com/users/sfentress/following{/other_user}","gists_url":"https://api.github.com/users/sfentress/gists{/gist_id}","starred_url":"https://api.github.com/users/sfentress/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/sfentress/subscriptions","organizations_url":"https://api.github.com/users/sfentress/orgs","repos_url":"https://api.github.com/users/sfentress/repos","events_url":"https://api.github.com/users/sfentress/events{/privacy}","received_events_url":"https://api.github.com/users/sfentress/received_events","type":"User","site_admin":false},"created_at":"2015-11-25T17:29:30Z","updated_at":"2015-11-25T17:29:30Z","body":"This all looks good to me."}}