-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add Debug RPC Service to Prysm (#5666)
* adding in proto debug service * builds * debug proto * gaz ignore Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
- Loading branch information
1 parent
d0e30ce
commit 5ed72d4
Showing
2 changed files
with
83 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
load("@rules_proto//proto:defs.bzl", "proto_library") | ||
|
||
# gazelle:ignore | ||
load("@io_bazel_rules_go//go:def.bzl", "go_library") | ||
load("@io_bazel_rules_go//proto:def.bzl", "go_proto_library") | ||
|
||
go_proto_library( | ||
name = "go_grpc_gateway_library", | ||
compilers = [ | ||
"@io_bazel_rules_go//proto:go_grpc", | ||
"@grpc_ecosystem_grpc_gateway//protoc-gen-grpc-gateway:go_gen_grpc_gateway", | ||
], | ||
importpath = "github.com/prysmaticlabs/prysm/proto/beacon/rpc/v1_gateway", | ||
proto = ":v1_proto", | ||
visibility = ["//visibility:public"], | ||
deps = [ | ||
"//proto/beacon/p2p/v1:go_default_library", | ||
"@go_googleapis//google/api:annotations_go_proto", | ||
"@com_github_golang_protobuf//descriptor:go_default_library", | ||
], | ||
) | ||
|
||
go_proto_library( | ||
name = "v1_go_proto", | ||
compilers = ["@io_bazel_rules_go//proto:go_grpc"], | ||
importpath = "github.com/prysmaticlabs/prysm/proto/beacon/rpc/v1", | ||
proto = ":v1_proto", | ||
visibility = ["//visibility:public"], | ||
deps = [ | ||
"//proto/beacon/p2p/v1:go_default_library", | ||
"@go_googleapis//google/api:annotations_go_proto", | ||
], | ||
) | ||
|
||
go_library( | ||
name = "go_default_library", | ||
embed = [":v1_go_proto"], | ||
importpath = "github.com/prysmaticlabs/prysm/proto/beacon/rpc/v1", | ||
visibility = ["//visibility:public"], | ||
) | ||
|
||
proto_library( | ||
name = "v1_proto", | ||
srcs = ["debug.proto"], | ||
visibility = ["//visibility:public"], | ||
deps = [ | ||
"//proto/beacon/p2p/v1:v1_proto", | ||
"@go_googleapis//google/api:annotations_proto", | ||
], | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
syntax = "proto3"; | ||
|
||
package ethereum.beacon.rpc.v1; | ||
|
||
import "proto/beacon/p2p/v1/types.proto"; | ||
import "google/api/annotations.proto"; | ||
|
||
// Debug service API | ||
// | ||
// The debug service in Prysm provides API access to various utilities | ||
// for debugging the beacon node's functionality at runtime, such as being able | ||
// to retrieve the beacon state by block root or state root from the node directly. | ||
service Debug { | ||
// Returns a beacon state by filter criteria from the beacon node. | ||
rpc GetBeaconState(BeaconStateRequest) returns (ethereum.beacon.p2p.v1.BeaconState) { | ||
option (google.api.http) = { | ||
get: "/eth/v1alpha1/beacon/state" | ||
}; | ||
} | ||
} | ||
|
||
message BeaconStateRequest { | ||
oneof query_filter { | ||
// The slot corresponding to a desired beacon state. | ||
uint64 slot = 1; | ||
|
||
// The block root corresponding to a desired beacon state. | ||
bytes block_root = 2; | ||
|
||
// The state root corresponding to a desired beacon state. | ||
bytes state_root = 3; | ||
} | ||
} |