in pkg/plugin/cloudlogging/client.go [256:290]
func (c *Client) TestConnection(ctx context.Context, projectID string) error {
start := time.Now()
listCtx, cancel := context.WithTimeout(ctx, time.Duration(testConnectionTimeout))
defer func() {
cancel()
log.DefaultLogger.Debug("Finished testConnection", "duration", time.Since(start).String())
}()
it := c.lClient.ListLogEntries(listCtx, &loggingpb.ListLogEntriesRequest{
ResourceNames: []string{legacyProjectResourceName(projectID)},
PageSize: 1,
})
if listCtx.Err() != nil {
return errors.New("list entries: timeout")
}
entry, err := it.Next()
if err == iterator.Done {
return errors.New("no entries")
}
if err == context.DeadlineExceeded {
return errors.New("list entries: timeout")
}
if err != nil {
return fmt.Errorf("list entries: %w", err)
}
if entry == nil {
return errors.New("no entries")
}
return nil
}