Skip to content

Release v0.3.0: traffic and own files of each site - #54

Merged
nabil1440 merged 6 commits into
mainfrom
develop
Oct 19, 2026
Merged

nabil1440 merged 6 commits into
mainfrom
develop

Conversation

@nabil1440

Copy link
Copy Markdown
Contributor

This PR merges develop into main for the v0.3.0 release of the FlyWP server CLI (fly). The new FlyWP release needs it: White Label bandwidth is measured only on servers whose agent is v0.3.0 or newer.

What changes

The agent follows the FlyWP monitoring agent contract v0.6.0.

Change PR
Traffic of each site. On a server where FlyWP set up the proxy's traffic log, each sample sends the bytes the proxy sent for each site name in the minute. Without the log, traffic is null. #53
Own files of each site: the size of its app folder, beside the disk use of the whole site. #53
CI: golangci-lint v2.15.0, which supports Go 1.27.2. #53

Old FlyWP versions ignore the new fields.

After the merge

  1. Tag v0.3.0 on main and push it at once (releasing.md).
  2. Sign it: make sign-release VERSION=v0.3.0 KEY=<private key file>. Agents update themselves 24 hours after the signature.
  3. In FlyWP, set config/monitoring.php to v0.3.0 and the two sums of its checksums.txt, for new installs and agent.update.

🤖 Generated with Claude Code

shohag121 and others added 6 commits October 19, 2026 12:52
…files (contract v0.6.0)

- traffic: the bytes the front proxy sent for each site name since the sample before, read from ~/.fly/nginx/logs/traffic.log; null without the file.
- The first read starts at the end; the offset is saved before the sample is buffered; a new or cut file is read from the start; a file past 64 MiB is cut once read; at most 1000 names.
- sites[].files_bytes: the app folder of each project, from the same disk walk.

For flywp/flywp-internal-tasks#91 and #92.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AMtTQGy4K62exCWTJQCTdG
…file

- O_NOFOLLOW and a regular file only: a link in its place must not make the agent cut another file.
- The inode comes from the open file, and the cut is of the open file.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AMtTQGy4K62exCWTJQCTdG
…s never re-created for it

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AMtTQGy4K62exCWTJQCTdG
setup-go now installs Go 1.27.2, and golangci-lint v2.13.2 cannot read its export data: the typecheck of the standard library fails, so make check stops at lint.
…inode only

Linux can give a new file the inode of one that was just deleted. The reader then went on from the old offset, in the middle of a line, and a line cut there can name another site. CI failed on it: TestTrafficReadsANewOrCutFileFromTheStart.
feat: traffic of each site and each site's own files (contract v0.6.0)
@nabil1440
nabil1440 merged commit d4a851f into main Oct 19, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants