func HttpStartStop(msg *events.Envelope) Event { httpStartStop := msg.GetHttpStartStop() fields := logrus.Fields{ "origin": msg.GetOrigin(), "cf_app_id": httpStartStop.GetApplicationId(), "content_length": httpStartStop.GetContentLength(), "instance_id": httpStartStop.GetInstanceId(), "instance_index": httpStartStop.GetInstanceIndex(), "method": httpStartStop.GetMethod(), "parent_request_id": httpStartStop.GetParentRequestId(), "peer_type": httpStartStop.GetPeerType(), "remote_addr": httpStartStop.GetRemoteAddress(), "request_id": httpStartStop.GetRequestId(), "start_timestamp": httpStartStop.GetStartTimestamp(), "status_code": httpStartStop.GetStatusCode(), "stop_timestamp": httpStartStop.GetStopTimestamp(), "uri": httpStartStop.GetUri(), "user_agent": httpStartStop.GetUserAgent(), "duration_ms": (((httpStartStop.GetStopTimestamp() - httpStartStop.GetStartTimestamp()) / 1000) / 1000), } return Event{ Fields: fields, Msg: "", Type: msg.GetEventType().String(), } }
func (p *HttpStartStopProcessor) Process(e *events.Envelope) []metrics.Metric { processedMetrics := make([]metrics.Metric, 4) httpStartStopEvent := e.GetHttpStartStop() processedMetrics[0] = metrics.Metric(p.ProcessHttpStartStopResponseTime(httpStartStopEvent)) processedMetrics[1] = metrics.Metric(p.ProcessHttpStartStopStatusCodeCount(httpStartStopEvent)) processedMetrics[2] = metrics.Metric(p.ProcessHttpStartStopHttpErrorCount(httpStartStopEvent)) processedMetrics[3] = metrics.Metric(p.ProcessHttpStartStopHttpRequestCount(httpStartStopEvent)) return processedMetrics }