Skip to content

Commit

Permalink
WIP beholder capabilities
Browse files Browse the repository at this point in the history
  • Loading branch information
ferglor committed Sep 20, 2024
1 parent 66bced9 commit 4de86b7
Show file tree
Hide file tree
Showing 4 changed files with 265 additions and 0 deletions.
55 changes: 55 additions & 0 deletions core/capabilities/beholder/client.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
package beholder

import (
"context"
"log"
"time"

"google.golang.org/protobuf/proto"

"github.com/smartcontractkit/chainlink-common/pkg/beholder"
"github.com/smartcontractkit/chainlink/v2/core/capabilities/beholder/pb"
)

func init() {

}

func Emit(participant, role, model, component, event string) error {
beholderConfig := beholder.TestDefaultConfig()
// Bootstrap Beholder Client
client, err := beholder.NewClient(beholderConfig)
if err != nil {
log.Println(err.Error())
}

beholder.SetClient(client)

tm := time.Now().Format("2006-01-02 15:04:05")

// Define a custom protobuf payload to emit
payload := &pb.Event{
Participant: participant,
Role: role,
Model: model,
Component: component,
Event: event,
Timestamp: tm,
}
payloadBytes, err := proto.Marshal(payload)
if err != nil {
return err
}

return beholder.GetEmitter().Emit(context.Background(), payloadBytes,
"beholder_data_schema", "/event/versions/1", // required
"beholder_data_type", "custom_message",
"package_name", "capabilities_test",
"participant", participant,
"role", role,
"model", model,
"component", component,
"event", event,
"timestamp", tm,
)
}
193 changes: 193 additions & 0 deletions core/capabilities/beholder/pb/event.pb.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

14 changes: 14 additions & 0 deletions core/capabilities/beholder/pb/event.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
syntax = "proto3";

option go_package = "github.com/smartcontractkit/chainlink/core/capabilities/beholder/pb";

package pb;

message Event {
string participant=1;
string role=2;
string model=3;
string component=4;
string event=5;
string timestamp=6;
}
3 changes: 3 additions & 0 deletions core/capabilities/beholder/pb/generate.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
//go:generate protoc --go_out=. --go_opt=paths=source_relative --go-grpc_out=. --go-grpc_opt=paths=source_relative event.proto

package pb

0 comments on commit 4de86b7

Please sign in to comment.