diff --git a/client.go b/client.go index 979dfd3..5a3497b 100644 --- a/client.go +++ b/client.go @@ -543,6 +543,11 @@ func (client *Client) Capture(packet *Packet, captureTags map[string]string) (ev return } + if packet == nil { + close(ch) + return + } + if client.shouldExcludeErr(packet.Message) { return } @@ -661,6 +666,10 @@ func (client *Client) CaptureError(err error, tags map[string]string, interfaces return "" } + if err == nil { + return "" + } + if client.shouldExcludeErr(err.Error()) { return "" } diff --git a/client_test.go b/client_test.go index 5f20a8d..7db0698 100644 --- a/client_test.go +++ b/client_test.go @@ -255,3 +255,24 @@ func TestNilClient(t *testing.T) { t.Error("expected nil err:", err) } } + +func TestCaptureNil(t *testing.T) { + var client *Client = DefaultClient + eventID, ch := client.Capture(nil, nil) + if eventID != "" { + t.Error("expected empty eventID:", eventID) + } + // wait on ch: no send should succeed immediately + err := <-ch + if err != nil { + t.Error("expected nil err:", err) + } +} + +func TestCaptureNilError(t *testing.T) { + var client *Client = DefaultClient + eventID := client.CaptureError(nil, nil) + if eventID != "" { + t.Error("expected empty eventID:", eventID) + } +}