Repository navigation
Description
Environment details
- OS: Linux
- Node.js version: v20.9.0
- npm version: 10.1.0
@google-cloud/loggingversion:11.2.0
Steps to reproduce
In this issue i specify the line of codes that need to be modified to fix the issue.
- Have a view for a custom log storage
- 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!
Activity
carlosbloqhouse commentedon Dec 23, 2024
Ive realised there is another pr that tackles this issue, although it doesnt fully tackle it as only solves one of the 2 functions, and i think that solution probably doesnt work:
googleapis/nodejs-logging#1482
cindy-peng commentedon Mar 25, 2025
Hi @carlosbloqhouse, sorry for the late response! I will take a look at this.
carlosbloqhouse commentedon Mar 26, 2025
Hi @cindy-peng, thanks for looking into it. I think the priority should be higher. Right now it is next to issues like typos in comments, when this issue actually breaks the utility of a couple functions in certain use cases (although is true that these use cases may be niche). We had to bypass the nodejs sdk and directly call the google api to achieve the utility of those functions.