Skip to content

Latest commit

 

History

History
145 lines (83 loc) · 9.25 KB

README.md

File metadata and controls

145 lines (83 loc) · 9.25 KB

Community Project header

NOTE: We recently changed this repository from newrelic-observability-packs to newrelic-quickstarts to better align with the project goals. If any of your services are reliant on this repo they will need to be checked and altered.

New Relic One quickstarts

Only users with full platform access can use the dashboards installed with a quickstart.

New Relic One quickstarts help accelerate your New Relic journey by providing immediate value for your specific use cases. They include:

  • Clear instructions for instrumenting your services
  • Observability building blocks like dashboards and alerts

All of this is available through our Instant Observability open source ecosystem where New Relic developers, partners, and customers contribute their best-practice solutions.

New Relic One Instant Observability

Looking for inspiration?

You can search for all the available quickstarts in the New Relic Instant Observability catalog.

Quickstart components

📊 Dashboards

With New Relic One dashboards you can customize and understand the data you collect. Explore your data and correlate connected sources with tailored, user-friendly charts, and quickly learn the state of your system and applications for faster, more efficient troubleshooting.

You can't copy/paste a dashboard's json directly from the repository to create a dashboard within New Relic. Use the sanitize-dashboard script to remove any unneeded keys within the .json file, as well as setting the accountId to 0.

  1. Ensure you're using Node.js version 16, nvm is a great tool to help you get the right Node.js versions.
  2. run yarn install, if you do not have yarn, this link will help!
  3. cd into the 'utils' directory.
  4. EX: yarn sanitize-dashboard node-js/express where the argument is the path to the dashboard directory. The script will handle the rest.

📟 Alerts

Alerts lets you set up robust and customizable alert policies for anything that you can monitor. Receive notifications for fluctuations in key performance metrics as data streams in from all of our products, including APM, infrastructure, browser, mobile, and NRQL queries.

💽 Data Sources

Data Sources are the many sources of data you can setup with New Relic to collect and monitor data.

🔮 Future

Our road map for quickstarts includes the addition of Synthetics monitoring, NerdPacks and Flex configurations.

Getting Started

Contribute your own quickstart to the New Relic One catalog by following the steps below:

  1. Fork the Github repository

  2. Clone your own repository to your local machine

  3. Copy the _template directory and its content to a new directory within the quickstarts folder. Choose a name which identifies the purpose of your quickstart, such as rabbitmq, apm-errors, sre, or aws-s3

  4. In your new directory, you'll find the following folders: dashboards, alerts and images. Each folder contains a template or template directories that you can use to create entities for your quickstart.

  • For example, to add an existing dashboard to your quickstart, copy the dashboard's JSON, and save it as a JSON file in the dashboards directory. Next, create a screenshot of your dashboard, add it to dashboards, and give it the same name as your JSON file.

  • You can add multiple JSON files and screenshots to dashboards. Pair each screenshot with a JSON file by using the same file name. If you want multiple screenshots for a dashboard, add a number at the end of the file name. So, your dashboards folder might contain:

    - `rabbitmq.json`
    - `rabbitmq.png` or `rabbitmq.jpeg`
    - `rabbitmq01.png`
    - `rabbitmq02.png`
    
  • The images folder should contain images you want to display within a markdown widget on your Dashboard. An example of this would be the Python quickstart which includes image widgets defined using markdown. For more information on this see our docs on creating widgets containing markdown text

  • When adding alerts to your quickstart, using NerdGraph can assist you with adding existing alert configurtions to your yaml files.

  • This process is similar for all other entity directories. Also, if you don't want to create entities for a given type, delete the corresponding directory.

  1. In your quickstart's root directory, you'll find a config.yml file where you can configure your quickstart. Refer to our Contributing Guide for more details on quickstart configurations.

  2. Commit your changes using the Conventional Commit syntax:

    git add -A
    git commit -m "feat([name]): Added [name]"
  3. Push your changes to Github:

    git push
  4. Create a pull request in the parent repository.

  5. Submit and wait for review. Please be available to resolve review feedback in a timely manner.

NOTE: All contributions are public and available for use by others. When contributing, make sure the NRQL queries you use match the datasets the users have. You don't want to use NRQL queries with sensitive data.

Testing

Importer

WARNING: The importer is for testing only and might change or be removed in the future. You can still use it today for testing, but it is not meant to be used in a production environment.

We've included an importer utility for testing quickstarts on your account. You can run this using the included import.sh script.

Note: The importer spins up a docker container, so you must have docker installed and running for this to function

  1. Modify importer-config.sh with your account number and New Relic API Key

  2. Run import.sh from the root of this project:

    # Usage:
    ./import.sh $QUICKSTART_NAME
    
    # Example
    > ./import.sh mysql

    If your quickstart is in a sub-directory please include that too for example python/flask

 # Example
 > ./import.sh python/flask

Support

New Relic hosts and moderates an online forum where customers can interact with New Relic employees as well as other customers to get help and share best practices. Like all official New Relic open source projects, there's a related Community topic in the New Relic Explorers Hub. You can find this project's topic/threads here:

Contribute

If you would like to contribute to this project, review these guidelines.

We encourage your contributions to improve New Relic One quickstarts! Keep in mind that when you submit your pull request, you'll need to sign the CLA via the click-through using CLA-Assistant. You only have to sign the CLA one time per project.

If you have any questions, or to execute our corporate CLA (which is required if your contribution is on behalf of a company), drop us an email at [email protected].

A note about vulnerabilities

As noted in our security policy, New Relic is committed to the privacy and security of our customers and their data. We believe that providing coordinated disclosure by security researchers and engaging with the security community are important means to achieve our security goals.

If you believe you have found a security vulnerability in this project or any of New Relic's products or websites, we welcome and greatly appreciate you reporting it to New Relic through HackerOne.

License

New Relic One quickstarts is licensed under the Apache 2.0 License.