@@ -23,6 +23,7 @@ import (
23
23
"github.com/smartcontractkit/chainlink/v2/core/services/job"
24
24
"github.com/smartcontractkit/chainlink/v2/core/services/ocr3/promwrapper"
25
25
"github.com/smartcontractkit/chainlink/v2/core/services/streams"
26
+ "github.com/smartcontractkit/chainlink/v2/core/services/telemetry"
26
27
)
27
28
28
29
var _ job.ServiceCtx = & delegate {}
@@ -39,28 +40,31 @@ type delegate struct {
39
40
40
41
src datastreamsllo.ShouldRetireCache
41
42
ds datastreamsllo.DataSource
42
- telem services. Service
43
+ telem TelemeterService
43
44
44
45
oracles []Closer
45
46
}
46
47
47
48
type DelegateConfig struct {
48
- Logger logger.Logger
49
- DataSource sqlutil.DataSource
50
- Runner streams.Runner
51
- Registry Registry
52
- JobName null.String
53
- CaptureEATelemetry bool
49
+ Logger logger.Logger
50
+ DataSource sqlutil.DataSource
51
+ Runner streams.Runner
52
+ Registry Registry
53
+ JobName null.String
54
+ CaptureEATelemetry bool
55
+ CaptureObservationTelemetry bool
56
+ CaptureOutcomeTelemetry bool
57
+ CaptureReportTelemetry bool
54
58
55
59
// LLO
56
- ChannelDefinitionCache llotypes.ChannelDefinitionCache
57
- ReportingPluginConfig datastreamsllo.Config
58
- RetirementReportCache RetirementReportCache
59
- RetirementReportCodec datastreamsllo.RetirementReportCodec
60
- ShouldRetireCache datastreamsllo.ShouldRetireCache
61
- EAMonitoringEndpoint ocrcommontypes. MonitoringEndpoint
62
- DonID uint32
63
- ChainID string
60
+ ChannelDefinitionCache llotypes.ChannelDefinitionCache
61
+ ReportingPluginConfig datastreamsllo.Config
62
+ RetirementReportCache RetirementReportCache
63
+ RetirementReportCodec datastreamsllo.RetirementReportCodec
64
+ ShouldRetireCache datastreamsllo.ShouldRetireCache
65
+ PluginMonitoringEndpoint telemetry. MultitypeMonitoringEndpoint
66
+ DonID uint32
67
+ ChainID string
64
68
65
69
// OCR3
66
70
TraceLogging bool
@@ -102,12 +106,15 @@ func NewDelegate(cfg DelegateConfig) (job.ServiceCtx, error) {
102
106
}
103
107
reportCodecs := NewReportCodecs (codecLggr , cfg .DonID )
104
108
105
- var t TelemeterService
106
- if cfg .CaptureEATelemetry {
107
- t = NewTelemeterService (lggr , cfg .EAMonitoringEndpoint , cfg .DonID )
108
- } else {
109
- t = NullTelemeter
110
- }
109
+ t := NewTelemeterService (TelemeterParams {
110
+ Logger : lggr ,
111
+ MonitoringEndpoint : cfg .PluginMonitoringEndpoint ,
112
+ DonID : cfg .DonID ,
113
+ CaptureEATelemetry : cfg .CaptureEATelemetry ,
114
+ CaptureObservationTelemetry : cfg .CaptureObservationTelemetry ,
115
+ CaptureOutcomeTelemetry : cfg .CaptureOutcomeTelemetry ,
116
+ CaptureReportTelemetry : cfg .CaptureReportTelemetry ,
117
+ })
111
118
ds := newDataSource (logger .Named (lggr , "DataSource" ), cfg .Registry , t )
112
119
113
120
return & delegate {services.StateMachine {}, cfg , reportCodecs , cfg .ShouldRetireCache , ds , t , []Closer {}}, nil
@@ -155,15 +162,20 @@ func (d *delegate) Start(ctx context.Context) error {
155
162
OnchainKeyring : d .cfg .OnchainKeyring ,
156
163
ReportingPluginFactory : promwrapper .NewReportingPluginFactory (
157
164
datastreamsllo .NewPluginFactory (
158
- d .cfg .ReportingPluginConfig ,
159
- psrrc ,
160
- d .src ,
161
- d .cfg .RetirementReportCodec ,
162
- d .cfg .ChannelDefinitionCache ,
163
- d .ds ,
164
- logger .Named (lggr , "ReportingPlugin" ),
165
- llo.EVMOnchainConfigCodec {},
166
- d .reportCodecs ,
165
+ datastreamsllo.PluginFactoryParams {
166
+ Config : d .cfg .ReportingPluginConfig ,
167
+ PredecessorRetirementReportCache : psrrc ,
168
+ ShouldRetireCache : d .src ,
169
+ RetirementReportCodec : d .cfg .RetirementReportCodec ,
170
+ ChannelDefinitionCache : d .cfg .ChannelDefinitionCache ,
171
+ DataSource : d .ds ,
172
+ Logger : logger .Named (lggr , "ReportingPlugin" ),
173
+ OnchainConfigCodec : llo.EVMOnchainConfigCodec {},
174
+ ReportCodecs : d .reportCodecs ,
175
+ OutcomeTelemetryCh : d .telem .GetOutcomeTelemetryCh (),
176
+ ReportTelemetryCh : d .telem .GetReportTelemetryCh (),
177
+ DonID : d .cfg .DonID ,
178
+ },
167
179
),
168
180
lggr ,
169
181
d .cfg .ChainID ,
0 commit comments