@@ -5,14 +5,15 @@ import (
5
5
"errors"
6
6
"fmt"
7
7
"github.com/DataDog/datadog-api-client-go/v2/api/datadog"
8
- "github.com/DataDog/datadog-api-client-go/v2/api/datadogV1"
8
+ "github.com/DataDog/datadog-api-client-go/v2/api/datadogV2"
9
+ "strings"
9
10
)
10
11
11
12
var ErrAPISenderFailed = errors .New ("API sender failed to send the event" )
12
13
13
14
type APISender struct {
14
15
apiClient * datadog.APIClient
15
- eventsAPI * datadogV1. EventsApi
16
+ logsAPI * datadogV2. LogsApi
16
17
17
18
apiKey string
18
19
apiSite string
@@ -23,7 +24,7 @@ func NewAPISender(apiKey string, apiSite string) (*APISender, error) {
23
24
24
25
return & APISender {
25
26
apiClient : apiClient ,
26
- eventsAPI : datadogV1 . NewEventsApi (apiClient ),
27
+ logsAPI : datadogV2 . NewLogsApi (apiClient ),
27
28
28
29
apiKey : apiKey ,
29
30
apiSite : apiSite ,
@@ -47,18 +48,16 @@ func (sender *APISender) SendEvent(ctx context.Context, event *Event) (string, e
47
48
"site" : sender .apiSite ,
48
49
})
49
50
50
- response , _ , err := sender .eventsAPI .CreateEvent (ctx , datadogV1.EventCreateRequest {
51
- Title : event .Title ,
52
- Text : event .Text ,
53
- Tags : event .Tags ,
51
+ _ , _ , err := sender .logsAPI .SubmitLog (ctx , []datadogV2.HTTPLogItem {
52
+ {
53
+ Ddsource : datadog .PtrString ("Cirrus Webhooks Server" ),
54
+ Ddtags : datadog .PtrString (strings .Join (event .Tags , "," )),
55
+ Message : event .Text ,
56
+ },
54
57
})
55
58
if err != nil {
56
59
return "" , fmt .Errorf ("%w: %v" , ErrAPISenderFailed , err )
57
60
}
58
61
59
- if response .Event == nil {
60
- return "" , fmt .Errorf ("%w: %v" , ErrAPISenderFailed , "response.Event is nil" )
61
- }
62
-
63
- return fmt .Sprintf ("DataDog event id: %v" , response .Event .Id ), nil
62
+ return "" , nil
64
63
}
0 commit comments