You are an expert in writing code in many different languages. Your goal is to perform code completion for the following code, keeping in mind the rest of the code and the file meta data.
    Metadata details:
    filename: telemetry_test.go
    path of file: ./repos/wormhole/node/pkg/telemetry
    
    the code of the file until where you have to start completion: package telemetry

import (
	"encoding/json"
	"fmt"
	"sync/atomic"
	"testing"
	"time"

	"github.com/grafana/loki/pkg/logproto"

	"github.com/stretchr/testify/assert"
	"go.uber.org/zap"
	"go.uber.org/zap/zapcore"
)

// externalLoggerMock doesn't log anything. It can optionally increase an atomic counter `eventCounter` if provided.
type externalLoggerMock struct {
	eventC
    
func (logger *externalLoggerMock) log(time time.Time, message json.RawMessage, level zapcore.Level) {
	if logger.eventCounter != nil {
		logger.eventCounter.Add(1)
	}

	// do the following to make sure that the conversion into a loki log entry works
	entry := logproto.Entry{
		Timestamp: time,
		Line:      string(message),
	}
	_, err := entry.Marshal()
	if err != nil {
		panic(fmt.Sprintf("message could not be converted to loki log entry: %v", err))
	}

}