At Infiniroot we've been using Invoice Ninja for the last couple of years for automated invoicing, including Swiss Payments Code (SPC) and Swiss QR-Bill (QR Code) implementation. For all this we use Invoice Ninja with a so-called "White Label License", which removes the Invoice Ninja watermark from PDFs.
This white label license is usually valid for one year. In the user interface the remaining license period is showing up at the bottom, right next to the version:
However checking this manually is prone to errors and we needed to find a way to get automatically informed (alerted) when the licenses are about to expire.
One of our own strong suits is system and application monitoring using open source tools. So why not use this knowledge and create a dedicated monitoring plugin for Invoice Ninja? Well, that's what we did.
check_invoiceninja is a monitoring plugin which (as of now) checks the validity of an installed white label license in Invoice Ninja. It uses the information of the installed license from Invoice Ninja's database (table companies) and allows to set a warning threshold in days. This means that, integrated into your existing monitoring solution, the plugin will inform you about a license soon to be expired.
Running the plugin now shows the exact remaining time of the license. If the license is about to expire within 24 hours, the plugin will show the remaining valid hours:
$ /usr/lib/nagios/plugins/check_invoiceninja.sh -H localhost -u monitoring -d invoiceninja -p secret
INVOICENINJA WARNING - white_label license will expire in 12 hours
Otherwise the plugin shows the remaining days:
$ /usr/lib/nagios/plugins/check_invoiceninja.sh -H localhost -u monitoring -d invoiceninja -p secret
INVOICENINJA OK - white_label license will expire in 221 days
With the -w parameter, a warning threshold in days (here 230 days) can be defined:
$ /usr/lib/nagios/plugins/check_invoiceninja.sh -H localhost -u irmonitoring -d invoiceninja -p secret -w 230
INVOICENINJA WARNING - white_label license will expire in 221 days
You can download and use the monitoring plugin for free from the public check_invoiceninja code repository on GitHub.
No comments yet.
AWS Android Ansible Apache Apple Atlassian BSD Backup Bash Bluecoat CMS Chef Cloud Coding Consul Containers CouchDB DB DNS Database Databases Docker ELK Elasticsearch Filebeat FreeBSD Galera Git GlusterFS Grafana Graphics HAProxy HTML Hacks Hardware Icinga Influx Internet Java KVM Kibana Kodi Kubernetes LVM LXC Linux Logstash Mac Macintosh Mail MariaDB Minio MongoDB Monitoring Multimedia MySQL NFS Nagios Network Nginx OSSEC OTRS Office OpenSearch PGSQL PHP Perl Personal PostgreSQL Postgres PowerDNS Proxmox Proxy Python Rancher Rant Redis Roundcube SSL Samba Seafile Security Shell SmartOS Solaris Surveillance Systemd TLS Tomcat Ubuntu Unix VMWare VMware Varnish Virtualization Windows Wireless Wordpress Wyse ZFS Zoneminder