当前仓库属于暂停状态,部分功能使用受限,详情请查阅 仓库状态说明
55 Star 269 Fork 100

fagongzi/gateway
暂停

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
filter_access.go 922 Bytes
一键复制 编辑 原始数据 按行查看 历史
张旭 提交于 2017-12-27 15:31 . dev: support filter plugin init
package proxy
import (
"github.com/fagongzi/gateway/pkg/filter"
"github.com/fagongzi/log"
)
// AccessFilter record the http access log
// log format: $remoteip "$method $path" $code "$agent" $svr $cost
type AccessFilter struct {
filter.BaseFilter
}
func newAccessFilter() filter.Filter {
return &AccessFilter{}
}
// Init init filter
func (f *AccessFilter) Init(cfg string) error {
return nil
}
// Name return name of this filter
func (f *AccessFilter) Name() string {
return FilterHTTPAccess
}
// Post execute after proxy
func (f *AccessFilter) Post(c filter.Context) (statusCode int, err error) {
cost := c.EndAt().Sub(c.StartAt())
log.Infof("filter: %s %s \"%s\" %d \"%s\" %s %s",
GetRealClientIP(c.OriginRequest()),
c.OriginRequest().Method(),
c.ForwardRequest().RequestURI(),
c.Response().StatusCode(),
c.OriginRequest().UserAgent(),
c.Server().Addr,
cost)
return f.BaseFilter.Post(c)
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/fagongzi/gateway.git
git@gitee.com:fagongzi/gateway.git
fagongzi
gateway
gateway
v2.0.0-beta

搜索帮助

0d507c66 1850385 C8b1a773 1850385