Skip to content

Unexpected behaviur when trying to extract logs from log storage #1552

@carlosbloqhouse

Description

@carlosbloqhouse

Environment details

  • OS: Linux
  • Node.js version: v20.9.0
  • npm version: 10.1.0
  • @google-cloud/logging version:11.2.0

Steps to reproduce

In this issue i specify the line of codes that need to be modified to fix the issue.

  1. Have a view for a custom log storage
  2. Try to access it with getEntries or getEntriesStream, example of code snippet doing it:
const PROJECT_ID = 'exampleProjectId'; 
 const LOCATION = 'global';
const BUCKET_NAME = 'exampleBucketName';
const VIEW_NAME = '_AllLogs';

const logView = `projects/${PROJECT_ID}/locations/${LOCATION}/buckets/${BUCKET_NAME}/views/${VIEW_NAME}`;

console.log(`Searching log entries in bucket: ${LOG_BUCKET_NAME}`);

// Retrieve entries in pages
logging.getEntriesStream({
  maxResults: 10,
  filter: FILTER,
  resourceNames: [logView],
}).on('data', (data) => {
  console.log(data);
});
}

This scripts returns entries both for the project logs, and the current project. This is unexpected behavior, as expected behavior would be only to return logs specified by the call to getEntriesStream(). This makes it so you cant access only the logs for a concrete view without a lot of noise from the default bucket. In the code, we can see that the project default bucket is added to the query without your input, regardless you want it or not. It should be conditional, if resourceNames is provided, do not add the the default logs.

Error in getEntries:
https://github.com/googleapis/nodejs-logging/blob/9d1d480406c4d1526c8a7fafd9b18379c0c7fcea/src/index.ts#L593C18-L598C6

Error in getEntriesStream:
https://github.com/googleapis/nodejs-logging/blob/9d1d480406c4d1526c8a7fafd9b18379c0c7fcea/src/index.ts#L694C2-L695C66

Thanks!

Metadata

Metadata

Assignees

Labels

api: loggingIssues related to the googleapis/nodejs-logging API.priority: p3Desirable enhancement or fix. May not be included in next release.type: bugError or flaw in code with unintended results or allowing sub-optimal usage patterns.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions