{"action":"opened","issue":{"url":"https://api.github.com/repos/bostonmak/ProjectNano2/issues/57","repository_url":"https://api.github.com/repos/bostonmak/ProjectNano2","labels_url":"https://api.github.com/repos/bostonmak/ProjectNano2/issues/57/labels{/name}","comments_url":"https://api.github.com/repos/bostonmak/ProjectNano2/issues/57/comments","events_url":"https://api.github.com/repos/bostonmak/ProjectNano2/issues/57/events","html_url":"https://github.com/bostonmak/ProjectNano2/issues/57","id":339525838,"node_id":"MDU6SXNzdWUzMzk1MjU4Mzg=","number":57,"title":"Mature Logging Framework","user":{"login":"minimucho1","id":8528617,"node_id":"MDQ6VXNlcjg1Mjg2MTc=","avatar_url":"https://avatars2.githubusercontent.com/u/8528617?v=4","gravatar_id":"","url":"https://api.github.com/users/minimucho1","html_url":"https://github.com/minimucho1","followers_url":"https://api.github.com/users/minimucho1/followers","following_url":"https://api.github.com/users/minimucho1/following{/other_user}","gists_url":"https://api.github.com/users/minimucho1/gists{/gist_id}","starred_url":"https://api.github.com/users/minimucho1/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/minimucho1/subscriptions","organizations_url":"https://api.github.com/users/minimucho1/orgs","repos_url":"https://api.github.com/users/minimucho1/repos","events_url":"https://api.github.com/users/minimucho1/events{/privacy}","received_events_url":"https://api.github.com/users/minimucho1/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-07-09T16:42:53Z","updated_at":"2018-07-09T16:42:53Z","closed_at":null,"author_association":"COLLABORATOR","body":"**Goal: **\r\nProvide a logging framework that all classes can extend. This should be done in a way that does not break the current implementation of all classes. This framework can be leveraged by all classes to provide business level details on all user interfacing features such as character saving, NPC scripts, and other features. By using this framework, we will be able to consume information at a glance to identify possible issues and readily respond to them.\r\n\r\n**All information that should be logged:**\r\nBusiness Logic that User Interfaced With: Character Saving\r\nComponent Interfaced With: MapleCharacter.java\r\nUser: LightRyuzaki\r\nStatus: Started, In Progress, Success, Failure\r\nExecution Time: Only on Success or Failure\r\nIf Failure, Provide\r\n* Reason\r\n* Stacktrace\r\n\r\nExample:\r\n\"Task: saveToDB, Character: LightRyuzaki, Status: SUCCESS, Execution time: 23000ms\"\r\n\"Task: saveToDB, Character: LightRyuzaki, Status: FAILURE, Execution time: 5000ms, Reason: InventoryEquipmentException encountered when trying to execute SQL batch. ERROR: InventoryEquipmentException thrown (stacktrace here).\"\r\n\r\n**Validation Criteria:**\r\n1. A class that implements the slf4j logger interface. The logger must implement from this interface.\r\n2. Log start and finish times.\r\n3. Log success and failures.\r\n4. Log the user that interfaced with the business logic.\r\n5. Log the business logic that the user interfaced with. This should include any exceptions, the method that was used, and/or tasks that were called."}}
{"actor":{"display_login":"minimucho1"}}