-
Notifications
You must be signed in to change notification settings - Fork 19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Identify logger for Ionic Vue applications #63
Comments
What is logging?Logging is the process of recording some detail about application behaviour and storing it in a persistent medium. Simply put, it is the process of recording relevant data in a store. That data can be information about usage patterns, activities, and operations within an application, or server, etc. TypesLogs can be of multiple types, each pertaining to a different use case-
Why do we need logging?Reasons why logging is important-
References- |
Log levelsLabels that indicate the severity of a log entry and hence, help in classifying its urgency are termed log levels. They serve on multiple grounds such as separating messages that are just informational from fatal ones, that describe a problem and controlling the application's volume of log output. Log levels were initially developed in the 1980s by Syslog, a logging solution for the Sendmail project. The severity levels defined by the project later became a standard for logging. Common log levelsLog levels vary depending on the programming language and framework one is using. Following are the common ones-
References |
Logging for front-end appsFront-end applications have gone very complex with time, the developer has to manage state, API calls, visibility, platforms, browser support, etc thus, generating multiple opportunities for something to go wrong. Need for logging
References |
Findings on-Node libraries for loggingTested on numerous popular logging libraries available for Node.js, such as Winston, log4js (log4js-node), and Morgan. Node-based libraries won't be of any use as polyfills for core node modules like HTTP, path, OS, etc are not available in the browser or in the module bundler (webpack). Hence, won't work on the browser (client) environment. Browser log when using log4js in the Ionic-SDK app-log4js (client based)log4js is available for core JavaScript apps only as it does not have an npm package available for use. One needs to download and set up a min.js file for usage. loglevel and loglevel-plugin-remoteloglevel and loglevel-plugin-remote are client-based logging libraries that provide services respectively for logging and posting logs remotely. POC for the usage- #65 vue-logger-pluginvue-logger-plugin is a vue-specific library that provides browser logging service and aids in sharing the logs to the server. POC for the usage- #67 |
Reference issue on winston js: Another library that can be used for logging: |
Sir, the meteor-wintston-client requires winston to be set up, hence, the problem again boils down to the inability to use node-based libraries. The same goes for bunyan. |
Checkout libraries in below link: https://www.npmjs.com/search?q=keywords%3ABrowser+logger We should definitely check: |
Adding some more Vue Libraries explored: vue-pretty-logger License: MIT Last publish: 5 years ago vuex-action-logger License: ISC Last publish: 6 years ago vue-debug License: MIT Last publish: 9 years ago vue-bunyan-logger License: MIT Last publish: 5 years ago vue-raven License: MIT Last publish: 4 years ago vuejs-logger License: MIT Last publish: 2 years ago |
Thank you, sir. Will explore these. |
Sending the logs to the server is a crucial feature. loglevel is quite popular library and could be the first choice but as the loglevel-plugin-remote is not maintained (last release in 2017 ) we chose to go with vue-logger-plugin |
Initial implementation is done, and applied to Job Manager. Closing this as will have a separate ticket for server side implementation |
No description provided.
The text was updated successfully, but these errors were encountered: