// ListLogEntries lists log entries. Use this method to retrieve log entries from Cloud // Logging. For ways to export log entries, see // [Exporting Logs](/logging/docs/export). func (c *Client) ListLogEntries(ctx context.Context, req *loggingpb.ListLogEntriesRequest) *LogEntryIterator { md, _ := metadata.FromContext(ctx) ctx = metadata.NewContext(ctx, metadata.Join(md, c.metadata)) it := &LogEntryIterator{} fetch := func(pageSize int, pageToken string) (string, error) { var resp *loggingpb.ListLogEntriesResponse req.PageToken = pageToken if pageSize > math.MaxInt32 { req.PageSize = math.MaxInt32 } else { req.PageSize = int32(pageSize) } err := gax.Invoke(ctx, func(ctx context.Context) error { var err error resp, err = c.client.ListLogEntries(ctx, req) return err }, c.CallOptions.ListLogEntries...) if err != nil { return "", err } it.items = append(it.items, resp.Entries...) return resp.NextPageToken, nil } bufLen := func() int { return len(it.items) } takeBuf := func() interface{} { b := it.items it.items = nil return b } it.pageInfo, it.nextFunc = iterator.NewPageInfo(fetch, bufLen, takeBuf) return it }
// ListLogEntries lists log entries. Use this method to retrieve log entries from Cloud // Logging. For ways to export log entries, see // [Exporting Logs](/logging/docs/export). func (c *Client) ListLogEntries(ctx context.Context, req *loggingpb.ListLogEntriesRequest) *LogEntryIterator { ctx = metadata.NewContext(ctx, c.metadata) it := &LogEntryIterator{} it.apiCall = func() error { var resp *loggingpb.ListLogEntriesResponse err := gax.Invoke(ctx, func(ctx context.Context) error { var err error req.PageToken = it.nextPageToken req.PageSize = it.pageSize resp, err = c.client.ListLogEntries(ctx, req) return err }, c.CallOptions.ListLogEntries...) if err != nil { return err } if resp.NextPageToken == "" { it.atLastPage = true } it.nextPageToken = resp.NextPageToken it.items = resp.Entries return nil } return it }
func (o orderBy) set(r *logpb.ListLogEntriesRequest) { r.OrderBy = string(o) }
func (newestFirst) set(r *logpb.ListLogEntriesRequest) { r.OrderBy = "timestamp desc" }
func (f filter) set(r *logpb.ListLogEntriesRequest) { r.Filter = string(f) }
func (p projectIDs) set(r *logpb.ListLogEntriesRequest) { r.ProjectIds = []string(p) }