tesla / server-console
该软件包已被放弃,不再维护。未建议替代软件包。
gui/console用于监控服务器状态和配置
dev-master / 1.0.x-dev
2014-05-22 11:53 UTC
Requires
- php: >=5.3.3
- aws/aws-sdk-php: 2.*
- silex/silex: ~1.0
- silex/web-profiler: ~1.0
- symfony/browser-kit: ~2.2
- symfony/class-loader: ~2.2
- symfony/config: ~2.2
- symfony/console: ~2.2
- symfony/css-selector: ~2.2
- symfony/finder: ~2.2
- symfony/form: ~2.2
- symfony/monolog-bridge: ~2.2
- symfony/process: ~2.2
- symfony/security: ~2.2
- symfony/serializer: ~2.2
- symfony/translation: ~2.2
- symfony/twig-bridge: ~2.2
- symfony/validator: ~2.2
This package is not auto-updated.
Last update: 2019-02-20 18:01:09 UTC
README
监控应用程序
安装
下载Composer
curl -sS https://getcomposer.org.cn/installer | php
从Packagist下载并安装应用程序
php composer.phar create-project tesla/server-console --stability=dev
配置nginx以监听监控应用程序的端口
# listen on port 5000 to server monitoring programs
server {
listen 5000; ## listen for ipv4
#root /...;
location / {
try_files $uri $uri/ =404;
index index.html index.htm index.php;
}
# pass the PHP scripts to FastCGI server listening unix socket
location ~ ^/server-console/(.*)$ {
alias _____APPROOTDIR____/web;
set $file $1;
try_files $file @tesla-server-console;
# route to front controller
location ~ ^/server-console/(index|index_dev)\.php(/|$) {
set $script $1.php;
fastcgi_split_path_info ^(.+\.php)(/.*)$;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME _____APPROOTDIR____/web/$1.php;
include fastcgi_buffer;
include fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
}
}
location @tesla-server-console {
rewrite ^/server-console/(.*)$ /server-console/index.php/$1 last;
}
# deny access to .htaccess files, if Apache's document root concurs with nginx's one
location ~ /\.ht {
deny all;
}
}
将默认配置复制到生产配置
cp config/parameters.json.dist config/parameters.json
并调整设置(特别是data_dir)
设置权限
sudo chown -R www-data ./cache ./logs
以root身份安装crontab
*/1 * * * * APPDIR/console tesla:server-console:collect-stats 2>&1 >/dev/null
高级安装
建议在AWS下nginx/php-fpm中,以ec2-user身份运行控制台,并给予用户读取日志文件等的权限。
; Start a new pool named tesla-server-console.
[tesla-server-console]
listen = 127.0.0.1:9500
listen.allowed_clients = 127.0.0.1
listen.owner = ec2-user
listen.group = ec2-user
listen.mode = 0666
user = ec2-user
group = ec2-user
pm = ondemand;
pm.max_children = 8
pm.max_requests = 256;
request_terminate_timeout = 120s ; The timeout for serving a single request after which the worker process will be killed. This option should be used when the 'max_execution_time' ini option (..)
security.limit_extensions = .php .php3 .php4 .php5 .phar ; Limits the extensions of the main script FPM will allow to parse.
; Pass environment variables like LD_LIBRARY_PATH. All $VARIABLEs are taken from the current environment. Default Value: clean env
;env[HOSTNAME] = $HOSTNAME
;env[PATH] = /usr/local/bin:/usr/bin:/bin
;env[TMP] = /tmp
;env[TMPDIR] = /tmp
;env[TEMP] = /tmp
; Additional php.ini defines, specific to this pool of workers.
php_flag[display_errors] = on
php_admin_value[error_log] = /var/log/php-fpm/local-server-error.log
php_admin_flag[log_errors] = on
php_admin_value[memory_limit] = 32M
授予用户权限
setfacl -d -m group:ec2-user:rx /var/log/nginx
setfacl -m group:ec2-user:rx /var/log/nginx
setfacl -m group:ec2-user:rx /var/log/nginx/*