Skip to content

feat(wire-log): plumb through wire log#4406

Merged
geertj merged 1 commit intoGoogleCloudPlatform:masterfrom
geertj:feat-wire-log
Mar 12, 2026
Merged

feat(wire-log): plumb through wire log#4406
geertj merged 1 commit intoGoogleCloudPlatform:masterfrom
geertj:feat-wire-log

Conversation

@geertj
Copy link
Copy Markdown
Collaborator

@geertj geertj commented Feb 18, 2026

Description

This adds a new flag, -wire-log=<path>, that enables the wire log that was recently added to jacobsa/fuse. When enabled, this will serialize every FUSE operation as a JSON object and append it to the specified file.

The wire log is useful when analyzing workload patterns.

Testing details

The wirelog feature has unit tests in jacobsa/fuse. This merely plumbs through the flag. I have run this manually adding -wire-log wirelog.json and verified that the wire log is correctly generated.

Any backward incompatible change? If so, please explain.

None

@geertj geertj requested a review from a team as a code owner February 18, 2026 22:34
@geertj geertj requested a review from abhishek10004 February 18, 2026 22:34
@gemini-code-assist
Copy link
Copy Markdown
Contributor

Summary of Changes

Hello @geertj, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request integrates a new wire logging capability into the system. By introducing a command-line flag, users can now enable and specify a path for a wire log, which will record FUSE operations as JSON objects. This enhancement is designed to provide deeper insights into workload patterns, facilitating analysis and debugging of file system interactions.

Highlights

  • New Wire Log Flag: Introduced a new command-line flag, -wire-log=<path>, to enable and specify the output file for the FUSE wire log.
  • FUSE Operation Serialization: When enabled, the wire log will serialize each FUSE operation as a JSON object and append it to the specified file.
  • Workload Analysis: This feature is intended to be useful for analyzing workload patterns by providing detailed logs of FUSE operations.
Changelog
  • cfg/config.go
    • Added a WireLog field of type ResolvedPath to the LoggingConfig struct.
    • Registered the new wire-log command-line flag with a descriptive usage message.
    • Bound the wire-log flag to the logging.wire-log configuration path using Viper.
  • cfg/params.yaml
    • Defined a new parameter entry for logging.wire-log, specifying its flag name, type, and detailed usage description.
  • cmd/mount.go
    • Implemented conditional logic to check if a WireLog path is provided in the configuration.
    • Attempted to create the specified wire log file and assigned it to mountCfg.WireLogger upon successful creation.
    • Added error logging if the wire log file cannot be created.
Activity
  • No human activity (comments, reviews, progress updates) has been recorded for this pull request yet.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a new -wire-log flag to enable FUSE wire logging, which is a useful feature for debugging and analyzing workload patterns. The changes to the configuration and flag parsing are correct. However, there's an issue in cmd/mount.go where the implementation for creating the log file contradicts the 'append' behavior described in the documentation. I've left a specific comment with a suggestion to fix this.

Comment thread cmd/mount.go
@raj-prince raj-prince added the remind-reviewers Auto remind reviewers in attention set for review post 24hrs of inactivity on PR. label Feb 25, 2026
Comment thread cfg/params.yaml
raj-prince
raj-prince previously approved these changes Feb 25, 2026
Copy link
Copy Markdown
Collaborator

@raj-prince raj-prince left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, one comment about visibility of this flag.

Copy link
Copy Markdown
Collaborator

@abhishek10004 abhishek10004 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes look good. IMO, the flag should be hidden.

@geertj
Copy link
Copy Markdown
Collaborator Author

geertj commented Mar 11, 2026

@abhishek10004 I made the flag hidden, please take a look

Comment thread cfg/config.go
This adds a new flag, -wire-log=<path>, that enables the wire log that
was recently added to jacobsa/fuse. When enabled, this will serialize
every FUSE operation as a JSON object and append it to the specified
file.

The wire log is useful when analyzing workload patterns.
Copy link
Copy Markdown
Collaborator

@abhishek10004 abhishek10004 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Let's add UT for validating this flag as well (we can use a separate PR for that).

@geertj geertj merged commit 5180143 into GoogleCloudPlatform:master Mar 12, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

remind-reviewers Auto remind reviewers in attention set for review post 24hrs of inactivity on PR.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants