Skip to main content

(unofficial) NewRelic Synthetics CLI

Project description

NewRelic Synthetics (unofficial) CLI (NeReS)
============================================

|image0| |image1| |image2|

NeReS is a cli tool to manage `NewRelic Synthetics
<https://synthetics.newrelic.com/>`__ monitors with a Synthetics Lite account
(Pro should work too). The tool emulates the actions of a user in the browser
and doesn't use the Synthetics API since that's only available to the Pro
accounts.

With this tool you can:

- List all your monitors, including their success rate, locations,
notifications etc.
- Create, update and delete monitors
- List available locations for monitor installation and
- everything else available though the Web console.

|image3|


Installation
------------

.. code:: shell

$ pip install neres



Configuration
-------------

1. You will need a newrelic account
2. Start by using the `login` command
3. Read the docs or run `--help`


Use
---

Login to NewRelic
~~~~~~~~~~~~~~~~~~

Login to NewRelic with the `login` command:

.. code:: shell

$ neres login

If you have multiple NewRelic accounts you can have different environments:

.. code:: shell

$ neres --environment work login

.. note::

Default environment is named `newrelic`. Remember to always pass `--environment`
to all neres commands to execute them in the correct environment. Alternatively
you can add `NERES_ENVIRONMENT` to your environment variables list.


List Accounts
~~~~~~~~~~~~~

You can list all the accounts connected to the email you used to connect using:

.. code:: shell

$ neres list-accounts

By default neres will act on the first account listed. This command will help
you select a different account by using the `ID` of the account in combination
with the `--account` option or by setting `NERES_ACCOUNT` in your environment.

List Locations
~~~~~~~~~~~~~~

Lists available monitor locations:

.. code:: shell

$ neres list-locations

List Monitors
~~~~~~~~~~~~~

Lists available monitors:

.. code:: shell

$ neres list-monitors

You can only list IDs of the monitors:

.. code:: shell

$ neres list-monitors --ids-only

Or get the raw JSON output from NewRelic:

.. code:: shell

$ neres list-monitors --raw

Add Monitor
~~~~~~~~~~~

Adds a Synthetics monitor:

.. code:: shell

$ neres add-monitor monitorName http://example.com

Use `--help` to get a full list of supported options for the command. All
options are optional.


Get Monitor
~~~~~~~~~~~

Get details on a monitor

.. code:: shell

$ neres get-monitor de310b69-3195-435e-b1ef-3a0af67499de


.. note::

You can use `list-monitors` to get a list of available monitors.

Update Monitor
~~~~~~~~~~~~~~

Update an existing monitor

.. code:: shell

$ neres update-monitor de310b69-3195-435e-b1ef-3a0af67499de --name "Foobar"

Use `--help` to get a full list of supported options for the command. All
options are optional.


Open Monitor
~~~~~~~~~~~~

Open monitor in the browser

.. code:: shell

$ neres open de310b69-3195-435e-b1ef-3a0af67499de


Get state of all monitors of account
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Export the state of all monitors of account in YAML format with

.. code:: shell

$ neres get-state


Save the output into a file, edit and use in combination with the
`update-from-statefile` command to update multiple monitors at once.

.. code:: shell

$ neres get-state > state.yaml


Update monitors from statefile
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Update monitors from statefile with

.. code:: shell

$ neres update-from-statefile state.yaml


.. note::

This command will only update existing monitors. It will not create new or
delete existing ones.


Credits
-------

This package was created with
`Cookiecutter <https://github.com/audreyr/cookiecutter>`__ and the
`audreyr/cookiecutter-pypackage <https://github.com/audreyr/cookiecutter-pypackage>`__
project template.

.. |image0| image:: https://img.shields.io/pypi/v/neres.svg
.. |image1| image:: https://travis-ci.org/glogiotatidis/neres.svg?branch=master
.. |image2| image:: https://pyup.io/repos/github/glogiotatidis/neres/shield.svg
.. |image3| image:: https://asciinema.org/a/145685.png
:target: https://asciinema.org/a/145685


=======
History
=======

0.4.0 (2017-06-02)
------------------

* Use NewRelic's "stoplight" to determine monitor health.

0.3.0 (2017-05-25)
------------------

* Multiple monitors management with get-state and update-from-statefile
* Bug fixes


0.2.0 (2017-05-11)
------------------

* Python 3 fixes
* Bugfixes
* Tests!

0.1.1 (2017-04-27)
------------------

* First release on PyPI.

0.1.0 (2017-04-12)
------------------

* Cookiecutter import


Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

neres-0.4.3.tar.gz (23.7 kB view details)

Uploaded Source

Built Distribution

neres-0.4.3-py2.py3-none-any.whl (14.9 kB view details)

Uploaded Python 2Python 3

File details

Details for the file neres-0.4.3.tar.gz.

File metadata

  • Download URL: neres-0.4.3.tar.gz
  • Upload date:
  • Size: 23.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for neres-0.4.3.tar.gz
Algorithm Hash digest
SHA256 cfa5c9f69854a4e6b2ae16c29a173788408820da8f0e0ebeb1788a762ed1418c
MD5 152bd823ca4642678e5f3c6012c01c71
BLAKE2b-256 a750407c1fb3a77530379bf611ffb4397ec86fe38e7d9598da1c1f4f77545184

See more details on using hashes here.

File details

Details for the file neres-0.4.3-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for neres-0.4.3-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 70d85fbd8097721df7cd360005276f5e6a94a245278e102855dcfd1df928a08e
MD5 fb92aef3ec595f8ad9a70338bda54892
BLAKE2b-256 1e8f0fb0ace0d5bc57c3e5eceb873d076ea7aebf3f36ddd6cdb5601fde9aa1c5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page