Comments (1)
@photowey Thank you for your proposal. I think it is valuable and needs to be done at present.
For the Logger module, I think the framework needs to be developed from two perspectives.
- Built-in Logger. We can provide a logger specially used for logging in the framework-level, that is, compared to current implementations, we should adding log level, log location and other basic information on the basis of retaining 'color'.
This logger can be defined by user.
We also need to define a interface like:
// Logger is the interface for Logger types
type Logger interface {
Info(args ...interface{})
Warn(args ...interface{})
Error(args ...interface{})
Debug(args ...interface{})
Fatal(args ...interface{})
Infof(fmt string, args ...interface{})
Warnf(fmt string, args ...interface{})
Errorf(fmt string, args ...interface{})
Debugf(fmt string, args ...interface{})
Fatalf(fmt string, args ...interface{})
}
I suppose this interface can be placed to extension/normal/logger/logger.go
- User Logger under extension/normal/logger/impl/. Developers using the framework can inject logger implementation to this logger interface in their code to print app-level logs. The module needs to provide several preset implementation classes, like
extension/normal/logger/impl/console_logger
extension/normal/logger/impl/file_logger
extension/normal/logger/impl/elastic_logger
and so on. Each implementation should have special param and logic, for specific usage.
from ioc-golang.
Related Issues (20)
- The IOC-golang helloword demo build file exceed 50M+ HOT 1
- [Bug] Error logs of struct pointer injection field.
- extension GORMDB func Transaction param need *gorm.DB HOT 1
- [Enhancemt] Generated Proxy stub should copy origin comments of method
- [Proposal]AOP Pointcut into interface method HOT 1
- GetxxxImplSingleton not what i want HOT 2
- [Enhancement] Descrease controller-tools builder version to 0.8.0
- [Bug] iocli monitor collection failure rate 1.00% bug
- [Enhancement] More friendly error message
- [Enhancement] Add function implement constrain of implements annotation
- [Enhancement] Remove tag '+ioc:autowire=true'
- Upgrade dependency "github.com/nacos-group/nacos-sdk-go"
- 继承的struct无法完成父struct的依赖注入
- 相同包下面的注入问题 HOT 1
- 如果被注入的对象,被其他地方也注入了,运行时有时会报下面的错误 HOT 1
- 如何处理自定义Config注入时,字段名与配置文件内字段名不同的情况
- Typo in repository description
- 如何自定义启动banner HOT 1
- 在win环境下无法生成代码
- 源代码中有很多单词拼写错误 HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ioc-golang.