atk14 / application-status
The ATK14 application status monitor
Installs: 5 155
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 4
Forks: 0
Open Issues: 0
Requires
- php: >=5.3.0
- atk14/ip-matcher: *
- yarri/my-blowfish: ^1.4
This package is auto-updated.
Last update: 2024-12-09 13:27:50 UTC
README
The ATK14 application status monitor.
Application Status provides:
- system load information
- access to error logs
- list of currently running SQL queries ordered by duration
- access to exception reports produced by Tracy
Installation
cd path/to/your/atk14/project/
composer require atk14/application-status
ln -s ../../vendor/atk14/application-status/src/app/controllers/application_status/ app/controllers/application_status
ln -s ../../vendor/atk14/application-status/src/app/views/application_status/ app/views/application_status
ln -s ../../vendor/atk14/application-status/src/app/layouts/application_status/ app/layouts/application_status
After deployment to the production, the Application Status will be accessible on address:
http://your.project.com/application_status/
Configuration
Set up IP-based authentication or HTTP basic authentication. It's even ok to set up both.
// file: config/settings.php
// IP-based authentication
define("APPLICATION_STATUS_ALLOW_FROM","84.42.130.122,84.42.130.123,84.42.121.123/24");
// HTTP basic authentication
define("APPLICATION_STATUS_AUTH_USERNAME","status");
define("APPLICATION_STATUS_AUTH_PASSWORD",'$2a$04$fRdoV2rr6IOmf83E5eH83Oqw8yR5k9HtRWvBSd2pOwev6yoDxKX3W');
It is expected that the password is either a blowfish hash or it is set in plain text.
define("APPLICATION_STATUS_AUTH_PASSWORD","secret");
The blowfish hash can be calculated using the ATK14 console. Because the correct password is compared with the hash in every HTTP request, it is a good idea not to generate too complex hash (with too high rounds value).
$ echo 'echo MyBlowfish::GetHash("secret","",["rounds" => 4]),"\n";' | ./scripts/console
$2a$04$fRdoV2rr6IOmf83E5eH83Oqw8yR5k9HtRWvBSd2pOwev6yoDxKX3W
By default, there is automatic redirection to ssl in production environment. It can be suppressed by setting constant APPLICATION_STATUS_REDIRECT_TO_SSL_AUTOMATICALLY to false:
define("APPLICATION_STATUS_REDIRECT_TO_SSL_AUTOMATICALLY",false);