scheb/tombstone
Composer 安装命令:
composer require scheb/tombstone
包简介
Dead code detection with tombstones for PHP
README 文档
README
Implements the concept of tombstones for dead code detection in PHP.
The library provides you with a toolbox to place, track and evaluate tombstones in your code.
What are Tombstones?
To get the basic idea, watch David Schnepper's 5 minute talk from Velocity Santa Clara 2014.
When you want to identify and clean-up dead code in a project, static code analysis tools are the weapon of choice. But these tools have some limitations, especially in a dynamic language like PHP:
- They can only tell you, if a piece of code is referenced, not if it's actually used
- They cannot resolve dynamic or generated call paths
Tombstones provide a way to track if a piece of code is actually invoked. They are executable markers in your code, that you can place where you suspect dead code. Then, you collect tombstone invocations on production. After a while, the logs will tell you, which tombstones are dead and which ones aren't (the so called "vampires").
Installation
The library consists of multiple components, that need to be installed and configured independently:
Read how to install scheb/tombstone-logger for placing and logging tombstones in your code.
Read how to install scheb/tombstone-analyzer, which takes log data from
scheb/tombstone-logger to generate reports in various formats. For example an HTML report:
Security
For information about the security policy and know security issues, see SECURITY.md.
Contributing
Want to contribute to this project? See CONTRIBUTING.md.
License
This software is available under the MIT license.
Acknowledgments
The library is heavily inspired by Nestoria.com's implementation of the tombstone concept.
Thanks to Jordi Boggiano for creating Monolog, from where I lend the handler/formatter concept.
The tombstone graphic is based on a licensed illustration by "lemonadeserenade".
Support Me
I'm developing this library since 2015. I love to hear from people using it, giving me the motivation to keep working on my open source projects.
If you want to let me know you're finding it useful, please consider giving it a star ⭐ on GitHub.
If you love my work and want to say thank you, you can help me out for a beer 🍻️ via PayPal.
scheb/tombstone 适用场景与选型建议
scheb/tombstone 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 627.15k 次下载、GitHub Stars 达 285, 最近一次更新时间为 2015 年 08 月 10 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「Static code analysis」 「tombstone」 「dead code removal」 「dynamic code analysis」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 scheb/tombstone 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 scheb/tombstone 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 scheb/tombstone 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Memio's PrettyPrinter, used to generate PHP code from given Model
Bookdown.io With Bootswatch Styles And Prism Syntax Highlighting
TwigStan is a static analyzer for Twig templates powered by PHPStan
Sentiment analysis library for PHP.
Database Standardization and Analysis Tool for Laravel
Enforce architecture by defining modules with allowed dependencies. Detects forbidden, uncovered, missing and unused module dependencies in PHP projects.
统计信息
- 总下载量: 627.15k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 286
- 点击次数: 28
- 依赖项目数: 1
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2015-08-10

