Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions .pyroscope.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
source_code:
mappings:
- path:
- prefix: $GOROOT/src
language: go
source:
github:
owner: golang
repo: go
ref: go1.24.8
path: src
140 changes: 140 additions & 0 deletions examples/language-sdk-instrumentation/java/rideshare/.pyroscope.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,140 @@
source_code:
mappings:
- function_name:
- prefix: org/example/rideshare
language: java
source:
local:
path: src/main/java
- function_name:
- prefix: agent
language: java
source:
github:
owner: microsoft
repo: ai-agents-for-beginners
ref: 2.1.2
path: src/main/java
- function_name:
- prefix: org/jetbrains
language: java
source:
github:
owner: doctrine
repo: annotations
ref: '13.0'
path: src/main/java
- function_name:
- prefix: annotations
language: java
source:
github:
owner: doctrine
repo: annotations
ref: 26.0.2
path: src/main/java
- function_name:
- prefix: com/fasterxml/jackson/annotation
- prefix: javax/xml/datatype
- prefix: javax/xml/namespace
- prefix: javax/xml/parsers
- prefix: javax/xml/transform
- prefix: org/w3c/dom
- prefix: org/xml/sax
language: java
source:
github:
owner: FasterXML
repo: jackson
ref: 2.13.3
path: src/main/java
- function_name:
- prefix: com/fasterxml/jackson/core
language: java
source:
github:
owner: FasterXML
repo: jackson-core
ref: 2.13.3
path: src/main/java
- function_name:
- prefix: org/apache/logging/log4j
- prefix: org/osgi/framework
- prefix: org/slf4j/spi
- prefix: sun/reflect
language: java
source:
github:
owner: log4js-node
repo: log4js-node
ref: 2.17.2
path: src/main/java
- function_name:
- prefix: org/yaml/snakeyaml
language: java
source:
github:
owner: snakeyaml
repo: snakeyaml
ref: '1.30'
path: src/main/java
- function_name:
- prefix: org/springframework
language: java
source:
github:
owner: spring-projects
repo: spring-framework
ref: 5.3.20
path: spring-aop/src/main/java
- function_name:
- prefix: org/springframework/boot
language: java
source:
github:
owner: spring-projects
repo: spring-boot
ref: 2.7.0
path: spring-boot-project/spring-boot/src/main/java
- function_name:
- prefix: javax/annotation/security
- prefix: javax/crypto/spec
- prefix: javax/ejb
- prefix: javax/el
- prefix: javax/imageio
- prefix: javax/mail/internet
- prefix: javax/management/loading
- prefix: javax/management/modelmbean
- prefix: javax/management/openmbean
- prefix: javax/naming/directory
- prefix: javax/naming/ldap
- prefix: javax/naming/spi
- prefix: javax/net/ssl
- prefix: javax/persistence
- prefix: javax/security/auth
- prefix: javax/security/cert
- prefix: javax/servlet/annotation
- prefix: javax/servlet/descriptor
- prefix: javax/servlet/http
- prefix: javax/servlet/resources
- prefix: javax/sql
- prefix: javax/websocket/server
- prefix: javax/wsdl/extensions
- prefix: javax/wsdl/factory
- prefix: javax/wsdl/xml
- prefix: javax/xml/rpc
- prefix: javax/xml/ws
- prefix: org/apache/catalina
- prefix: org/apache/coyote/http11/upgrade
- prefix: org/apache/el
- prefix: org/apache/juli/logging
- prefix: org/apache/naming
- prefix: org/apache/tomcat
- prefix: org/ietf/jgss
language: java
source:
github:
owner: apache
repo: tomcat
ref: 9.0.63
path: java
32 changes: 28 additions & 4 deletions pkg/frontend/vcs/client/github.go
Original file line number Diff line number Diff line change
Expand Up @@ -44,16 +44,27 @@ func (gh *githubClient) GetCommit(ctx context.Context, owner, repo, ref string)
var githubErr *github.ErrorResponse
if errors.As(err, &githubErr) {
code := connectgrpc.HTTPToCode(int32(githubErr.Response.StatusCode))
sp.SetTag("error", true)
sp.SetTag("error.message", err.Error())
sp.SetTag("http.status_code", githubErr.Response.StatusCode)
return nil, connect.NewError(code, err)
}
sp.SetTag("error", true)
sp.SetTag("error.message", err.Error())
return nil, err
}
// error if message is nil
if commit.Commit == nil || commit.Commit.Message == nil {
return nil, connect.NewError(connect.CodeInternal, errors.New("commit contains no message"))
err := connect.NewError(connect.CodeInternal, errors.New("commit contains no message"))
sp.SetTag("error", true)
sp.SetTag("error.message", err.Error())
return nil, err
}
if commit.Commit == nil || commit.Commit.Author == nil || commit.Commit.Author.Date == nil {
return nil, connect.NewError(connect.CodeInternal, errors.New("commit contains no date"))
err := connect.NewError(connect.CodeInternal, errors.New("commit contains no date"))
sp.SetTag("error", true)
sp.SetTag("error.message", err.Error())
return nil, err
}

commitInfo := &vcsv1.CommitInfo{
Expand Down Expand Up @@ -89,22 +100,35 @@ func (gh *githubClient) GetFile(ctx context.Context, req FileRequest) (File, err
if err != nil {
var githubErr *github.ErrorResponse
if errors.As(err, &githubErr) && githubErr.Response.StatusCode == http.StatusNotFound {
return File{}, fmt.Errorf("%w: %s", ErrNotFound, err)
err := fmt.Errorf("%w: %s", ErrNotFound, err)
sp.SetTag("error", true)
sp.SetTag("error.message", err.Error())
sp.SetTag("http.status_code", http.StatusNotFound)
return File{}, err
}
sp.SetTag("error", true)
sp.SetTag("error.message", err.Error())
return File{}, err
}

if file == nil {
sp.SetTag("error", true)
sp.SetTag("error.message", ErrNotFound.Error())
return File{}, ErrNotFound
}

// We only support files retrieval.
if file.Type != nil && *file.Type != "file" {
return File{}, connect.NewError(connect.CodeInvalidArgument, errors.New("path is not a file"))
err := connect.NewError(connect.CodeInvalidArgument, errors.New("path is not a file"))
sp.SetTag("error", true)
sp.SetTag("error.message", err.Error())
return File{}, err
}

content, err := file.GetContent()
if err != nil {
sp.SetTag("error", true)
sp.SetTag("error.message", err.Error())
return File{}, err
}

Expand Down
Loading
Loading