commit
b29d18c864
@ -0,0 +1,133 @@
|
||||
## 3.4.0 2021-11-23 <dave at tiredofit dot ca>
|
||||
|
||||
### Added
|
||||
- OSTIcket 1.15.4
|
||||
- Debian Bullseye base
|
||||
|
||||
|
||||
## 3.3.3 2021-09-06 <eflukx@github>
|
||||
|
||||
### Fixed
|
||||
- Fix spelling mistake in Dockerfile for archiver plugin
|
||||
|
||||
## 3.3.2 2021-08-11 <cdhowie@github>
|
||||
|
||||
### Fixed
|
||||
- Clean NGINX_WEBROOT extra /www/ prefix from crontab
|
||||
|
||||
## 3.3.1 2021-08-11 <cdhowie@github>
|
||||
|
||||
### Changed
|
||||
- Cleanup composer cache
|
||||
- Cleanup Debian package cache to reduce image size
|
||||
|
||||
|
||||
## 3.3.0 2021-08-11 <dave at tiredofit dot ca>
|
||||
|
||||
### Added
|
||||
- Switch from Alpine to Debian base due to musl not supporting some functions OSTicket requires
|
||||
- Upgrade OSTicket to 1.15.3
|
||||
- PHP 7.4
|
||||
|
||||
|
||||
## 3.2.1 2021-02-16 <leMail at github>
|
||||
|
||||
### Fixed
|
||||
- Removed erroneous argument in cron job
|
||||
|
||||
|
||||
## 3.2.0 2020-06-15 <dave at tiredofit dot ca>
|
||||
|
||||
### Added
|
||||
- Update to support tiredofit/alpine 5.x.x base images
|
||||
|
||||
|
||||
## 3.1.2 2020-01-02 <dave at tiredofit dot ca>
|
||||
|
||||
### Changed
|
||||
- Switch to php7-pecl-memcached
|
||||
|
||||
|
||||
## 3.1.1 2020-01-02 <dave at tiredofit dot ca>
|
||||
|
||||
### Changed
|
||||
- Additional Changes to support new tiredofit/alpine base image
|
||||
|
||||
|
||||
## 3.1.0 2019-12-29 <dave at tiredofit dot ca>
|
||||
|
||||
### Added
|
||||
- Support new tiredofit/nginx and tireofit/alpine base images
|
||||
|
||||
|
||||
## 3.0.2 2019-12-17 <dave at tiredofit dot ca>
|
||||
|
||||
### Added
|
||||
- OSTicket 1.14.1
|
||||
- Refactored to support new tiredofit/nginx-php-fpm base image
|
||||
|
||||
|
||||
## 3.0.1 2019-11-12 <dave at tiredofit dot ca>
|
||||
|
||||
* OSTicket 1.14-rc2
|
||||
|
||||
## 3.0 2019-09-12 <dave at tiredofit dot ca>
|
||||
|
||||
* Modernize Image
|
||||
* Added many plugins
|
||||
* OSTicket 1.14rc1
|
||||
* PHP 7.3
|
||||
* Alpine 3.10
|
||||
|
||||
## 2.8 2018-02-01 <dave at tiredofit dot ca>
|
||||
|
||||
* Pull sources from Github instead of mainwebsite
|
||||
* Compile auth-ldap plugin
|
||||
|
||||
## 2.7 2018-02-01 <dave at tiredofit dot ca>
|
||||
|
||||
* Rebase
|
||||
|
||||
## 2.6 2017-10-05 <dave at tiredofit dot ca>
|
||||
|
||||
* Fix Broken Detection of new install
|
||||
|
||||
## 2.5 2017-08-29 <dave at tiredofit dot ca>
|
||||
|
||||
* Image Cleanup
|
||||
|
||||
## 2.4 2017-07-06 <dave at tiredofit dot ca>
|
||||
|
||||
* Added PHP_TIMEOUT
|
||||
|
||||
## 2.3 2017-07-03 <dave at tiredofit dot ca>
|
||||
|
||||
* Added PHP7-IMAP
|
||||
|
||||
## 2.2 2017-07-02 <dave at tiredofit dot ca>
|
||||
|
||||
* Build PHP7 Memcached Extension
|
||||
|
||||
## 2.1 2017-07-02 <dave at tiredofit dot ca>
|
||||
|
||||
* Sanity Checks in init scripts
|
||||
|
||||
## 2017-06-17 2.0 <dave at tiredofit dot ca>
|
||||
|
||||
* Rebase with nginx-php-fpm:7.0 with s6
|
||||
|
||||
## 2017-05-27 1.0 <dave at tiredofit dot ca>
|
||||
|
||||
* Production Stable
|
||||
* Memcached Capable for Sessions
|
||||
* Reset Admin Password if ENV Set upon Bootup
|
||||
|
||||
|
||||
## 2017-05-27 0.9 <dave at tiredofit dot ca>
|
||||
|
||||
* Initial Release
|
||||
* OSTicket 1.10
|
||||
* Alpine:3.5
|
||||
* PHP7
|
||||
* Zabbix
|
||||
|
||||
@ -0,0 +1,93 @@
|
||||
FROM docker.io/tiredofit/nginx-php-fpm:debian-7.4-bullseye
|
||||
LABEL maintainer="Dave Conroy (github.com/tiredofit)"
|
||||
|
||||
### Default Runtime Environment Variables
|
||||
ENV OSTICKET_VERSION=v1.16.3 \
|
||||
DB_PREFIX=ost_ \
|
||||
DB_PORT=3306 \
|
||||
CRON_INTERVAL=10 \
|
||||
MEMCACHE_PORT=11211 \
|
||||
PHP_ENABLE_FILEINFO=TRUE \
|
||||
PHP_ENABLE_IMAP=TRUE \
|
||||
PHP_ENABLE_LDAP=TRUE \
|
||||
PHP_ENABLE_MYSQLI=TRUE \
|
||||
PHP_ENABLE_SESSION=TRUE \
|
||||
PHP_ENABLE_CREATE_SAMPLE_PHP=FALSE \
|
||||
PHP_ENALBLE_ZIP=TRUE \
|
||||
NGINX_WEBROOT=/www/osticket \
|
||||
ZABBIX_AGENT_TYPE=classic \
|
||||
CONTAINER_NAME=osticket-app
|
||||
|
||||
### Dependency Installation
|
||||
RUN set -x && \
|
||||
apt-get update && \
|
||||
apt-get upgrade -y && \
|
||||
apt-get install -y \
|
||||
git \
|
||||
libldap-common \
|
||||
openssl \
|
||||
php${PHP_BASE}-memcached \
|
||||
tar \
|
||||
wget \
|
||||
zlib1g \
|
||||
&& \
|
||||
\
|
||||
### Download & Prepare OSTicket for Install
|
||||
git clone https://github.com/osTicket/osTicket /usr/src/osticket && \
|
||||
git -C /usr/src/osticket checkout ${OSTICKET_VERSION} && \
|
||||
mkdir -p /assets/install && \
|
||||
mv /usr/src/osticket/* /assets/install && \
|
||||
chown -R nginx:www-data /assets/install && \
|
||||
chmod -R a+rX /assets/install/ && \
|
||||
chmod -R u+rw /assets/install/ && \
|
||||
mv /assets/install/setup /assets/install/setup_hidden && \
|
||||
chown -R root:root /assets/install/setup_hidden && \
|
||||
chmod 700 /assets/install/setup_hidden && \
|
||||
\
|
||||
# Setup Official Plugins
|
||||
git clone -b develop https://github.com/osTicket/osTicket-plugins /usr/src/plugins && \
|
||||
cd /usr/src/plugins && \
|
||||
php make.php hydrate && \
|
||||
for plugin in $(find * -maxdepth 0 -type d ! -path doc ! -path lib); do cp -r ${plugin} /assets/install/include/plugins; done; \
|
||||
cp -R /usr/src/plugins/*.phar /assets/install/include/plugins/ && \
|
||||
cd / && \
|
||||
\
|
||||
# Add Community Plugins
|
||||
## Archiver
|
||||
git clone https://github.com/clonemeagain/osticket-plugin-archiver /assets/install/include/plugins/archiver && \
|
||||
## Attachment Preview
|
||||
git clone https://github.com/clonemeagain/attachment_preview /assets/install/include/plugins/attachment-preview && \
|
||||
## Auto Closer
|
||||
git clone https://github.com/clonemeagain/plugin-autocloser /assets/install/include/plugins/auto-closer && \
|
||||
## Fetch Note
|
||||
git clone https://github.com/bkonetzny/osticket-fetch-note /assets/install/include/plugins/fetch-note && \
|
||||
## Field Radio Buttons
|
||||
git clone https://github.com/Micke1101/OSTicket-plugin-field-radiobuttons /assets/install/include/plugins/field-radiobuttons && \
|
||||
## Mentioner
|
||||
git clone https://github.com/clonemeagain/osticket-plugin-mentioner /assets/install/include/plugins/mentioner && \
|
||||
## Multi LDAP Auth
|
||||
git clone https://github.com/philbertphotos/osticket-multildap-auth /assets/install/include/plugins/multi-ldap && \
|
||||
mv /assets/install/include/plugins/multi-ldap/multi-ldap/* /assets/install/include/plugins/multi-ldap/ && \
|
||||
rm -rf /assets/install/include/plugins/multi-ldap/multi-ldap && \
|
||||
## Prevent Autoscroll
|
||||
git clone https://github.com/clonemeagain/osticket-plugin-preventautoscroll /assets/install/include/plugins/prevent-autoscroll && \
|
||||
## Rewriter
|
||||
git clone https://github.com/clonemeagain/plugin-fwd-rewriter /assets/install/include/plugins/rewriter && \
|
||||
## Slack
|
||||
git clone https://github.com/clonemeagain/osticket-slack /assets/install/include/plugins/slack && \
|
||||
## Teams (Microsoft)
|
||||
git clone https://github.com/ipavlovi/osTicket-Microsoft-Teams-plugin /assets/install/include/plugins/teams && \
|
||||
\
|
||||
### Log Miscellany Installation
|
||||
touch /var/log/msmtp.log && \
|
||||
chown nginx:www-data /var/log/msmtp.log && \
|
||||
\
|
||||
## Cleanup
|
||||
apt-get clean && \
|
||||
rm -rf /var/lib/apt/lists/* && \
|
||||
rm -rf /tmp/* && \
|
||||
rm -rf /usr/src/* && \
|
||||
rm -rf /root/.composer/cache
|
||||
|
||||
### Add Files
|
||||
ADD install /
|
||||
@ -0,0 +1,21 @@
|
||||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2019 Dave Conroy
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
@ -0,0 +1,174 @@
|
||||
# github.com/tiredofit/docker-osticket
|
||||
|
||||
[](https://github.com/tiredofit/docker-osticket/releases/latest)
|
||||
[](https://github.com/tiredofit/docker-osticket/actions?query=workflow%3Abuild)
|
||||
[](https://hub.docker.com/r/tiredofit/osticket/)
|
||||
[](https://hub.docker.com/r/tiredofit/osticket/)
|
||||
[](https://github.com/sponsors/tiredofit)
|
||||
[](https://www.paypal.me/tiredofit)
|
||||
|
||||
* * *
|
||||
## About
|
||||
|
||||
This will build a Docker Image for [OSTicket](https://www.osticket.org) - An open source helpdesk / ticketing system.
|
||||
|
||||
* Automatically installs and sets up installation upon first start
|
||||
|
||||
## Maintainer
|
||||
|
||||
- [Dave Conroy](https://github.com/tiredofit)
|
||||
|
||||
## Table of Contents
|
||||
|
||||
|
||||
- [About](#about)
|
||||
- [Maintainer](#maintainer)
|
||||
- [Table of Contents](#table-of-contents)
|
||||
- [Prerequisites and Assumptions](#prerequisites-and-assumptions)
|
||||
- [Installation](#installation)
|
||||
- [Build from Source](#build-from-source)
|
||||
- [Prebuilt Images](#prebuilt-images)
|
||||
- [Configuration](#configuration)
|
||||
- [Quick Start](#quick-start)
|
||||
- [Persistent Storage](#persistent-storage)
|
||||
- [Environment Variables](#environment-variables)
|
||||
- [Base Images used](#base-images-used)
|
||||
- [Networking](#networking)
|
||||
- [Maintenance](#maintenance)
|
||||
- [Shell Access](#shell-access)
|
||||
- [Support](#support)
|
||||
- [Usage](#usage)
|
||||
- [Bugfixes](#bugfixes)
|
||||
- [Feature Requests](#feature-requests)
|
||||
- [Updates](#updates)
|
||||
- [License](#license)
|
||||
- [References](#references)
|
||||
|
||||
## Prerequisites and Assumptions
|
||||
* Assumes you are using some sort of SSL terminating reverse proxy such as:
|
||||
* [Traefik](https://github.com/tiredofit/docker-traefik)
|
||||
* [Nginx](https://github.com/jc21/nginx-proxy-manager)
|
||||
* [Caddy](https://github.com/caddyserver/caddy)
|
||||
* Requires access to a MySQL/MariaDB Server
|
||||
|
||||
## Installation
|
||||
|
||||
### Build from Source
|
||||
Clone this repository and build the image with `docker build -t (imagename) .`
|
||||
|
||||
### Prebuilt Images
|
||||
Builds of the image are available on [Docker Hub](https://hub.docker.com/r/tiredofit/osticket) and is the recommended method of installation.
|
||||
|
||||
```bash
|
||||
docker pull tiredofit/osticket:(imagetag)
|
||||
```
|
||||
|
||||
The following image tags are available along with their tagged release based on what's written in the [Changelog](CHANGELOG.md):
|
||||
|
||||
| Container OS | Tag |
|
||||
| ------------ | --------- |
|
||||
| Debian | `:latest` |
|
||||
|
||||
## Configuration
|
||||
|
||||
### Quick Start
|
||||
|
||||
- The quickest way to get started is using [docker-compose](https://docs.docker.com/compose/). See the examples folder for a working [docker-compose.yml](examples/docker-compose.yml) that can be modified for development or production use.
|
||||
|
||||
- Set various [environment variables](#environment-variables) to understand the capabilities of this image.
|
||||
- Map [persistent storage](#data-volumes) for access to configuration and data files for backup.
|
||||
- Make [networking ports](#networking) available for public access if necessary
|
||||
|
||||
**The first boot can take from 2 minutes - 5 minutes depending on your CPU to setup the proper schemas.**
|
||||
|
||||
- Login to the web server and enter in your admin email address, admin password and start configuring the system!
|
||||
|
||||
### Persistent Storage
|
||||
The following directories are used for configuration and can be mapped for persistent storage.
|
||||
|
||||
| Directory | Description |
|
||||
| --------------- | ------------------------------------------------------------------------------------------- |
|
||||
| `/www/osticket` | (Not needed as we want to keep base clean, move to a custom/assets approach) Root Directory |
|
||||
| `/www/logs` | Nginx and php-fpm logfiles |
|
||||
|
||||
### Environment Variables
|
||||
|
||||
#### Base Images used
|
||||
|
||||
This image relies on an [Alpine Linux](https://hub.docker.com/r/tiredofit/alpine) or [Debian Linux](https://hub.docker.com/r/tiredofit/debian) base image that relies on an [init system](https://github.com/just-containers/s6-overlay) for added capabilities. Outgoing SMTP capabilities are handlded via `msmtp`. Individual container performance monitoring is performed by [zabbix-agent](https://zabbix.org). Additional tools include: `bash`,`curl`,`less`,`logrotate`,`nano`,`vim`.
|
||||
|
||||
Be sure to view the following repositories to understand all the customizable options:
|
||||
|
||||
| Image | Description |
|
||||
| ------------------------------------------------------------- | -------------------------------------- |
|
||||
| [OS Base](https://github.com/tiredofit/docker-debian/) | Customized Image based on Debian Linux |
|
||||
| [Nginx](https://github.com/tiredofit/docker-nginx/) | Nginx webserver |
|
||||
| [PHP-FPM](https://github.com/tiredofit/docker-nginx-php-fpm/) | PHP Interpreter |
|
||||
|
||||
|
||||
| Parameter | Description | default |
|
||||
| ----------------- | --------------------------------------------------------------------------- | ----------------------- |
|
||||
| `INSTALL_SECRET` | A Large and Random Installation String (Auto Generates on Install if empty) | |
|
||||
| `INSTALL_EMAIL` | Installer Email (Use different email then ADMIN_EMAIL) | `helpdesk@example.com` |
|
||||
| `INSTALL_NAME` | Site Name | `My Helpdesk` |
|
||||
| `ADMIN_FIRSTNAME` | First name of Admin User | |
|
||||
| `ADMIN_LASTNAME` | Last name of Admin User | |
|
||||
| `ADMIN_EMAIL` | Admin Email address (Make sure it is different than INSTALL_EMAIL) | |
|
||||
| `ADMIN_USER` | Admin Username | |
|
||||
| `ADMIN_PASS` | Admin Password | |
|
||||
| `CRON_PERIOD` | Amount of time in Minutes to Check Incoming Mail | `10` |
|
||||
| `DB_HOST` | Host or container name of MariaDB Server e.g. `osticket-db` | |
|
||||
| `DB_PORT` | MariaDB Port | `3306` |
|
||||
| `DB_NAME` | MariaDB Database name e.g. `osticket` | |
|
||||
| `DB_USER` | MariaDB Username for above Database e.g. `osticket` | |
|
||||
| `DB_PASS` | MariaDB Password for above Database e.g. `password` | |
|
||||
| `DB_PREFIX` | Prefix for Tables | `ost_` |
|
||||
| `SMTP_HOST` | SMTP Host | `postfix` |
|
||||
| `SMTP_PORT` | SMTP Host Port | `25` |
|
||||
| `SMTP_FROM` | SMTP From Address | `osticket@hostname.com` |
|
||||
| `SMTP_TLS` | Should TLS be used (`0`=no `1`=yes) | `1` |
|
||||
| `SMTP_USER` | SMTP Authentication user | |
|
||||
| `SMTP_PASS` | SMTP Authentication password | |
|
||||
|
||||
### Networking
|
||||
|
||||
The following ports are exposed.
|
||||
|
||||
| Port | Description |
|
||||
| ---- | ----------- |
|
||||
| `80` | HTTP |
|
||||
|
||||
* * *
|
||||
## Maintenance
|
||||
|
||||
### Shell Access
|
||||
|
||||
For debugging and maintenance purposes you may want access the containers shell.
|
||||
|
||||
``bash
|
||||
docker exec -it (whatever your container name is) bash
|
||||
``
|
||||
## Support
|
||||
|
||||
These images were built to serve a specific need in a production environment and gradually have had more functionality added based on requests from the community.
|
||||
### Usage
|
||||
- The [Discussions board](../../discussions) is a great place for working with the community on tips and tricks of using this image.
|
||||
- Consider [sponsoring me](https://github.com/sponsors/tiredofit) personalized support.
|
||||
### Bugfixes
|
||||
- Please, submit a [Bug Report](issues/new) if something isn't working as expected. I'll do my best to issue a fix in short order.
|
||||
|
||||
### Feature Requests
|
||||
- Feel free to submit a feature request, however there is no guarantee that it will be added, or at what timeline.
|
||||
- Consider [sponsoring me](https://github.com/sponsors/tiredofit) regarding development of features.
|
||||
|
||||
### Updates
|
||||
- Best effort to track upstream changes, More priority if I am actively using the image in a production environment.
|
||||
- Consider [sponsoring me](https://github.com/sponsors/tiredofit) for up to date releases.
|
||||
|
||||
## License
|
||||
MIT. See [LICENSE](LICENSE) for more details.
|
||||
|
||||
## References
|
||||
|
||||
* https://osticket.org
|
||||
|
||||
@ -0,0 +1,90 @@
|
||||
version: '3.7'
|
||||
services:
|
||||
|
||||
osticket-app:
|
||||
image: tiredofit/osticket
|
||||
container_name: osticket-app
|
||||
labels:
|
||||
- traefik.enable=true
|
||||
- traefik.frontend.rule=Host:url.example.com
|
||||
- traefik.port=80
|
||||
- traefik.protocol=http
|
||||
- traefik.docker.network=proxy
|
||||
- traefik.backend=osticket-app
|
||||
volumes:
|
||||
- ./data/:/www/osticket
|
||||
- ./logs/:/www/logs
|
||||
environment:
|
||||
- CONTAINER_NAME=osticket-app
|
||||
|
||||
- CRON_PERIOD=10
|
||||
|
||||
- DB_HOST=osticket-db
|
||||
- DB_NAME=osticket
|
||||
- DB_USER=osticket
|
||||
- DB_PASS=password
|
||||
|
||||
- SMTP_HOST=localhost
|
||||
- SMTP_PORT=25
|
||||
- SMTP_FROM=osticket@example.com
|
||||
- SMTP_TLS=0
|
||||
- SMTP_USER=osticket@example.com
|
||||
- SMTP_PASS=password
|
||||
|
||||
- INSTALL_SECRET=somerandomlargecharacterstring
|
||||
- INSTALL_EMAIL=osticket@example.com
|
||||
- INSTALL_NAME=OSTicket Helpdesk
|
||||
|
||||
- ADMIN_FIRSTNAME=Admin
|
||||
- ADMIN_LASTNAME=User
|
||||
- ADMIN_EMAIL=admin@example.com
|
||||
- ADMIN_USER=ostadmin
|
||||
- ADMIN_PASS=Password123
|
||||
networks:
|
||||
- proxy
|
||||
- services
|
||||
restart: always
|
||||
|
||||
osticket-db:
|
||||
image: tiredofit/mariadb
|
||||
container_name: osticket-db
|
||||
volumes:
|
||||
- /var/local/db/osticket:/var/lib/mysql
|
||||
environment:
|
||||
- ROOT_PASS=securepassword
|
||||
- DB_NAME=osticket
|
||||
- DB_USER=osticket
|
||||
- DB_PASS=password
|
||||
|
||||
- CONTAINER_NAME=osticket-db
|
||||
networks:
|
||||
- services
|
||||
restart: always
|
||||
|
||||
osticket-db-backup:
|
||||
container_name: osticket-db-backup
|
||||
image: tiredofit/mariadb-backup
|
||||
links:
|
||||
- osticket-db
|
||||
volumes:
|
||||
- ./dbbackup:/backup
|
||||
environment:
|
||||
- DB_HOST=osticket-db
|
||||
- DB_TYPE=mariadb
|
||||
- DB_NAME=osticket
|
||||
- DB_USER=osticket
|
||||
- DB_PASSWORD=userpassword
|
||||
- DB_DUMP_FREQ=1440
|
||||
- DB_DUMP_BEGIN=0000
|
||||
- DB_CLEANUP_TIME=8640
|
||||
- COMPRESSION=BZ
|
||||
networks:
|
||||
- services
|
||||
restart: always
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
external: true
|
||||
services:
|
||||
external: true
|
||||
|
||||
@ -0,0 +1 @@
|
||||
*/<CRON_PERIOD> * * * * TZ=${TIMEZONE} php -q ${NGINX_WEBROOT}/api/cron.php >/dev/null 2>&1
|
||||
@ -0,0 +1,23 @@
|
||||
# msmtp configuration template
|
||||
#
|
||||
# This is populated and saved as /etc/msmtp when image starts
|
||||
#
|
||||
|
||||
# Default settings
|
||||
defaults
|
||||
logfile /var/log/msmtp.log
|
||||
|
||||
# OSTicket account
|
||||
account osticket
|
||||
protocol smtp
|
||||
host %SMTP_HOSTNAME%
|
||||
tls %SMTP_TLS%
|
||||
tls_trust_file %SMTP_TLS_CERTS%
|
||||
port %SMTP_PORT%
|
||||
auth %SMTP_AUTH%
|
||||
user %SMTP_USER%
|
||||
password %SMTP_PASS%
|
||||
from %SMTP_FROM%
|
||||
|
||||
# If you don't use the '-a' parameter in your command line, the default account will be used.
|
||||
account default: osticket
|
||||
@ -0,0 +1,165 @@
|
||||
<?php
|
||||
|
||||
//Configure settings from environmental variables
|
||||
$_SERVER['HTTP_ACCEPT_LANGUAGE'] = getenv("LANGUAGE") ?: "en-us";
|
||||
|
||||
$vars = array(
|
||||
'name' => getenv("INSTALL_NAME") ?: 'My Helpdesk',
|
||||
'email' => getenv("INSTALL_EMAIL") ?: 'helpdesk@example.com',
|
||||
'url' => getenv("INSTALL_URL") ?: 'http://localhost',
|
||||
'fname' => getenv("ADMIN_FIRSTNAME"),
|
||||
'lname' => getenv("ADMIN_LASTNAME"),
|
||||
'admin_email' => getenv("ADMIN_EMAIL"),
|
||||
'username' => getenv("ADMIN_USER"),
|
||||
'passwd' => getenv("ADMIN_PASS"),
|
||||
'passwd2' => getenv("ADMIN_PASS"),
|
||||
'prefix' => getenv("DB_PREFIX") ?: 'ost_',
|
||||
'dbhost' => getenv("DB_HOST"),
|
||||
'dbname' => getenv("DB_NAME"),
|
||||
'dbuser' => getenv("DB_USER"),
|
||||
'dbport' => getenv("DB_PORT") ?: '3306',
|
||||
'dbpass' => getenv("DB_PASS") ?: getenv("DB_PASS"),
|
||||
'smtp_host' => getenv("SMTP_HOST") ?: 'postfix-relay',
|
||||
'smtp_port' => getenv("SMTP_PORT") ?: 25,
|
||||
'smtp_from' => getenv("SMTP_FROM"),
|
||||
'smtp_tls' => getenv("SMTP_TLS"),
|
||||
'smtp_tls_certs' => getenv("SMTP_TLS_CERTS") ?: '/etc/ssl/certs/ca-certificates.crt',
|
||||
'smtp_user' => getenv("SMTP_USER"),
|
||||
'smtp_pass' => getenv("SMTP_PASSWORD"),
|
||||
'cron_interval' => getenv("CRON_INTERVAL") ?: 5,
|
||||
'siri' => getenv("INSTALL_SECRET"),
|
||||
'config' => getenv("INSTALL_CONFIG") ?: '<WEBROOT>/include/ost-sampleconfig.php'
|
||||
);
|
||||
|
||||
//Script settings
|
||||
define('CONNECTION_TIMEOUT_SEC', 180);
|
||||
function err( $msg) {
|
||||
fwrite(STDERR, "$msg\n");
|
||||
exit(1);
|
||||
}
|
||||
function boolToOnOff($v) {
|
||||
return ((boolean) $v) ? 'on' : 'off';
|
||||
}
|
||||
function convertStrToBool($varName, $default) {
|
||||
global $vars;
|
||||
if ($vars[$varName] != '') {
|
||||
return $vars[$varName] == '1';
|
||||
}
|
||||
return $default;
|
||||
}
|
||||
|
||||
// Override Helpdesk URL. Only applied during database installation.
|
||||
define("URL",$vars['url']);
|
||||
|
||||
//Require files (must be done before any output to avoid session start warnings)
|
||||
chdir("<WEBROOT>/setup_hidden");
|
||||
require "<WEBROOT>/setup_hidden/setup.inc.php";
|
||||
require_once INC_DIR.'class.installer.php';
|
||||
|
||||
|
||||
/************************* Mail Configuration *******************************************/
|
||||
define('MAIL_CONFIG_FILE','/etc/msmtp');
|
||||
|
||||
echo "** [osticket] Configuring mail settings\n";
|
||||
if (!$mailConfig = file_get_contents('/assets/msmtp/msmtp.conf')) {
|
||||
err("** [osticket] Failed to load mail configuration file");
|
||||
};
|
||||
$mailConfig = str_replace('%SMTP_HOSTNAME%', $vars['smtp_host'], $mailConfig);
|
||||
$mailConfig = str_replace('%SMTP_PORT%', $vars['smtp_port'], $mailConfig);
|
||||
$v = !empty($vars['smtp_from']) ? $vars['smtp_from'] : $vars['smtp_user'];
|
||||
$mailConfig = str_replace('%SMTP_FROM%', $v, $mailConfig);
|
||||
$mailConfig = str_replace('%SMTP_USER%', $vars['smtp_user'], $mailConfig);
|
||||
$mailConfig = str_replace('%SMTP_PASS%', $vars['smtp_pass'], $mailConfig);
|
||||
$mailConfig = str_replace('%SMTP_TLS_CERTS%', $vars['smtp_tls_certs'], $mailConfig);
|
||||
|
||||
$mailConfig = str_replace('%SMTP_TLS%', boolToOnOff(convertStrToBool('smtp_tls',true)),
|
||||
$mailConfig);
|
||||
$mailConfig = str_replace('%SMTP_AUTH%', boolToOnOff($vars['smtp_user'] != ''), $mailConfig);
|
||||
|
||||
if (!file_put_contents(MAIL_CONFIG_FILE, $mailConfig) || !chown(MAIL_CONFIG_FILE,'nginx')
|
||||
|| !chgrp(MAIL_CONFIG_FILE,'www-data') || !chmod(MAIL_CONFIG_FILE,0600)) {
|
||||
err("Failed to write mail configuration file");
|
||||
}
|
||||
|
||||
|
||||
/************************* OSTicket Installation *******************************************/
|
||||
|
||||
//Create installer class
|
||||
define('OSTICKET_CONFIGFILE','<WEBROOT>/include/ost-config.php');
|
||||
$installer = new Installer(OSTICKET_CONFIGFILE); //Installer instance.
|
||||
|
||||
|
||||
// Always set mysqli.default_port for osTicket db_connect
|
||||
ini_set('mysqli.default_port', $vars['dbport']);
|
||||
|
||||
//Check database installation status
|
||||
$db_installed = false;
|
||||
echo "** [osticket] DB - Connecting to database mysql://${vars['dbuser']}@${vars['dbhost']}/${vars['dbname']}\n";
|
||||
if (!db_connect($vars['dbhost'],$vars['dbuser'],$vars['dbpass']))
|
||||
err(sprintf(__('** [osticket] Unable to connect to MySQL server: %s'), db_connect_error()));
|
||||
elseif(explode('.', db_version()) < explode('.', $installer->getMySQLVersion()))
|
||||
err(sprintf(__('** [osticket] osTicket requires MySQL %s or later!'),$installer->getMySQLVersion()));
|
||||
elseif(!db_select_database($vars['dbname']) && !db_create_database($vars['dbname'])) {
|
||||
err("** [osticket] Database doesn't exist");
|
||||
} elseif(!db_select_database($vars['dbname'])) {
|
||||
err('** [osticket] Unable to select the database');
|
||||
} else {
|
||||
$sql = 'SELECT * FROM `'.$vars['prefix'].'config` LIMIT 1';
|
||||
if(db_query($sql, false)) {
|
||||
$db_installed = true;
|
||||
echo "** [osticket] Database already installed\n";
|
||||
}
|
||||
}
|
||||
|
||||
//Create secret if not set by env var and not previously stored
|
||||
DEFINE('SECRET_FILE','<WEBROOT>/secret.txt');
|
||||
if (!$vars['siri']) {
|
||||
if (file_exists(SECRET_FILE)) {
|
||||
echo "** [osticket] DB - Loading installation secret\n";
|
||||
$vars['siri'] = file_get_contents(SECRET_FILE);
|
||||
} else {
|
||||
echo "** [osticket] DB - Generating new installation secret and saving\n";
|
||||
//Note that this randomly generated value is not intended to secure production sites!
|
||||
$vars['siri'] =
|
||||
substr(str_shuffle("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567890_="), 0, 64);
|
||||
file_put_contents(SECRET_FILE, $vars['siri']);
|
||||
}
|
||||
} else {
|
||||
echo "** [osticket] DB - Using installation secret from INSTALL_SECRET environmental variable\n";
|
||||
}
|
||||
|
||||
//Always rewrite config file in case MySQL details changed (e.g. ip address)
|
||||
echo "** [osticket] DB - Updating configuration file\n";
|
||||
if (!$configFile = file_get_contents($vars['config'])) {
|
||||
err("** [osticket] DB - Failed to load configuration file: {$vars['config']}");
|
||||
};
|
||||
$configFile=
|
||||
str_replace("define('OSTINSTALLED',FALSE);","define('OSTINSTALLED',TRUE);",$configFile);
|
||||
$configFile= str_replace('%ADMIN-EMAIL',$vars['admin_email'],$configFile);
|
||||
$configFile= str_replace('%CONFIG-DBHOST',$vars['dbhost'],$configFile);
|
||||
$configFile= str_replace('%CONFIG-DBNAME',$vars['dbname'],$configFile);
|
||||
$configFile= str_replace('%CONFIG-DBUSER',$vars['dbuser'],$configFile);
|
||||
$configFile= str_replace('%CONFIG-DBPASS',$vars['dbpass'],$configFile);
|
||||
$configFile= str_replace('%CONFIG-PREFIX',$vars['prefix'],$configFile);
|
||||
$configFile= str_replace('%CONFIG-SIRI',$vars['siri'],$configFile);
|
||||
|
||||
if (!file_put_contents($installer->getConfigFile(), $configFile)) {
|
||||
err("** [osticket] DB - Failed to write configuration file");
|
||||
}
|
||||
|
||||
//Perform database installation if required
|
||||
if (!$db_installed) {
|
||||
echo "** [osticket] DB - Installing database. Please wait...\n";
|
||||
if (!$installer->install($vars)) {
|
||||
$errors=$installer->getErrors();
|
||||
echo "** [osticket] DB - Database installation failed. Errors:\n";
|
||||
foreach($errors as $e) {
|
||||
echo " $e\n";
|
||||
}
|
||||
exit(1);
|
||||
} else {
|
||||
echo "** [osticket] DB - Database installation successful\n";
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
@ -0,0 +1,66 @@
|
||||
#!/usr/bin/with-contenv bash
|
||||
|
||||
source /assets/functions/00-container
|
||||
prepare_service
|
||||
PROCESS_NAME="osticket"
|
||||
|
||||
check_service_initialized init 20-php-fpm
|
||||
|
||||
### Sanity Test
|
||||
sanity_db
|
||||
sanity_var ADMIN_PASS "Admin Password"
|
||||
sanity_var ADMIN_EMAIL "Admin Email"
|
||||
sanity_var ADMIN_USER "Admin Username"
|
||||
sanity_var INSTALL_SECRET "Install Secret"
|
||||
|
||||
db_ready mariadb
|
||||
|
||||
### Adjust Runtime Variables
|
||||
sed -i -e "s/<CRON_PERIOD>/$CRON_PERIOD/g" /assets/cron/osticket.txt
|
||||
sed -i -e "s#<WEBROOT>#${NGINX_WEBROOT}#g" /assets/setup/install.php
|
||||
|
||||
### Check to see if this is a new install, if yes copy information from assets create directories...
|
||||
if [ ! -f "${NGINX_WEBROOT}"/index.php ] ; then
|
||||
print_warn "New OSTicket Installation Detected."
|
||||
mkdir -p "${NGINX_WEBROOT}"
|
||||
cp -R /assets/install/* "${NGINX_WEBROOT}"/
|
||||
chown -R "${NGINX_USER}":"${NGINX_GROUP}" "${NGINX_WEBROOT}"/
|
||||
chmod -R a+rX "${NGINX_WEBROOT}"
|
||||
chmod -R u+rw "${NGINX_WEBROOT}"
|
||||
chown -R root:root "${NGINX_WEBROOT}"/setup_hidden
|
||||
chmod 700 "${NGINX_WEBROOT}"/setup_hidden
|
||||
fi
|
||||
|
||||
# Automate installation
|
||||
silent php /assets/setup/install.php
|
||||
|
||||
## Check Memcache Settings
|
||||
if [ ${MEMCACHE_HOST:+1} ]; then
|
||||
print_notice "Setting Memcache"
|
||||
sed -i -e "s/# define('SESSION_BACKEND', 'memcache');/define('SESSION_BACKEND', 'memcache');/g" "${NGINX_WEBROOT}"/include/ost-config.php
|
||||
sed -i -e "s/# define('MEMCACHE_SERVERS', 'server1:11211,server2:11211');/define('MEMCACHE_SERVERS', '$MEMCACHE_HOST:$MEMCACHE_PORT');/g" "${NGINX_WEBROOT}"/include/ost-config.php
|
||||
fi
|
||||
|
||||
## Proxy Fix
|
||||
if [ ${VIRTUAL_HOST:+1} ]; then
|
||||
print_notice "Configuring Reverse Proxy settings"
|
||||
sed -i -e "s/define('TRUSTED_PROXIES', '');/define('TRUSTED_PROXIES', '*');/g" "${NGINX_WEBROOT}"/include/ost-config.php
|
||||
fi
|
||||
|
||||
print_notice "Applying configuration file security"
|
||||
chmod 644 "${NGINX_WEBROOT}"/include/ost-config.php
|
||||
|
||||
#if [ ${ADMIN_PASS:+1} ]; then
|
||||
# print_notice "Setting Administrative User Password"
|
||||
# mysqlcmd='mysql -u'$DB_USER' -h'$DB_HOST' -p'$DB_PASS' -P'$DB_PORT
|
||||
# $mysqlcmd -e "use "$DB_NAME"; UPDATE "$DB_PREFIX"staff SET passwd = MD5( '"$ADMIN_PASS"' ) WHERE username = '"$ADMIN_USER"';"
|
||||
#fi
|
||||
|
||||
### Force Reset Permissions for Security
|
||||
chown -R "${NGINX_USER}":"${NGINX_GROUP}" "${NGINX_WEBROOT}"
|
||||
chmod -R a+rX "${NGINX_WEBROOT}"/
|
||||
chmod -R u+rw "${NGINX_WEBROOT}"/
|
||||
chown -R root:root "${NGINX_WEBROOT}"/setup_hidden
|
||||
chmod 700 "${NGINX_WEBROOT}"/setup_hidden
|
||||
|
||||
liftoff
|
||||
@ -0,0 +1,56 @@
|
||||
server {
|
||||
listen <LISTEN_PORT>;
|
||||
root <WEBROOT>;
|
||||
index index.php;
|
||||
|
||||
charset utf-8;
|
||||
|
||||
set $path_info "";
|
||||
|
||||
location ~ /include {
|
||||
deny all;
|
||||
return 403;
|
||||
}
|
||||
|
||||
if ($request_uri ~ "^/api(/[^\?]+)") {
|
||||
set $path_info $1;
|
||||
}
|
||||
|
||||
location /api {
|
||||
try_files $uri $uri/ /api/http.php?$query_string;
|
||||
}
|
||||
|
||||
if ($request_uri ~ "^/scp/.*\.php(/[^\?]+)") {
|
||||
set $path_info $1;
|
||||
}
|
||||
|
||||
location ~ ^/scp/ajax.php/.*$ {
|
||||
try_files $uri $uri/ /scp/ajax.php?$query_string;
|
||||
}
|
||||
|
||||
if ($request_uri ~ "^/ajax.php(/[^\?]+)") {
|
||||
set $path_info $1;
|
||||
}
|
||||
|
||||
location ~ ^/ajax.php/.*$ {
|
||||
try_files $uri $uri/ /ajax.php?$query_string;
|
||||
}
|
||||
|
||||
location / {
|
||||
try_files $uri $uri/ index.php;
|
||||
}
|
||||
|
||||
location ~ \.php$ {
|
||||
include /etc/nginx/nginx.conf.d/php-fpm.conf;
|
||||
try_files $uri = 404;
|
||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||
include fastcgi_params;
|
||||
fastcgi_index index.php;
|
||||
fastcgi_param LARA_ENV local; # Environment variable for Laravel
|
||||
fastcgi_param PATH_INFO $path_info;
|
||||
}
|
||||
|
||||
### Don't edit past here
|
||||
include /etc/nginx/nginx.conf.d/site_optimization.conf;
|
||||
include /etc/nginx/nginx.conf.d/exploit_protection.conf;
|
||||
}
|
||||
@ -0,0 +1,541 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<zabbix_export>
|
||||
<version>3.4</version>
|
||||
<date>2018-02-02T19:00:11Z</date>
|
||||
<groups>
|
||||
<group>
|
||||
<name>Templates</name>
|
||||
</group>
|
||||
<group>
|
||||
<name>VPN</name>
|
||||
</group>
|
||||
<group>
|
||||
<name>Websites</name>
|
||||
</group>
|
||||
</groups>
|
||||
<templates>
|
||||
<template>
|
||||
<template>APP - Nginx</template>
|
||||
<name>APP - Nginx</name>
|
||||
<description/>
|
||||
<groups>
|
||||
<group>
|
||||
<name>Templates</name>
|
||||
</group>
|
||||
<group>
|
||||
<name>VPN</name>
|
||||
</group>
|
||||
<group>
|
||||
<name>Websites</name>
|
||||
</group>
|
||||
</groups>
|
||||
<applications>
|
||||
<application>
|
||||
<name>Nginx</name>
|
||||
</application>
|
||||
</applications>
|
||||
<items>
|
||||
<item>
|
||||
<name>Nginx Accepted connections\min</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>nginx.status[accepts]</key>
|
||||
<delay>1m</delay>
|
||||
<history>90d</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>3</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description/>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>Nginx</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing>
|
||||
<step>
|
||||
<type>9</type>
|
||||
<params/>
|
||||
</step>
|
||||
</preprocessing>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
<item>
|
||||
<name>Nginx Active connections</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>nginx.status[active]</key>
|
||||
<delay>1m</delay>
|
||||
<history>90d</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>3</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description/>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>Nginx</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing/>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
<item>
|
||||
<name>Nginx Handled connections\min</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>nginx.status[handled]</key>
|
||||
<delay>1m</delay>
|
||||
<history>90d</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>3</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description/>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>Nginx</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing>
|
||||
<step>
|
||||
<type>9</type>
|
||||
<params/>
|
||||
</step>
|
||||
</preprocessing>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
<item>
|
||||
<name>Nginx Proc_Num</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>nginx.status[proc_num]</key>
|
||||
<delay>1m</delay>
|
||||
<history>90d</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>3</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description/>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>Nginx</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing/>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
<item>
|
||||
<name>Nginx Reading Connections</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>nginx.status[reading]</key>
|
||||
<delay>1m</delay>
|
||||
<history>90d</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>3</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description/>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>Nginx</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing/>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
<item>
|
||||
<name>Nginx Requests\min</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>nginx.status[requests]</key>
|
||||
<delay>1m</delay>
|
||||
<history>90d</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>3</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description/>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>Nginx</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing>
|
||||
<step>
|
||||
<type>9</type>
|
||||
<params/>
|
||||
</step>
|
||||
</preprocessing>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
<item>
|
||||
<name>Nginx Waiting Connections</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>nginx.status[waiting]</key>
|
||||
<delay>1m</delay>
|
||||
<history>90d</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>3</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description/>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>Nginx</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing/>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
<item>
|
||||
<name>Nginx Writing Connections</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>nginx.status[writing]</key>
|
||||
<delay>1m</delay>
|
||||
<history>90d</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>3</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description/>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>Nginx</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing/>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
</items>
|
||||
<discovery_rules/>
|
||||
<httptests/>
|
||||
<macros/>
|
||||
<templates/>
|
||||
<screens/>
|
||||
</template>
|
||||
</templates>
|
||||
<triggers>
|
||||
<trigger>
|
||||
<expression>{APP - Nginx:nginx.status[proc_num].last()}=0</expression>
|
||||
<recovery_mode>0</recovery_mode>
|
||||
<recovery_expression/>
|
||||
<name>Nginx is down</name>
|
||||
<correlation_mode>0</correlation_mode>
|
||||
<correlation_tag/>
|
||||
<url/>
|
||||
<status>0</status>
|
||||
<priority>5</priority>
|
||||
<description/>
|
||||
<type>0</type>
|
||||
<manual_close>0</manual_close>
|
||||
<dependencies/>
|
||||
<tags/>
|
||||
</trigger>
|
||||
</triggers>
|
||||
<graphs>
|
||||
<graph>
|
||||
<name>Active connections</name>
|
||||
<width>900</width>
|
||||
<height>200</height>
|
||||
<yaxismin>0.0000</yaxismin>
|
||||
<yaxismax>100.0000</yaxismax>
|
||||
<show_work_period>1</show_work_period>
|
||||
<show_triggers>1</show_triggers>
|
||||
<type>0</type>
|
||||
<show_legend>1</show_legend>
|
||||
<show_3d>0</show_3d>
|
||||
<percent_left>0.0000</percent_left>
|
||||
<percent_right>0.0000</percent_right>
|
||||
<ymin_type_1>0</ymin_type_1>
|
||||
<ymax_type_1>0</ymax_type_1>
|
||||
<ymin_item_1>0</ymin_item_1>
|
||||
<ymax_item_1>0</ymax_item_1>
|
||||
<graph_items>
|
||||
<graph_item>
|
||||
<sortorder>0</sortorder>
|
||||
<drawtype>0</drawtype>
|
||||
<color>00C800</color>
|
||||
<yaxisside>0</yaxisside>
|
||||
<calc_fnc>2</calc_fnc>
|
||||
<type>0</type>
|
||||
<item>
|
||||
<host>APP - Nginx</host>
|
||||
<key>nginx.status[active]</key>
|
||||
</item>
|
||||
</graph_item>
|
||||
<graph_item>
|
||||
<sortorder>1</sortorder>
|
||||
<drawtype>0</drawtype>
|
||||
<color>C80000</color>
|
||||
<yaxisside>0</yaxisside>
|
||||
<calc_fnc>2</calc_fnc>
|
||||
<type>0</type>
|
||||
<item>
|
||||
<host>APP - Nginx</host>
|
||||
<key>nginx.status[waiting]</key>
|
||||
</item>
|
||||
</graph_item>
|
||||
</graph_items>
|
||||
</graph>
|
||||
<graph>
|
||||
<name>Nginx Connections\min</name>
|
||||
<width>900</width>
|
||||
<height>200</height>
|
||||
<yaxismin>0.0000</yaxismin>
|
||||
<yaxismax>100.0000</yaxismax>
|
||||
<show_work_period>1</show_work_period>
|
||||
<show_triggers>1</show_triggers>
|
||||
<type>0</type>
|
||||
<show_legend>1</show_legend>
|
||||
<show_3d>0</show_3d>
|
||||
<percent_left>0.0000</percent_left>
|
||||
<percent_right>0.0000</percent_right>
|
||||
<ymin_type_1>1</ymin_type_1>
|
||||
<ymax_type_1>0</ymax_type_1>
|
||||
<ymin_item_1>0</ymin_item_1>
|
||||
<ymax_item_1>0</ymax_item_1>
|
||||
<graph_items>
|
||||
<graph_item>
|
||||
<sortorder>0</sortorder>
|
||||
<drawtype>0</drawtype>
|
||||
<color>00C800</color>
|
||||
<yaxisside>0</yaxisside>
|
||||
<calc_fnc>2</calc_fnc>
|
||||
<type>0</type>
|
||||
<item>
|
||||
<host>APP - Nginx</host>
|
||||
<key>nginx.status[accepts]</key>
|
||||
</item>
|
||||
</graph_item>
|
||||
<graph_item>
|
||||
<sortorder>1</sortorder>
|
||||
<drawtype>0</drawtype>
|
||||
<color>C80000</color>
|
||||
<yaxisside>0</yaxisside>
|
||||
<calc_fnc>2</calc_fnc>
|
||||
<type>0</type>
|
||||
<item>
|
||||
<host>APP - Nginx</host>
|
||||
<key>nginx.status[handled]</key>
|
||||
</item>
|
||||
</graph_item>
|
||||
<graph_item>
|
||||
<sortorder>2</sortorder>
|
||||
<drawtype>0</drawtype>
|
||||
<color>0000C8</color>
|
||||
<yaxisside>0</yaxisside>
|
||||
<calc_fnc>2</calc_fnc>
|
||||
<type>0</type>
|
||||
<item>
|
||||
<host>APP - Nginx</host>
|
||||
<key>nginx.status[requests]</key>
|
||||
</item>
|
||||
</graph_item>
|
||||
</graph_items>
|
||||
</graph>
|
||||
<graph>
|
||||
<name>Nginx Proc_Num</name>
|
||||
<width>900</width>
|
||||
<height>200</height>
|
||||
<yaxismin>0.0000</yaxismin>
|
||||
<yaxismax>100.0000</yaxismax>
|
||||
<show_work_period>1</show_work_period>
|
||||
<show_triggers>1</show_triggers>
|
||||
<type>0</type>
|
||||
<show_legend>1</show_legend>
|
||||
<show_3d>0</show_3d>
|
||||
<percent_left>0.0000</percent_left>
|
||||
<percent_right>0.0000</percent_right>
|
||||
<ymin_type_1>1</ymin_type_1>
|
||||
<ymax_type_1>0</ymax_type_1>
|
||||
<ymin_item_1>0</ymin_item_1>
|
||||
<ymax_item_1>0</ymax_item_1>
|
||||
<graph_items>
|
||||
<graph_item>
|
||||
<sortorder>0</sortorder>
|
||||
<drawtype>0</drawtype>
|
||||
<color>00C800</color>
|
||||
<yaxisside>0</yaxisside>
|
||||
<calc_fnc>2</calc_fnc>
|
||||
<type>0</type>
|
||||
<item>
|
||||
<host>APP - Nginx</host>
|
||||
<key>nginx.status[proc_num]</key>
|
||||
</item>
|
||||
</graph_item>
|
||||
</graph_items>
|
||||
</graph>
|
||||
</graphs>
|
||||
</zabbix_export>
|
||||
@ -0,0 +1,724 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<zabbix_export>
|
||||
<version>3.4</version>
|
||||
<date>2018-02-02T19:00:48Z</date>
|
||||
<groups>
|
||||
<group>
|
||||
<name>Templates</name>
|
||||
</group>
|
||||
</groups>
|
||||
<templates>
|
||||
<template>
|
||||
<template>APP - PHP-FPM7</template>
|
||||
<name>APP - PHP-FPM7</name>
|
||||
<description>php-fpm Template - http://www.netkiller.cn</description>
|
||||
<groups>
|
||||
<group>
|
||||
<name>Templates</name>
|
||||
</group>
|
||||
</groups>
|
||||
<applications>
|
||||
<application>
|
||||
<name>php-fpm</name>
|
||||
</application>
|
||||
</applications>
|
||||
<items>
|
||||
<item>
|
||||
<name>php-fpm status $1</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>php-fpm.status[accepted-conn]</key>
|
||||
<delay>1m</delay>
|
||||
<history>90d</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>3</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description>accepted-conn</description>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>php-fpm</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing/>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
<item>
|
||||
<name>php-fpm status $1</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>php-fpm.status[active-processes]</key>
|
||||
<delay>1m</delay>
|
||||
<history>90d</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>3</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description>active-processes</description>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>php-fpm</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing/>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
<item>
|
||||
<name>php-fpm status $1</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>php-fpm.status[idle-processes]</key>
|
||||
<delay>1m</delay>
|
||||
<history>90d</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>3</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description>idle-processes</description>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>php-fpm</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing/>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
<item>
|
||||
<name>php-fpm status $1</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>php-fpm.status[listen-queue-len]</key>
|
||||
<delay>1m</delay>
|
||||
<history>90d</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>3</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description>accepts</description>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>php-fpm</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing/>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
<item>
|
||||
<name>php-fpm status $1</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>php-fpm.status[listen-queue]</key>
|
||||
<delay>1m</delay>
|
||||
<history>90d</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>3</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description>listen-queue</description>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>php-fpm</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing/>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
<item>
|
||||
<name>php-fpm status $1</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>php-fpm.status[max-active-processes]</key>
|
||||
<delay>1m</delay>
|
||||
<history>90d</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>3</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description>max-active-processes</description>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>php-fpm</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing/>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
<item>
|
||||
<name>php-fpm status $1</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>php-fpm.status[max-children-reached]</key>
|
||||
<delay>1m</delay>
|
||||
<history>90d</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>3</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description>max-children-reached</description>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>php-fpm</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing/>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
<item>
|
||||
<name>php-fpm status $1</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>php-fpm.status[max-listen-queue]</key>
|
||||
<delay>1m</delay>
|
||||
<history>90d</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>3</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description>max-listen-queue</description>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>php-fpm</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing/>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
<item>
|
||||
<name>php-fpm status $1</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>php-fpm.status[slow-requests]</key>
|
||||
<delay>1m</delay>
|
||||
<history>90d</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>3</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description>slow-requests</description>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>php-fpm</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing>
|
||||
<step>
|
||||
<type>9</type>
|
||||
<params/>
|
||||
</step>
|
||||
</preprocessing>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
<item>
|
||||
<name>php-fpm status $1</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>php-fpm.status[start-since]</key>
|
||||
<delay>1m</delay>
|
||||
<history>90d</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>3</value_type>
|
||||
<allowed_hosts/>
|
||||
<units>uptime</units>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description>start-since</description>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>php-fpm</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing/>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
<item>
|
||||
<name>php-fpm status $1</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>php-fpm.status[total-processes]</key>
|
||||
<delay>1m</delay>
|
||||
<history>90d</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>3</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description>total-processes</description>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>php-fpm</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing/>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
<item>
|
||||
<name>php-fpm is running</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>proc.num[php-fpm7,,,]</key>
|
||||
<delay>1m</delay>
|
||||
<history>30d</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>3</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description>is live</description>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>php-fpm</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap>
|
||||
<name>Service state</name>
|
||||
</valuemap>
|
||||
<logtimefmt/>
|
||||
<preprocessing/>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
</items>
|
||||
<discovery_rules/>
|
||||
<httptests/>
|
||||
<macros/>
|
||||
<templates/>
|
||||
<screens/>
|
||||
</template>
|
||||
</templates>
|
||||
<triggers>
|
||||
<trigger>
|
||||
<expression>{APP - PHP-FPM7:proc.num[php-fpm7,,,].last()}=0</expression>
|
||||
<recovery_mode>0</recovery_mode>
|
||||
<recovery_expression/>
|
||||
<name>PHP-FPM is down</name>
|
||||
<correlation_mode>0</correlation_mode>
|
||||
<correlation_tag/>
|
||||
<url/>
|
||||
<status>0</status>
|
||||
<priority>4</priority>
|
||||
<description>PHP-FPM process count: 0</description>
|
||||
<type>0</type>
|
||||
<manual_close>0</manual_close>
|
||||
<dependencies/>
|
||||
<tags/>
|
||||
</trigger>
|
||||
</triggers>
|
||||
<graphs>
|
||||
<graph>
|
||||
<name>php-fpm processes</name>
|
||||
<width>900</width>
|
||||
<height>200</height>
|
||||
<yaxismin>0.0000</yaxismin>
|
||||
<yaxismax>100.0000</yaxismax>
|
||||
<show_work_period>1</show_work_period>
|
||||
<show_triggers>1</show_triggers>
|
||||
<type>0</type>
|
||||
<show_legend>1</show_legend>
|
||||
<show_3d>0</show_3d>
|
||||
<percent_left>0.0000</percent_left>
|
||||
<percent_right>0.0000</percent_right>
|
||||
<ymin_type_1>0</ymin_type_1>
|
||||
<ymax_type_1>0</ymax_type_1>
|
||||
<ymin_item_1>0</ymin_item_1>
|
||||
<ymax_item_1>0</ymax_item_1>
|
||||
<graph_items>
|
||||
<graph_item>
|
||||
<sortorder>0</sortorder>
|
||||
<drawtype>0</drawtype>
|
||||
<color>00C800</color>
|
||||
<yaxisside>0</yaxisside>
|
||||
<calc_fnc>2</calc_fnc>
|
||||
<type>0</type>
|
||||
<item>
|
||||
<host>APP - PHP-FPM7</host>
|
||||
<key>php-fpm.status[active-processes]</key>
|
||||
</item>
|
||||
</graph_item>
|
||||
<graph_item>
|
||||
<sortorder>1</sortorder>
|
||||
<drawtype>0</drawtype>
|
||||
<color>C80000</color>
|
||||
<yaxisside>0</yaxisside>
|
||||
<calc_fnc>2</calc_fnc>
|
||||
<type>0</type>
|
||||
<item>
|
||||
<host>APP - PHP-FPM7</host>
|
||||
<key>php-fpm.status[idle-processes]</key>
|
||||
</item>
|
||||
</graph_item>
|
||||
<graph_item>
|
||||
<sortorder>2</sortorder>
|
||||
<drawtype>0</drawtype>
|
||||
<color>0000C8</color>
|
||||
<yaxisside>0</yaxisside>
|
||||
<calc_fnc>2</calc_fnc>
|
||||
<type>0</type>
|
||||
<item>
|
||||
<host>APP - PHP-FPM7</host>
|
||||
<key>php-fpm.status[max-active-processes]</key>
|
||||
</item>
|
||||
</graph_item>
|
||||
<graph_item>
|
||||
<sortorder>3</sortorder>
|
||||
<drawtype>0</drawtype>
|
||||
<color>C800C8</color>
|
||||
<yaxisside>0</yaxisside>
|
||||
<calc_fnc>2</calc_fnc>
|
||||
<type>0</type>
|
||||
<item>
|
||||
<host>APP - PHP-FPM7</host>
|
||||
<key>php-fpm.status[total-processes]</key>
|
||||
</item>
|
||||
</graph_item>
|
||||
</graph_items>
|
||||
</graph>
|
||||
<graph>
|
||||
<name>php-fpm slow requests</name>
|
||||
<width>900</width>
|
||||
<height>200</height>
|
||||
<yaxismin>0.0000</yaxismin>
|
||||
<yaxismax>100.0000</yaxismax>
|
||||
<show_work_period>1</show_work_period>
|
||||
<show_triggers>1</show_triggers>
|
||||
<type>0</type>
|
||||
<show_legend>1</show_legend>
|
||||
<show_3d>0</show_3d>
|
||||
<percent_left>0.0000</percent_left>
|
||||
<percent_right>0.0000</percent_right>
|
||||
<ymin_type_1>0</ymin_type_1>
|
||||
<ymax_type_1>0</ymax_type_1>
|
||||
<ymin_item_1>0</ymin_item_1>
|
||||
<ymax_item_1>0</ymax_item_1>
|
||||
<graph_items>
|
||||
<graph_item>
|
||||
<sortorder>0</sortorder>
|
||||
<drawtype>0</drawtype>
|
||||
<color>00C800</color>
|
||||
<yaxisside>0</yaxisside>
|
||||
<calc_fnc>2</calc_fnc>
|
||||
<type>0</type>
|
||||
<item>
|
||||
<host>APP - PHP-FPM7</host>
|
||||
<key>php-fpm.status[slow-requests]</key>
|
||||
</item>
|
||||
</graph_item>
|
||||
</graph_items>
|
||||
</graph>
|
||||
<graph>
|
||||
<name>php listen queue</name>
|
||||
<width>900</width>
|
||||
<height>200</height>
|
||||
<yaxismin>0.0000</yaxismin>
|
||||
<yaxismax>100.0000</yaxismax>
|
||||
<show_work_period>1</show_work_period>
|
||||
<show_triggers>1</show_triggers>
|
||||
<type>0</type>
|
||||
<show_legend>1</show_legend>
|
||||
<show_3d>0</show_3d>
|
||||
<percent_left>0.0000</percent_left>
|
||||
<percent_right>0.0000</percent_right>
|
||||
<ymin_type_1>0</ymin_type_1>
|
||||
<ymax_type_1>0</ymax_type_1>
|
||||
<ymin_item_1>0</ymin_item_1>
|
||||
<ymax_item_1>0</ymax_item_1>
|
||||
<graph_items>
|
||||
<graph_item>
|
||||
<sortorder>0</sortorder>
|
||||
<drawtype>0</drawtype>
|
||||
<color>00C800</color>
|
||||
<yaxisside>0</yaxisside>
|
||||
<calc_fnc>2</calc_fnc>
|
||||
<type>0</type>
|
||||
<item>
|
||||
<host>APP - PHP-FPM7</host>
|
||||
<key>php-fpm.status[listen-queue]</key>
|
||||
</item>
|
||||
</graph_item>
|
||||
<graph_item>
|
||||
<sortorder>1</sortorder>
|
||||
<drawtype>0</drawtype>
|
||||
<color>C80000</color>
|
||||
<yaxisside>0</yaxisside>
|
||||
<calc_fnc>2</calc_fnc>
|
||||
<type>0</type>
|
||||
<item>
|
||||
<host>APP - PHP-FPM7</host>
|
||||
<key>php-fpm.status[listen-queue-len]</key>
|
||||
</item>
|
||||
</graph_item>
|
||||
<graph_item>
|
||||
<sortorder>2</sortorder>
|
||||
<drawtype>0</drawtype>
|
||||
<color>0000C8</color>
|
||||
<yaxisside>0</yaxisside>
|
||||
<calc_fnc>2</calc_fnc>
|
||||
<type>0</type>
|
||||
<item>
|
||||
<host>APP - PHP-FPM7</host>
|
||||
<key>php-fpm.status[max-listen-queue]</key>
|
||||
</item>
|
||||
</graph_item>
|
||||
</graph_items>
|
||||
</graph>
|
||||
</graphs>
|
||||
<value_maps>
|
||||
<value_map>
|
||||
<name>Service state</name>
|
||||
<mappings>
|
||||
<mapping>
|
||||
<value>0</value>
|
||||
<newvalue>Down</newvalue>
|
||||
</mapping>
|
||||
<mapping>
|
||||
<value>1</value>
|
||||
<newvalue>Up</newvalue>
|
||||
</mapping>
|
||||
</mappings>
|
||||
</value_map>
|
||||
</value_maps>
|
||||
</zabbix_export>
|
||||
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,515 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<zabbix_export>
|
||||
<version>3.4</version>
|
||||
<date>2018-02-02T19:04:27Z</date>
|
||||
<groups>
|
||||
<group>
|
||||
<name>Discovered Containers</name>
|
||||
</group>
|
||||
<group>
|
||||
<name>Templates</name>
|
||||
</group>
|
||||
</groups>
|
||||
<templates>
|
||||
<template>
|
||||
<template>Service - ICMP</template>
|
||||
<name>Service - ICMP (Ping)</name>
|
||||
<description/>
|
||||
<groups>
|
||||
<group>
|
||||
<name>Templates</name>
|
||||
</group>
|
||||
</groups>
|
||||
<applications>
|
||||
<application>
|
||||
<name>ICMP</name>
|
||||
</application>
|
||||
</applications>
|
||||
<items>
|
||||
<item>
|
||||
<name>ICMP ping</name>
|
||||
<type>3</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>icmpping</key>
|
||||
<delay>1m</delay>
|
||||
<history>1w</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>3</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description/>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>ICMP</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap>
|
||||
<name>Service state</name>
|
||||
</valuemap>
|
||||
<logtimefmt/>
|
||||
<preprocessing/>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
<item>
|
||||
<name>ICMP loss</name>
|
||||
<type>3</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>icmppingloss</key>
|
||||
<delay>1m</delay>
|
||||
<history>1w</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>0</value_type>
|
||||
<allowed_hosts/>
|
||||
<units>%</units>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description/>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>ICMP</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing/>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
<item>
|
||||
<name>ICMP response time</name>
|
||||
<type>3</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>icmppingsec</key>
|
||||
<delay>1m</delay>
|
||||
<history>1w</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>0</value_type>
|
||||
<allowed_hosts/>
|
||||
<units>s</units>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description/>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>ICMP</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing/>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
</items>
|
||||
<discovery_rules/>
|
||||
<httptests/>
|
||||
<macros/>
|
||||
<templates/>
|
||||
<screens/>
|
||||
</template>
|
||||
<template>
|
||||
<template>Zabbix - Container Agent</template>
|
||||
<name>Zabbix - Container Agent</name>
|
||||
<description/>
|
||||
<groups>
|
||||
<group>
|
||||
<name>Discovered Containers</name>
|
||||
</group>
|
||||
<group>
|
||||
<name>Templates</name>
|
||||
</group>
|
||||
</groups>
|
||||
<applications>
|
||||
<application>
|
||||
<name>Packages</name>
|
||||
</application>
|
||||
<application>
|
||||
<name>Zabbix agent</name>
|
||||
</application>
|
||||
</applications>
|
||||
<items>
|
||||
<item>
|
||||
<name>Hostname of Container</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>agent.hostname</key>
|
||||
<delay>1h</delay>
|
||||
<history>1w</history>
|
||||
<trends>0</trends>
|
||||
<status>0</status>
|
||||
<value_type>1</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description/>
|
||||
<inventory_link>3</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>Zabbix agent</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing/>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
<item>
|
||||
<name>Contaner OS</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>agent.os</key>
|
||||
<delay>6h</delay>
|
||||
<history>30d</history>
|
||||
<trends>0</trends>
|
||||
<status>0</status>
|
||||
<value_type>1</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description/>
|
||||
<inventory_link>5</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>Zabbix agent</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing/>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
<item>
|
||||
<name>Zabbix Agent ping</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>agent.ping</key>
|
||||
<delay>1m</delay>
|
||||
<history>1w</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>3</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description>The agent always returns 1 for this item. It could be used in combination with nodata() for availability check.</description>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>Zabbix agent</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap>
|
||||
<name>Zabbix agent ping status</name>
|
||||
</valuemap>
|
||||
<logtimefmt/>
|
||||
<preprocessing/>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
<item>
|
||||
<name>Zabbix Agent Version</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>agent.version</key>
|
||||
<delay>1h</delay>
|
||||
<history>1w</history>
|
||||
<trends>0</trends>
|
||||
<status>0</status>
|
||||
<value_type>1</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description/>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>Zabbix agent</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing/>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
<item>
|
||||
<name>Upgradable Packages</name>
|
||||
<type>0</type>
|
||||
<snmp_community/>
|
||||
<snmp_oid/>
|
||||
<key>packages.upgradable</key>
|
||||
<delay>6h</delay>
|
||||
<history>90d</history>
|
||||
<trends>365d</trends>
|
||||
<status>0</status>
|
||||
<value_type>3</value_type>
|
||||
<allowed_hosts/>
|
||||
<units/>
|
||||
<snmpv3_contextname/>
|
||||
<snmpv3_securityname/>
|
||||
<snmpv3_securitylevel>0</snmpv3_securitylevel>
|
||||
<snmpv3_authprotocol>0</snmpv3_authprotocol>
|
||||
<snmpv3_authpassphrase/>
|
||||
<snmpv3_privprotocol>0</snmpv3_privprotocol>
|
||||
<snmpv3_privpassphrase/>
|
||||
<params/>
|
||||
<ipmi_sensor/>
|
||||
<authtype>0</authtype>
|
||||
<username/>
|
||||
<password/>
|
||||
<publickey/>
|
||||
<privatekey/>
|
||||
<port/>
|
||||
<description/>
|
||||
<inventory_link>0</inventory_link>
|
||||
<applications>
|
||||
<application>
|
||||
<name>Packages</name>
|
||||
</application>
|
||||
</applications>
|
||||
<valuemap/>
|
||||
<logtimefmt/>
|
||||
<preprocessing/>
|
||||
<jmx_endpoint/>
|
||||
<master_item/>
|
||||
</item>
|
||||
</items>
|
||||
<discovery_rules/>
|
||||
<httptests/>
|
||||
<macros/>
|
||||
<templates/>
|
||||
<screens/>
|
||||
</template>
|
||||
</templates>
|
||||
<triggers>
|
||||
<trigger>
|
||||
<expression>{Service - ICMP:icmpping.max(3m)}=3</expression>
|
||||
<recovery_mode>0</recovery_mode>
|
||||
<recovery_expression/>
|
||||
<name>Cannot be pinged</name>
|
||||
<correlation_mode>0</correlation_mode>
|
||||
<correlation_tag/>
|
||||
<url/>
|
||||
<status>0</status>
|
||||
<priority>5</priority>
|
||||
<description/>
|
||||
<type>0</type>
|
||||
<manual_close>0</manual_close>
|
||||
<dependencies/>
|
||||
<tags/>
|
||||
</trigger>
|
||||
<trigger>
|
||||
<expression>{Service - ICMP:icmppingloss.min(10m)}>50</expression>
|
||||
<recovery_mode>0</recovery_mode>
|
||||
<recovery_expression/>
|
||||
<name>Ping loss is too high</name>
|
||||
<correlation_mode>0</correlation_mode>
|
||||
<correlation_tag/>
|
||||
<url/>
|
||||
<status>0</status>
|
||||
<priority>4</priority>
|
||||
<description/>
|
||||
<type>0</type>
|
||||
<manual_close>0</manual_close>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<name>Cannot be pinged</name>
|
||||
<expression>{Service - ICMP:icmpping.max(3m)}=3</expression>
|
||||
<recovery_expression/>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<tags/>
|
||||
</trigger>
|
||||
<trigger>
|
||||
<expression>{Service - ICMP:icmppingsec.avg(2m)}>100</expression>
|
||||
<recovery_mode>0</recovery_mode>
|
||||
<recovery_expression/>
|
||||
<name>Ping Response time is too high</name>
|
||||
<correlation_mode>0</correlation_mode>
|
||||
<correlation_tag/>
|
||||
<url/>
|
||||
<status>0</status>
|
||||
<priority>4</priority>
|
||||
<description/>
|
||||
<type>1</type>
|
||||
<manual_close>0</manual_close>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<name>Cannot be pinged</name>
|
||||
<expression>{Service - ICMP:icmpping.max(3m)}=3</expression>
|
||||
<recovery_expression/>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
<tags/>
|
||||
</trigger>
|
||||
<trigger>
|
||||
<expression>{Zabbix - Container Agent:packages.upgradable.last()}>0</expression>
|
||||
<recovery_mode>0</recovery_mode>
|
||||
<recovery_expression/>
|
||||
<name>Upgraded Packages in Container Available</name>
|
||||
<correlation_mode>0</correlation_mode>
|
||||
<correlation_tag/>
|
||||
<url/>
|
||||
<status>0</status>
|
||||
<priority>1</priority>
|
||||
<description/>
|
||||
<type>0</type>
|
||||
<manual_close>0</manual_close>
|
||||
<dependencies/>
|
||||
<tags/>
|
||||
</trigger>
|
||||
<trigger>
|
||||
<expression>{Zabbix - Container Agent:agent.ping.nodata(3m)}=1</expression>
|
||||
<recovery_mode>0</recovery_mode>
|
||||
<recovery_expression/>
|
||||
<name>Zabbix agent is unreachable</name>
|
||||
<correlation_mode>0</correlation_mode>
|
||||
<correlation_tag/>
|
||||
<url/>
|
||||
<status>0</status>
|
||||
<priority>5</priority>
|
||||
<description/>
|
||||
<type>0</type>
|
||||
<manual_close>0</manual_close>
|
||||
<dependencies/>
|
||||
<tags/>
|
||||
</trigger>
|
||||
</triggers>
|
||||
<value_maps>
|
||||
<value_map>
|
||||
<name>Service state</name>
|
||||
<mappings>
|
||||
<mapping>
|
||||
<value>0</value>
|
||||
<newvalue>Down</newvalue>
|
||||
</mapping>
|
||||
<mapping>
|
||||
<value>1</value>
|
||||
<newvalue>Up</newvalue>
|
||||
</mapping>
|
||||
</mappings>
|
||||
</value_map>
|
||||
<value_map>
|
||||
<name>Zabbix agent ping status</name>
|
||||
<mappings>
|
||||
<mapping>
|
||||
<value>1</value>
|
||||
<newvalue>Up</newvalue>
|
||||
</mapping>
|
||||
</mappings>
|
||||
</value_map>
|
||||
</value_maps>
|
||||
</zabbix_export>
|
||||
Loading…
Reference in new issue