Skip to content

owncloud/diagnostics

ownCloud Diagnostics

License ownCloud OSPO Docker Hub

An ownCloud Classic (OC10) app that collects request data and measures server performance. When enabled, it logs query and event information per request, allowing administrators to diagnose performance issues for selected users or globally. Data is stored in data/diagnostic.log and can be exported for monitoring purposes.

Getting Started

Install the app into your ownCloud apps directory:

cd /path/to/owncloud/apps
git clone https://github.com/owncloud/diagnostics
sudo -u www-data php occ app:enable diagnostics

Once enabled, select users to diagnose from the admin panel or enable global data collection via debug mode. Logs are written to data/diagnostic.log.

Documentation

Part of ownCloud Classic (OC10)

This app extends ownCloud Server with server-side performance diagnostics. It is shipped as part of the ownCloud Server Docker image.

Configuration

Configuration options for the diagnostics app:

Log Levels

Set the diagnostic log level (e.g., SUMMARY):

sudo -u www-data php occ config:app:set --value 1 diagnostics diagnosticLogLevel

Diagnose Specific Users

Enable logging for specific users only (does not affect other users' performance):

sudo -u www-data php occ config:app:set --value '["user1", "admin"]' diagnostics diagnosedUsers

Enable Debug Mode (Global)

sudo -u www-data php occ config:system:set --value true debug

Log Format

The diagnostic log (data/diagnostic.log) contains three record types linked by reqId:

  • QUERY -- SQL statement, parameters, duration, and timestamp
  • EVENT -- Event description, duration, and timestamp
  • SUMMARY -- Per-request totals: SQL query count, total SQL duration, event count, and total event duration, along with request method, URL, user, and remote address

Community & Support

Star this repo and Watch for release notifications!

Contributing

We welcome contributions! Please read the Contributing Guidelines and our Code of Conduct before getting started.

Workflow

  • Rebase Early, Rebase Often! We use a rebase workflow. Always rebase on the target branch before submitting a PR.
  • Dependabot: Automated dependency updates are managed via Dependabot. Review and merge dependency PRs promptly.
  • Signed Commits: All commits must be PGP/GPG signed. See GitHub's signing guide.
  • DCO Sign-off: Every commit must carry a Signed-off-by line:
    git commit -s -S -m "your commit message"
    
  • GitHub Actions Policy: Workflows may only use actions that are (a) owned by owncloud, (b) created by GitHub (actions/*), or (c) verified in the GitHub Marketplace.

Translations

Help translate this project on Transifex: https://explore.transifex.com/owncloud-org/owncloud/

Please submit translations via Transifex -- do not open pull requests for translation changes.

Security

Do not open a public GitHub issue for security vulnerabilities.

Report vulnerabilities at https://security.owncloud.com -- see SECURITY.md.

Bug bounty: YesWeHack ownCloud Program

License

This project is licensed under the AGPL-3.0.

About the ownCloud OSPO

The Kiteworks Open Source Program Office, operating under the ownCloud brand, launched on May 5, 2026, to steward the open source ecosystem around ownCloud's products. The OSPO ensures transparent governance, license compliance, community health, and sustainable collaboration between the open source community and Kiteworks, which acquired ownCloud in 2023.

For questions about the OSPO or licensing, contact ospo@kiteworks.com.

License Migration to Apache 2.0

The OSPO is driving a strategic relicensing of ownCloud repositories toward the Apache License 2.0, following the Apache Software Foundation's third-party license policy.

Individual repositories will migrate as their audit is completed. The LICENSE file in each repo reflects its current license status (not the target).

Current license: AGPL-3.0 (Category X per Apache policy -- cannot be included in Apache-2.0 works).

Migration prerequisites for this repository:

  • CLA/DCO coverage: All past contributors must have signed agreements permitting relicensing
  • Copyleft dependency audit: All AGPL/GPL dependencies must be replaced or isolated
  • KDE heritage review: Any code with KDE-era copyrights requires legal analysis
  • Complete relicensing: AGPL-3.0 is a strong copyleft license; migration requires full relicensing of all files, not just a header change

About

🏥 Collect request data and measure performance

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

5 stars

Watchers

44 watching

Forks

Packages

 
 
 

Contributors