當前位置: 首頁>>代碼示例>>Golang>>正文


Golang logger.Logger類代碼示例

本文整理匯總了Golang中bosh/logger.Logger的典型用法代碼示例。如果您正苦於以下問題:Golang Logger類的具體用法?Golang Logger怎麽用?Golang Logger使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


在下文中一共展示了Logger類的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。

示例1: PerformHandlerWithJSON

func PerformHandlerWithJSON(rawJSON []byte, handler HandlerFunc, maxResponseLength int, logger boshlog.Logger) ([]byte, Request, error) {
	var request Request

	err := json.Unmarshal(rawJSON, &request)
	if err != nil {
		return []byte{}, request, bosherr.WrapError(err, "Unmarshalling JSON payload")
	}

	request.Payload = rawJSON

	logger.Info(mbusHandlerLogTag, "Received request with action %s", request.Method)
	logger.DebugWithDetails(mbusHandlerLogTag, "Payload", request.Payload)

	response := handler(request)
	if response == nil {
		logger.Info(mbusHandlerLogTag, "Nil response returned from handler")
		return []byte{}, request, nil
	}

	respJSON, err := marshalResponse(response, maxResponseLength, logger)
	if err != nil {
		return respJSON, request, err
	}

	logger.Info(mbusHandlerLogTag, "Responding")
	logger.DebugWithDetails(mbusHandlerLogTag, "Payload", respJSON)

	return respJSON, request, nil
}
開發者ID:Bosh-for-Cpi,項目名稱:bosh-2605,代碼行數:29,代碼來源:perform_handler_with_json.go

示例2: BuildErrorWithJSON

func BuildErrorWithJSON(msg string, logger boshlog.Logger) ([]byte, error) {
	response := NewExceptionResponse(msg)

	respJSON, err := json.Marshal(response)
	if err != nil {
		return respJSON, bosherr.WrapError(err, "Marshalling JSON")
	}

	logger.Info(mbusHandlerLogTag, "Building error", msg)

	return respJSON, nil
}
開發者ID:Jane4PKU,項目名稱:bosh,代碼行數:12,代碼來源:perform_handler_with_json.go

示例3: PerformHandlerWithJSON

func PerformHandlerWithJSON(rawJSON []byte, handler HandlerFunc, logger boshlog.Logger) (moreJSON []byte, request Request, err error) {
	err = json.Unmarshal(rawJSON, &request)
	if err != nil {
		err = bosherr.WrapError(err, "Unmarshalling JSON payload")
		return
	}
	request.Payload = rawJSON

	logger.Info("MBus Handler", "Received request with action %s", request.Method)
	logger.DebugWithDetails("MBus Handler", "Payload", request.Payload)

	response := handler(request)

	if response == nil {
		moreJSON = []byte{}
		return
	}

	moreJSON, err = json.Marshal(response)
	if err != nil {
		err = bosherr.WrapError(err, "Marshalling JSON response")
		return
	}

	logger.Info("MBus Handler", "Responding")
	logger.DebugWithDetails("MBus Handler", "Payload", moreJSON)

	return
}
開發者ID:punalpatel,項目名稱:bosh,代碼行數:29,代碼來源:perform_handler_with_json.go

示例4: marshalResponse

func marshalResponse(response Response, maxResponseLength int, logger boshlog.Logger) ([]byte, error) {
	respJSON, err := json.Marshal(response)
	if err != nil {
		logger.Error(mbusHandlerLogTag, "Failed to marshal response: %s", err.Error())
		return respJSON, bosherr.WrapError(err, "Marshalling JSON response")
	}

	if maxResponseLength == UnlimitedResponseLength {
		return respJSON, nil
	}

	if len(respJSON) > maxResponseLength {
		respJSON, err = json.Marshal(response.Shorten())
		if err != nil {
			logger.Error(mbusHandlerLogTag, "Failed to marshal response: %s", err.Error())
			return respJSON, bosherr.WrapError(err, "Marshalling JSON response")
		}
	}

	if len(respJSON) > maxResponseLength {
		respJSON, err = BuildErrorWithJSON(responseMaxLengthErrMsg, logger)
		if err != nil {
			logger.Error(mbusHandlerLogTag, "Failed to build 'max length exceeded' response: %s", err.Error())
			return respJSON, bosherr.WrapError(err, "Building error")
		}
	}

	return respJSON, nil
}
開發者ID:Bosh-for-Cpi,項目名稱:bosh-2605,代碼行數:29,代碼來源:perform_handler_with_json.go


注:本文中的bosh/logger.Logger類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。