{ "id": "173825", "key": "TIMOB-27197", "fields": { "issuetype": { "id": "4", "description": "An improvement or enhancement to an existing feature or task.", "name": "Improvement", "subtask": false }, "project": { "id": "10153", "key": "TIMOB", "name": "Titanium SDK/CLI", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [], "resolution": null, "resolutiondate": null, "created": "2019-07-01T11:16:30.000+0000", "priority": { "name": "None", "id": "6" }, "labels": [ "cb-tooling" ], "versions": [ { "id": "20412", "name": "Release 8.1.0", "archived": false, "released": true, "releaseDate": "2019-08-13" } ], "issuelinks": [], "assignee": { "name": "jvennemann", "key": "jvennemann", "displayName": "Jan Vennemann", "active": true, "timeZone": "Europe/Berlin" }, "updated": "2020-01-31T22:18:43.000+0000", "status": { "description": "The issue is open and ready for the assignee to start work on it.", "name": "Open", "id": "1", "statusCategory": { "id": 2, "key": "new", "colorName": "blue-gray", "name": "To Do" } }, "components": [ { "id": "13103", "name": "CLI", "description": "Node-based command line interface" } ], "attachment": [], "flagged": false, "summary": "CLI: Reduce logging output during build", "creator": { "name": "jvennemann", "key": "jvennemann", "displayName": "Jan Vennemann", "active": true, "timeZone": "Europe/Berlin" }, "subtasks": [], "reporter": { "name": "jvennemann", "key": "jvennemann", "displayName": "Jan Vennemann", "active": true, "timeZone": "Europe/Berlin" }, "environment": null, "comment": { "comments": [ { "id": "453998", "author": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "body": "I'm fine with this, however I think we need to do away with log levels in the logging system and always print every log message. Then let the tooling (CLI, Studio, etc) do the filtering. Too often we request the log output and because the log level defaults to info, the logs are useless. Perhaps we just need to write the build log to disk and make it easy for users to give us what we need?", "updateAuthor": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "created": "2020-01-31T19:01:55.000+0000", "updated": "2020-01-31T19:01:55.000+0000" }, { "id": "454001", "author": { "name": "jvennemann", "key": "jvennemann", "displayName": "Jan Vennemann", "active": true, "timeZone": "Europe/Berlin" }, "body": "Maybe something like NPM does? Write a {{ti-debug.log}} to the project root if the build exits with a non-zero status code.", "updateAuthor": { "name": "jvennemann", "key": "jvennemann", "displayName": "Jan Vennemann", "active": true, "timeZone": "Europe/Berlin" }, "created": "2020-01-31T19:34:22.000+0000", "updated": "2020-01-31T19:34:22.000+0000" }, { "id": "454003", "author": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "body": "Exactly, though I say let's write it regardless of the exit code. Just because the command didn't error, doesn't mean something weird happened. Furthermore, with the daemon, it won't exit. :)\r\n\r\nThe Titanium CLI logger is so far from being able to do this. We'd have to buffer all log messages before filtering and them stream them to a file. I don't think that's easy. The Titanium CLI logger is used to also display all stdout/stderr messages, so there's no clear separate between UI and debug logging.\r\n\r\nOnce we have a proper daemon-based build, we can use snooplogg which is far more capable. It buffers and streams. It has log levels. It has filtering. We can give the build it's own logger that streams into the daemon's logger and to a file and we can transform the stream as its being written to. Pretty exciting stuff.", "updateAuthor": { "name": "cbarber", "key": "cbarber", "displayName": "Chris Barber", "active": true, "timeZone": "America/Chicago" }, "created": "2020-01-31T22:18:43.000+0000", "updated": "2020-01-31T22:18:43.000+0000" } ], "maxResults": 3, "total": 3, "startAt": 0 } } }