Documentation
¶
Overview ¶
github.com/whatap/go-api/trace
github.com/whatap/go-api/trace
Index ¶
- Constants
- Variables
- func AddTraceCtx(traceCtx *TraceCtx)
- func CloseTraceContext(ctx *TraceCtx)
- func End(ctx context.Context, err error) error
- func Error(ctx context.Context, err error) error
- func Func(handler func(http.ResponseWriter, *http.Request)) func(http.ResponseWriter, *http.Request)
- func GetActiveStats() []int16
- func GetClientId(r *http.Request) string
- func GetGID() uint64
- func GetMTrace(ctx context.Context) http.Header
- func GetTxid(ctx context.Context) int64
- func GetWhatapCookie(r *http.Request) (cookie *http.Cookie, exists bool)
- func HandlerFunc(handler func(http.ResponseWriter, *http.Request)) http.HandlerFunc
- func Init(m map[string]string)
- func RemoveTraceCtx(traceCtx *TraceCtx)
- func SetHeader(ctx context.Context, m map[string][]string)
- func SetParameter(ctx context.Context, m map[string][]string)
- func SetWhatapCookie(w http.ResponseWriter, cookie *http.Cookie)
- func Shutdown()
- func Start(ctx context.Context, name string) (context.Context, error)
- func StartWithContext(ctx context.Context, name string) (context.Context, error)
- func StartWithRequest(r *http.Request) (context.Context, error)
- func Step(ctx context.Context, title, message string, elapsed, value int) error
- func UpdateMtrace(traceCtx *TraceCtx, header http.Header)
- func UpdateMtraceWithContext(ctx context.Context, header http.Header)
- type TaskActiveStats
- type TraceCtx
- type WrapResponseWriter
Constants ¶
View Source
const ( PACKET_DB_MAX_SIZE = 4 * 1024 // max size of sql PACKET_SQL_MAX_SIZE = 32 * 1024 // max size of sql PACKET_HTTPC_MAX_SIZE = 32 * 1024 // max size of sql PACKET_MESSAGE_MAX_SIZE = 32 * 1024 // max size of message PACKET_METHOD_STACK_MAX_SIZE = 32 * 1024 // max size of message COMPILE_FILE_MAX_SIZE = 2 * 1024 // max size of filename HTTP_HOST_MAX_SIZE = 2 * 1024 // max size of host HTTP_URI_MAX_SIZE = 2 * 1024 // max size of uri HTTP_METHOD_MAX_SIZE = 256 // max size of method HTTP_IP_MAX_SIZE = 256 // max size of ip(request_addr) HTTP_UA_MAX_SIZE = 2 * 1024 // max size of user agent HTTP_REF_MAX_SIZE = 2 * 1024 // max size of referer HTTP_USERID_MAX_SIZE = 2 * 1024 // max size of userid HTTP_PARAM_MAX_COUNT = 20 HTTP_PARAM_KEY_MAX_SIZE = 255 // = 을 빼고 255 byte HTTP_PARAM_VALUE_MAX_SIZE = 256 HTTP_HEADER_MAX_COUNT = 20 HTTP_HEADER_KEY_MAX_SIZE = 255 // = 을 빼고 255 byte HTTP_HEADER_VALUE_MAX_SIZE = 256 SQL_PARAM_MAX_COUNT = 20 SQL_PARAM_VALUE_MAX_SIZE = 256 STEP_ERROR_MESSAGE_MAX_SIZE = 4 * 1024 )
View Source
const ( STAT_METHOD = 0 STAT_SQL = 1 STAT_HTTPC = 2 STAT_DBC = 3 STAT_SOCKET = 4 )
Variables ¶
View Source
var (
WHATAP_COOKIE_NAME = "WHATAP"
)
Functions ¶
func AddTraceCtx ¶
func AddTraceCtx(traceCtx *TraceCtx)
func CloseTraceContext ¶
func CloseTraceContext(ctx *TraceCtx)
func Func ¶
func Func(handler func(http.ResponseWriter, *http.Request)) func(http.ResponseWriter, *http.Request)
wrapping handler function, example : http.HandleFunc(func(http.ResponseWriter, *http.Request))
func GetActiveStats ¶
func GetActiveStats() []int16
func GetClientId ¶
func HandlerFunc ¶
func HandlerFunc(handler func(http.ResponseWriter, *http.Request)) http.HandlerFunc
wrapping type of http.HanderFunc, example : http.Handle(pattern, http.HandlerFunc)
func RemoveTraceCtx ¶
func RemoveTraceCtx(traceCtx *TraceCtx)
func RemoveTraceCtx(txid int64) *TraceCtx { if v := ctxTable.Remove(txid); v != nil { if tCtx, ok := v.(*TraceCtx); ok { return tCtx } } return nil }
func SetWhatapCookie ¶ added in v0.1.14
func SetWhatapCookie(w http.ResponseWriter, cookie *http.Cookie)
func StartWithContext ¶
func UpdateMtrace ¶
Types ¶
type TaskActiveStats ¶
type TaskActiveStats struct { }
func (*TaskActiveStats) Process ¶
func (this *TaskActiveStats) Process(now int64)
type TraceCtx ¶
type TraceCtx struct { Txid int64 Name string StartTime int64 // Pack Host string Uri string Ipaddr string UAgent string Ref string WClientId string HttpMethod string IsStaticContents string Status int32 MTid int64 MDepth int32 MCallerTxid int64 MCallee int64 MCallerSpec string MCallerUrl string MCallerPoidKey string TraceMtraceCallerValue string TraceMtracePoidValue string TraceMtraceSpecValue string ActiveSQL bool ActiveHTTPC bool ActiveDBC bool ActiveSocket bool }
func NewTraceCtx ¶
func NewTraceCtx() *TraceCtx
func PoolTraceContext ¶
func PoolTraceContext() *TraceCtx
func (*TraceCtx) GetElapsedTime ¶
type WrapResponseWriter ¶ added in v0.1.9
type WrapResponseWriter struct { http.ResponseWriter Status int }
func (*WrapResponseWriter) WriteHeader ¶ added in v0.1.9
func (l *WrapResponseWriter) WriteHeader(status int)
Click to show internal directories.
Click to hide internal directories.