func()

in server/resource/v1/history_resource.go [73:122]


func (r *HistoryResource) GetPollingData(context *restful.Context) {
	query := &model.PollingDetail{}
	sessionID := context.ReadQueryParameter(common.QueryParamSessionID)
	if sessionID != "" {
		query.SessionID = sessionID
	}
	sessionCroup := context.ReadQueryParameter(common.QueryParamSessionGroup)
	if sessionCroup != "" {
		query.SessionGroup = sessionCroup
	}
	revision := context.ReadQueryParameter(common.QueryParamRev)
	if revision != "" {
		query.Revision = revision
	}
	ip := context.ReadQueryParameter(common.QueryParamIP)
	if ip != "" {
		query.IP = ip
	}
	urlPath := context.ReadQueryParameter(common.QueryParamURLPath)
	if urlPath != "" {
		query.URLPath = urlPath
	}
	userAgent := context.ReadQueryParameter(common.QueryParamUserAgent)
	if userAgent != "" {
		query.UserAgent = userAgent
	}
	domain := ReadDomain(context.Ctx)
	if domain == "" {
		WriteErrResponse(context, config.ErrInternal, common.MsgDomainMustNotBeEmpty)
		return
	}
	query.Domain = domain
	query.Project = context.ReadPathParameter(common.PathParameterProject)
	records, err := datasource.GetBroker().GetTrackDao().GetPollingDetail(context.Ctx, query)
	if err != nil {
		if err == datasource.ErrRecordNotExists {
			WriteErrResponse(context, config.ErrRecordNotExists, err.Error())
			return
		}
		WriteErrResponse(context, config.ErrInternal, err.Error())
		return
	}
	resp := &model.PollingDataResponse{}
	resp.Data = records
	resp.Total = len(records)
	err = writeResponse(context, resp)
	if err != nil {
		openlog.Error(err.Error())
	}
}