Compare commits
12 Commits
d633789438
...
66cccb3305
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
66cccb3305 | ||
|
|
43414057b5 | ||
|
|
b8272edc40 | ||
|
|
ad39fba64f | ||
|
|
5b165bfc32 | ||
|
|
b2cf9cab6b | ||
|
|
bda373ca1f | ||
|
|
181c09916f | ||
|
|
b0a512466d | ||
|
|
0c22adf19a | ||
|
|
bf5ddc917c | ||
|
|
cf4b0c1bbf |
Submodule cybertron-symbolicator updated: 75a0c91942...de97308949
Submodule cybertron-symbolicator-react-native updated: 3b8d60db23...ca4bdfe8af
@@ -77,8 +77,6 @@ func (el *ElasticSearchClient) SearchDocuments(searchRequest string, fields []st
|
||||
}
|
||||
}
|
||||
|
||||
log.Printf("%s", aggregations)
|
||||
|
||||
return results, aggregations, res.Hits.Total.Value, nil
|
||||
}
|
||||
|
||||
@@ -99,8 +97,11 @@ func (el *ElasticSearchClient) GetStackTraceByErrorHash(errorHash string, projec
|
||||
log.Printf("Error getting the response: %s", err)
|
||||
}
|
||||
filteredDoc := map[string]interface{}{}
|
||||
stackFrame, ok := response[0]["stack_trace"].([]string)
|
||||
if ok {
|
||||
if len(response) > 0 {
|
||||
stackFrame, ok := response[0]["stack_trace"]
|
||||
if !ok {
|
||||
log.Printf("Error getting the stack trace")
|
||||
}
|
||||
filteredDoc["stack_trace"] = stackFrame
|
||||
}
|
||||
|
||||
|
||||
@@ -108,6 +108,21 @@ func getSignificantStack(trace symbolicator.SymbolicatedStackTrace) string {
|
||||
return ""
|
||||
}
|
||||
|
||||
func (ep *ErrorProcessor) getCacheStack(payload Exception, hash string) ([]symbolicator.SymbolicatedFrame, error) {
|
||||
cachedStack, total, err := ep.elasticSearchClient.GetStackTraceByErrorHash(hash, payload.ProjectId)
|
||||
var frames []symbolicator.SymbolicatedFrame
|
||||
if total > 0 {
|
||||
frameBytes, marshalErr := json.Marshal(cachedStack["stack_trace"])
|
||||
if marshalErr != nil {
|
||||
ep.logger.Error("unable to serilize cache frame", zap.Error(marshalErr))
|
||||
} else {
|
||||
err = json.Unmarshal(frameBytes, &frames)
|
||||
|
||||
}
|
||||
}
|
||||
return frames, err
|
||||
}
|
||||
|
||||
func (ep *ErrorProcessor) ProcessError(error []byte) {
|
||||
ep.logger.Info("processing error in consumer")
|
||||
var payload Exception
|
||||
@@ -127,7 +142,15 @@ func (ep *ErrorProcessor) ProcessError(error []byte) {
|
||||
ep.logger.Error("error in unmarshalling exception", zap.Error(err))
|
||||
return
|
||||
}
|
||||
extraMap := payload.Extra.(map[string]interface{})
|
||||
if payload.Extra == nil {
|
||||
ep.logger.Error("payload extra is nil")
|
||||
return
|
||||
}
|
||||
extraMap, conversionOk := payload.Extra.(map[string]interface{})
|
||||
if !conversionOk {
|
||||
ep.logger.Error("error in unmarshalling exception")
|
||||
return
|
||||
}
|
||||
releaseId, ok := extraMap["release_id"].(string)
|
||||
if !ok {
|
||||
ep.logger.Error("Release id is not found")
|
||||
@@ -170,15 +193,12 @@ func (ep *ErrorProcessor) ProcessError(error []byte) {
|
||||
|
||||
//make md5 hash of error
|
||||
hash := encoder.Md5Encode(string(frames) + payload.Value)
|
||||
|
||||
cachedStack, total, err := ep.elasticSearchClient.GetStackTraceByErrorHash(hash, payload.ProjectId)
|
||||
var output symbolicator.SymbolicatedStackTrace
|
||||
//cache stack processing
|
||||
cachedStackTrace, err := ep.getCacheStack(payload, hash)
|
||||
|
||||
if total > 0 && err == nil {
|
||||
frames, ok := cachedStack["stack_trace"].([]symbolicator.SymbolicatedFrame)
|
||||
if ok {
|
||||
output.Frames = frames
|
||||
}
|
||||
if len(cachedStackTrace) > 0 {
|
||||
output.Frames = cachedStackTrace
|
||||
} else {
|
||||
command := &symbolicator.Command{
|
||||
Cmd: symbolicatorCommand,
|
||||
|
||||
@@ -41,8 +41,8 @@ func (sm *SourceMapService) downloadFromS3(key string, bucket string, filePath s
|
||||
Key: &key,
|
||||
})
|
||||
if err != nil {
|
||||
sm.logger.Error("printing key %s and bucket %s from s3 err: ", zap.String("key", key), zap.String("bucket", bucket), zap.String("filePath", filePath))
|
||||
sm.logger.Info("Error downloading from S3:", zap.Error(err))
|
||||
//sm.logger.Info("printing key %s and bucket %s from s3 err: ", zap.String("key", key), zap.String("bucket", bucket), zap.String("filePath", filePath))
|
||||
//sm.logger.Info("Error downloading from S3:", zap.Error(err))
|
||||
return err
|
||||
}
|
||||
//defer result.Body.Close()
|
||||
|
||||
Reference in New Issue
Block a user