diff --git a/src/images/instant-observability/create-dashboard.png b/src/images/instant-observability/create-dashboard.png
index 7aae34203..5a41e43b6 100644
Binary files a/src/images/instant-observability/create-dashboard.png and b/src/images/instant-observability/create-dashboard.png differ
diff --git a/src/images/instant-observability/newrelic-homepage.png b/src/images/instant-observability/newrelic-homepage.png
new file mode 100644
index 000000000..c2a4faaf8
Binary files /dev/null and b/src/images/instant-observability/newrelic-homepage.png differ
diff --git a/src/markdown-pages/instant-observability/build-a-quickstart/create-a-dashboard.mdx b/src/markdown-pages/instant-observability/build-a-quickstart/create-a-dashboard.mdx
index 9e016f79c..dd72a740a 100644
--- a/src/markdown-pages/instant-observability/build-a-quickstart/create-a-dashboard.mdx
+++ b/src/markdown-pages/instant-observability/build-a-quickstart/create-a-dashboard.mdx
@@ -8,54 +8,65 @@ duration: '15 min'
-This procedure is a part of lab that teaches you how to build a quickstart. If you haven't already, checkout the [_Lab introduction_](/instant-observability/build-a-quickstart)
+This procedure is a part of lab that teaches you how to build a quickstart. If you haven't already, checkout the [_lab introduction_](/instant-observability/build-a-quickstart)
-Each procedure in this lab builds on top of the last one, so make sure you [_deploy your application_](/instant-observability/build-a-quickstart/deploy-your-application) before proceeding with this one.
+Each procedure in this lab builds on top of the last one, so make sure you [_Deploy your application_](/instant-observability/build-a-quickstart/deploy-your-application) before proceeding with this one.
-New Relic One dashboards allow you to quickly observe and make meaning of the information that you collect. You can gather and chart the specific data you want to see and customize it the way you want to see.
+With New Relic dashboards, you observe and interpret the data you collect from your application. You gather the data you want to see into charts to customize the way you see it.
+
+In this procedure, you create a dashboard in New Relic.
+
+## Create a dashboard
+
+Navigate to [New Relic](https://one.newrelic.com/) and sign in with your account. Here, you see different tabs such as **Browse Data**, **Dashboards**, **Alerts & AI**.
+
+![New Relic UI](../../../images/instant-observability/newrelic-homepage.png)
-You're going to create dashboard in New Relic One. Navigate to https://one.newrelic.com/ and sign in with your account. Here, you can see different tabs such as **Browse Data**, **Dashboards**, **Alerts & AI** etc.
Move to **Dashboards** and click **Create a dashboard** in the top right corner.
![create a dashboard](../../../images/instant-observability/create-dashboard.png)
-Name your dashboard **FlashDB** and click create.
+Name your dashboard "FlashDB" and click create.
![name your dashboard](../../../images/instant-observability/name-dashboard.png)
## Add charts to your dashboard
-Once the dashboard is in place, you can start creating charts. You're going to add the folloiwng charts:
+Once the dashboard is in place, you can start creating charts. You're going to add the following charts:
- Database methods
-- Avergae response time
+- Average response time
- Errors
- Database size
- Cache hits
- Keys
+### Database methods
+
Hover over the dashboard and click **Add a new chart**.
![add a new chart](../../../images/instant-observability/add-new-chart.png)
-New Relic One allow you to add charts using query builder or you can choose to add text, images or links using Markdown. Click **Add a chart**.
+From this screen, you add charts using our query builder, or you choose to add text, images, or links using Markdown. Click **Add a chart**.
![add a chart](../../../images/instant-observability/add-a-chart.png)
-It will take you to a query builder option. Edit the query as follow:
+It takes you to a query builder option. Switch to the NRQL editor and edit the query as follows:
->```SQL
->SELECT count(*) FROM fdb_method FACET method
->```
+```sql
+SELECT count(*) FROM fdb_method FACET method
+```
![database methods chart](../../../images/instant-observability/fdb-methods.png)
-Here, you group your results of FlashDB methods by attribute values and see the count of each type of transaction. You can choose to present your results in different formats such as table, billboard, pie chart etc.
+Click **Run** to see above results.
+
+Here, you see the count of each FlashDB query, grouped by method. You can choose to present your results in different formats such as table, billboard, or pie chart.
![chart formats](../../../images/instant-observability/chart-formats.png)
-Change the chart type to pie, name your chart and click save.
+Change the chart type to pie, name your chart "Database methods", and click save.
![pie chart](../../../images/instant-observability/piechart.png)
@@ -63,51 +74,54 @@ The chart is now visible on your dashboard.
![piechart dashboard](../../../images/instant-observability/piechart-dashboard.png)
-
You can add more charts to your dashboard following the same pattern. To do so, click **+** in upper right hand corner.
![add more charts](../../../images/instant-observability/add-more-charts.png)
-This will take you to the same _Add to your dashboard_ page, allowing you to add another chart, text, image or links. Add a few more charts to your dashboard as follow:
+This takes you to the same **Add to your dashboard** page. Add another chart to your dashboard.
### Average response time
-Run the following query to observe the **average response time** of database transactions.
-
->```SQL
-> SELECT average(fdb_create_responses), average(fdb_read_responses), average(fdb_update_responses), average(fdb_delete_responses) FROM Metric SINCE 30 MINUTES AGO TIMESERIES
->```
+Run the following query to observe the **average response time** of flashDB queries.
-![average response time chart](../../../images/instant-observability/average-response-time.png )
+```sql
+SELECT average(fdb_create_responses), average(fdb_read_responses), average(fdb_update_responses), average(fdb_delete_responses) FROM Metric SINCE 30 MINUTES AGO TIMESERIES
+```
->**Note:** Make sure to click **Run** to see above results.
+![average response time chart](../../../images/instant-observability/average-response-time.png )
-Here, you observe average response time for different transactions for past 30 minutes. Click save to add this chart to your dashboard as well. Follow the same procedure to add the following charts as well.
+Here, you the observe average response time for different flashDB queries for past 30 minutes. Click **Save** to add this chart to your dashboard. Follow the same procedure to add the rest of the charts.
### Errors
->```SQL
-> SELECT sum(fdb_create_errors), sum(fdb_read_errors), sum(fdb_update_errors), sum(fdb_delete_errors) FROM Metric SINCE 60 MINUTES AGO TIMESERIES
->```
+For the Errors chart, use the following query:
+
+```sql
+SELECT sum(fdb_create_errors), sum(fdb_read_errors), sum(fdb_update_errors), sum(fdb_delete_errors) FROM Metric SINCE 60 MINUTES AGO TIMESERIES
+```
-Here, you observe errors for all database transactions for past one hour.
+Here, you observe errors for all database transactions for the past one hour.
![errors chart](../../../images/instant-observability/errors.png )
### Database size
->```SQL
-> SELECT sum(mdb_size) FROM Metric
->```
+Use the following query to get Database size chart.
+
+```sql
+SELECT sum(mdb_size) FROM Metric
+```
![database size chart](../../../images/instant-observability/database-size.png )
-This chart will show you the database size.
+This chart shows you the database size.
### Cache hits
->```SQL
-> SELECT sum(fdb_cache_hits) FROM Metric SINCE 30 MINUTES AGO TIMESERIES
->```
+For the cache hits charts, use the following query:
+
+```sql
+SELECT sum(fdb_cache_hits) FROM Metric SINCE 30 MINUTES AGO TIMESERIES
+```
![cache hits chart](../../../images/instant-observability/cache-hits.png )
@@ -115,21 +129,23 @@ Here, you observe the total number of cache hits for past 30 minutes using line
### Keys
->```SQL
-> SELECT count(fdb_keys) FROM Metric SINCE 5 MINUTES AGO TIMESERIES
->```
+Use the following query to get keys chart.
+
+```sql
+SELECT count(fdb_keys) FROM Metric SINCE 5 MINUTES AGO TIMESERIES
+```
![keys chart](../../../images/instant-observability/keys.png )
Here, you observe the flashDB key count for past 5 minutes.
-You can manipulate the above queries and change time window to focus on the data that you want to observe. Your final dashboard will look similar to the following:
+Your final dashboard will look similar to the following:
![dashboard with charts](../../../images/instant-observability/dashboard-final.png )
## Summary
-Following this procedure, you created a dashboard and added multiple charts to it to observe your services in New Relic One.
+In this procedure, you created a dashboard and added multiple charts to it to observe your services in New Relic.
diff --git a/src/markdown-pages/instant-observability/build-a-quickstart/create-a-quickstart.mdx b/src/markdown-pages/instant-observability/build-a-quickstart/create-a-quickstart.mdx
index b38944bc3..ddea0ee85 100644
--- a/src/markdown-pages/instant-observability/build-a-quickstart/create-a-quickstart.mdx
+++ b/src/markdown-pages/instant-observability/build-a-quickstart/create-a-quickstart.mdx
@@ -10,7 +10,7 @@ duration: '30 min'
This procedure is a part of lab that teaches you how to build quickstart. If you haven't already, checkout the [_lab introduction_](/instant-observability/build-a-quickstart)
-As this procedure builds on top of the last ones in the lab, make you create a [dashboard](instant-observability/build-a-quickstart/create-a-dashboard) and [alerts](/instant-observability/build-a-quickstart/create-alerts) before proceeding with this one.
+As this procedure builds on top of the last ones in the lab, make sure you create a [dashboard](instant-observability/build-a-quickstart/create-a-dashboard) and [alerts](/instant-observability/build-a-quickstart/create-alerts) before proceeding with this one.
@@ -34,14 +34,14 @@ Copy the _\_template_ directory and it's content to a new directory within the _
![flashdb directory](../../../images/instant-observability/flashdb-directory.png)
-You're going to add existing dashboard to your quickstart. Move to your dashboard in New Relic One and copy its JSON. Then save it as a JSON file in the _dashboards_ directory.
+You're going to add existing dashboard to your quickstart. Move to your dashboard in New Relic and copy its JSON. Then save it as a JSON file in the _dashboards_ directory.
![dashboard'\s json](../../../images/instant-observability/json-dashboard.png)
-Here, you copied your dashboard's JSON to clipboard. Replace the content of existing JSON file in _dashboards_ directory and rename it as **flashDB.json**. Your _flashDB.json_ file should contain the following content:
+Here, you copied your dashboard's JSON to clipboard. Replace the content of existing JSON file in _dashboards_ directory and rename it as _flashDB.json_. Your _flashDB.json_ file should contain the following content:
->```json
-> {
+```json
+ {
"name": "FlashDB",
"description": null,
"permissions": "PUBLIC_READ_WRITE",
@@ -209,7 +209,7 @@ Here, you copied your dashboard's JSON to clipboard. Replace the content of exis
}
]
}
-> ```
+```
Next, create a screenshot of your dashboard and add it to _dashboards_ directory. Give it the same name as your JSON file. Your _dashboard_ directory should look similar to the following:
@@ -218,14 +218,16 @@ Next, create a screenshot of your dashboard and add it to _dashboards_ directory
## Add alerts to quickstart
Next, you add alerts to the quickstart. You're going to add existing static alerts to the quickstart. The _alerts_ directory contain the templates for static alerts.
-To help you populate your .yml alert files, you can use New Relic One's [Graphql API](https://api.newrelic.com/graphiql) to get the json object. Open the Graphql APi and select your account from the drop down.
+To help you populate your .yml alert files, you can use New Relic One's [Graphql API](https://api.newrelic.com/graphiql) to get the json object.
+
+Open the Graphql APi and select your account from the drop down.
![graphiql interface](../../../images/instant-observability/graphiql.png)
Building a query is simple in graphiql. Check the appropriate boxes to build the query in Graphql. Your query should be same as follows:
->```json
->{
+```js
+{
actor {
account(id: {_your account id_}) {
alerts {
@@ -249,61 +251,61 @@ Building a query is simple in graphiql. Check the appropriate boxes to build the
}
}
}
->
+```
Running the above query in Graphql will respond with the details of your alert condition that you can use to update your quickstart.
![cache hit ratio in graphql](../../../images/instant-observability/cache-hit-ratio-graphql.png)
For static condition, take the static-alert.yml file and start populating it using the information returned from above query.
-First, name the file as **Cache Hit Ratio.yml** and populate it as follow:
+First, name the file as **Cache Hit Ratio.yml** and populate it:
->```yml
-> ---
-># Name of the alert
+```yml
+---
+# Name of the alert
name: low cache hit ratio
->
-># Description and details
->details: |+
+
+# Description and details
+details: |+
This alert is triggered whenever the cache hit ratio for database is < 0.85.
The cache hit ratio can be measured simply by: # of cache hits/ # of total read responses.
Itrepresents the proportion of block requests satisfied by the cache without requiring a disk read.
A low cache hit score means that the database is inefficient.
->
-># Type of alert
->type: STATIC
->
-># NRQL query
->nrql:
-> query: "SELECT sum(fdb_cache_hits)/sum(fdb_read_responses) FROM Metric"
->
-># Function used to aggregate the NRQL query value(s) for comparison to the terms.threshold
->valueFunction: SINGLE_VALUE
->
-># List of Critical and Warning thresholds for the condition
->terms:
->- priority: CRITICAL
-> # Operator used to compare against the threshold.
-> operator: BELOW
-> # Value that triggers a violation
-> threshold: 0.75
-> # Time in seconds; 120 - 3600
-> thresholdDuration: 300
-> # How many data points must be in violation for the duration
-> thresholdOccurrences: ALL
->
-># Adding a Warning threshold is optional
->- priority: WARNING
-> operator: BELOW
-> threshold: 0.85
-> thresholdDuration: 300
-> thresholdOccurrences: ALL
->
-># Duration after which a violation automatically closes
-># Time in seconds; 300 - 2592000 (Default: 86400 [1 day])
->violationTimeLimitSeconds: 259200
->___
->```
+
+# Type of alert
+type: STATIC
+
+# NRQL query
+nrql:
+ query: "SELECT sum(fdb_cache_hits)/sum(fdb_read_responses) FROM Metric"
+
+# Function used to aggregate the NRQL query value(s) for comparison to the terms.threshold
+valueFunction: SINGLE_VALUE
+
+# List of Critical and Warning thresholds for the condition
+terms:
+- priority: CRITICAL
+ # Operator used to compare against the threshold.
+ operator: BELOW
+ # Value that triggers a violation
+ threshold: 0.75
+ # Time in seconds; 120 - 3600
+ thresholdDuration: 300
+ # How many data points must be in violation for the duration
+ thresholdOccurrences: ALL
+
+# Adding a Warning threshold is optional
+- priority: WARNING
+ operator: BELOW
+ threshold: 0.85
+ thresholdDuration: 300
+ thresholdOccurrences: ALL
+
+# Duration after which a violation automatically closes
+# Time in seconds; 300 - 2592000 (Default: 86400 [1 day])
+violationTimeLimitSeconds: 259200
+___
+```
Here, you added the pre-existing low cache hit ratio alert to the quickstart. Follow the same procedure to add the slow read response alert.
For your reference, here's the graphql response.
@@ -312,48 +314,48 @@ For your reference, here's the graphql response.
Create your **Read response.yml** file based on the above response.
->```yml
-> ---
-># Name of the alert
->name: slow read response
->
-># Description and details
->details: |+
-> This alert is triggered when read operation takes > 0.85.
->
-># Type of alert
->type: STATIC
->
-># NRQL query
->nrql:
-> query: "SELECT average(fdb_read_responses) FROM Metric"
->
-># Function used to aggregate the NRQL query value(s) for comparison to the terms.threshold (Default: SINGLE_VALUE)
->valueFunction: SINGLE_VALUE
->
-># List of Critical and Warning thresholds for the condition
->terms:
->- priority: CRITICAL
-> # Operator used to compare against the threshold.
-> operator: ABOVE
-> # Value that triggers a violation
-> threshold: 0.85
-> # Time in seconds; 120 - 3600
-> thresholdDuration: 300
-> # How many data points must be in violation for the duration
-> thresholdOccurrences: ALL
->
-># Adding a Warning threshold is optional
->- priority: WARNING
-> operator: ABOVE
-> threshold: 0.75
-> thresholdDuration: 300
-> thresholdOccurrences: ALL
->
-># Duration after which a violation automatically closes
-># Time in seconds; 300 - 2592000 (Default: 86400 [1 day])
->violationTimeLimitSeconds: 259200
->```
+```yml
+---
+# Name of the alert
+name: slow read response
+
+# Description and details
+details: |+
+ This alert is triggered when read operation takes > 0.85.
+
+# Type of alert
+type: STATIC
+
+# NRQL query
+nrql:
+ query: "SELECT average(fdb_read_responses) FROM Metric"
+
+# Function used to aggregate the NRQL query value(s) for comparison to the terms.threshold (Default: SINGLE_VALUE)
+valueFunction: SINGLE_VALUE
+
+# List of Critical and Warning thresholds for the condition
+terms:
+- priority: CRITICAL
+ # Operator used to compare against the threshold.
+ operator: ABOVE
+ # Value that triggers a violation
+ threshold: 0.85
+ # Time in seconds; 120 - 3600
+ thresholdDuration: 300
+ # How many data points must be in violation for the duration
+ thresholdOccurrences: ALL
+
+# Adding a Warning threshold is optional
+- priority: WARNING
+ operator: ABOVE
+ threshold: 0.75
+ thresholdDuration: 300
+ thresholdOccurrences: ALL
+
+# Duration after which a violation automatically closes
+# Time in seconds; 300 - 2592000 (Default: 86400 [1 day])
+violationTimeLimitSeconds: 259200
+```
## Add quickstart description
@@ -363,16 +365,16 @@ To help others understnad the purpose of your quickstart, you need to add quicks
In the root directory of your pack, you can find a _config.yml_ file.
Open the file in your IDE and edit it as follow:
->```yml
->
-># Name of the pack (required)
->name: flashdb
->
-># Description of the pack (required)
->description: |
+```yml
+
+# Name of the pack (required)
+name: flashdb
+
+# Description of the pack (required)
+description: |
Flashdb is the fastest database in the space.
The flashdb quickstart allows you to get visibility into the performance of flashdb with the help of following features:
->
+
Dashboards:
- Database methods: Monitor the number of transactions for each database method
- Database size: Monitor the size of database
@@ -380,34 +382,34 @@ Open the file in your IDE and edit it as follow:
- Cache hits: Monitor the cache hits
- Errors: Monitor the errors occured for each type of database transaction
- Database keys: Monitor the keys for database
->
+
Alerts:
- Cache hit ratio: Alert is triggered when cache hit ratio falls below the set limit.
- Read response: Alert is triggered when read responses are slow and exceeds a set limit
->
->summary: |
+
+summary: |
Flashdb is the fastest database in the space.
This quickstart allows you to get visibility into the performance of flashdb.
->
-># Support level: New Relic | Verified | Community (required)
->level: Community
->
-># Design
->icon: icon.jpeg
->logo: logo.png
->
-># Authors of the pack (required)
->authors:
-> - {"enter your name"}
->
-># References to other packs (optional)
-># References are grouped by the type: operating-system, database, webserver, queue, ..
-># The reference under the type is a at least one system, so at least one operating-system, database, ..
->references:
-> - type: database
-> name:
-> - flashdb
->```
+
+# Support level: New Relic | Verified | Community (required)
+level: Community
+
+# Design
+icon: icon.jpeg
+logo: logo.png
+
+# Authors of the pack (required)
+authors:
+ - {"enter your name"}
+
+# References to other packs (optional)
+# References are grouped by the type: operating-system, database, webserver, queue, ..
+# The reference under the type is a at least one system, so at least one operating-system, database, ..
+references:
+ - type: database
+ name:
+ - flashdb
+```
Here's how your final _flashdb_ quickstart folder should look like.
![quickstart description](../../../images/instant-observability/quickstart-description.png)
@@ -417,10 +419,10 @@ Here's how your final _flashdb_ quickstart folder should look like.
Your quickstart is now ready to be published. You're going to commit your changes back to GitHub where it will be reviewed by New Relic.
Follow the [conventional commit syntax](https://github.com/newrelic/newrelic-observability-packs/blob/alerts-doc-update/CONTRIBUTING.md#using-conventional-commits) for New Relic to commit your changes.
->```bash
-> git add -A
-> git commit -m "feat(flashdb): Added a quickstart for flashdb"
-> ```
+```bash
+ git add -A
+ git commit -m "feat(flashdb): Added a quickstart for flashdb"
+```
@@ -430,9 +432,9 @@ To help us manage your contributions efficiently, we encourage you to label your
Push your changes to GitHub:
->```bash
-> git Push
-> ```
+```bash
+ git Push
+```
Once you've pushed your changes to GitHub, you can [create a pull request](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/creating-a-pull-request).
diff --git a/src/markdown-pages/instant-observability/build-a-quickstart/create-alerts.mdx b/src/markdown-pages/instant-observability/build-a-quickstart/create-alerts.mdx
index 5c178db97..dea6a0a3d 100644
--- a/src/markdown-pages/instant-observability/build-a-quickstart/create-alerts.mdx
+++ b/src/markdown-pages/instant-observability/build-a-quickstart/create-alerts.mdx
@@ -8,15 +8,19 @@ duration: '15 min'
-This procedure is a part of a lab that teaches you how to build a quickstart. If you haven't already, checkout the [_Lab introduction_](/instant-observability/build-a-quickstart)
+This procedure is a part of a lab that teaches you how to build a quickstart. If you haven't already, checkout the [_lab introduction_](/instant-observability/build-a-quickstart)
-Each procedure in this lab builds on top of the last one, so make sure you [_create a dashboard_](/instant-observability/build-a-quickstart/create-a-dashboard) before proceeding with this one.
+Each procedure in this lab builds on top of the last one, so make sure you [_Create a dashboard_](/instant-observability/build-a-quickstart/create-a-dashboard) before proceeding with this one.
New Relic alerts allow you to monitor your services and notify you about problems that you're interested in, so you can react fast to troubleshoot and resolve them.
->**Note:** It is assumed that you are already familiar with the alerts basics. If you're just getting started, visit the [alert documentation](https://docs.newrelic.com/docs/alerts-applied-intelligence/) to familiarize yourself with the basics before proceeding.
+
+
+It is assumed that you are already familiar with the alerts basics. If you're just getting started, visit the [alert documentation](https://docs.newrelic.com/docs/alerts-applied-intelligence/) to familiarize yourself with the basics before proceeding.
+
+
## Create an alert policy
@@ -29,25 +33,29 @@ Name your policy **FlashDB alert policy**. Use the default values for the rest o
![create an alert policy](../../../images/instant-observability/create-alert-policy.png)
-The next step is to add alert conditions to the alert policy. You're going to add folloinwg alert conditions:
-- slow read response
-- low cache hit ratio
+The next step is to add conditions to the alert policy.
## Create alert conditions
+You're going to add the following alert conditions:
+- slow read responses
+- low cache hit ratio
+
+### Create a high response time alert condition
+
Under **FlashDB alert policy**, click **Create a condition**.
![create alert condition](../../../images/instant-observability/create-alert-condition.png)
-The next page asks you to choose a category for your condition. Choose NRQL, which allows you to create a condition using a NRQL query. Then click **Next, define thresholds**.
+The next page asks you to choose a category for your condition. Choose NRQL, which allows you to create a condition using a NRQL query. Then, click **Next, define thresholds**.
![alert condition using nrql](../../../images/instant-observability/create-alert-condition-nrql.png)
-You want to get notified if the read operation is taking longer than expected. Name your alert condition _slow read responses_ and enter the following NRQL query for your condition.
+You want to get notified if the read operation is taking longer than expected. Name your alert condition "slow read responses" and enter the following NRQL query for your condition.
->```SQL
-> SELECT average(fdb_read_responses) FROM Metric
->```
+```sql
+SELECT average(fdb_read_responses) FROM Metric
+```
![slow read response nrql](../../../images/instant-observability/slow-read-response-nrql.png)
@@ -58,7 +66,9 @@ Set the critical threshold value at 0.9:
![slow read response critical threshold](../../../images/instant-observability/critical-threshold.png)
-Here, you defined a condition that will open violation whenever read response time is above 0.9 for at least 5 minutes. You can also add a warning threshold by clicking **Add warning threshold**.
+Here, you defined a condition that will open violation whenever read response time is above 0.9 for at least 5 minutes.
+
+Next, click **Add warning threshold**.
![add warning threshold](../../../images/instant-observability/add-warning-threshold.png)
@@ -81,11 +91,11 @@ The next page asks you to choose the category for your condition. Choose NRQL an
![add alert condition using nrql](../../../images/instant-observability/add-more-alert-conditions-nrql.png)
-Enter the name Low cache hit ratio for your condition and use the following NRQL query.
+Enter the name "Low cache hit ratio" for your condition and use the following NRQL query.
->```SQL
-> SELECT sum(fdb_cache_hits)/sum(fdb_read_responses) FROM Metric
->```
+```sql
+SELECT sum(fdb_cache_hits)/sum(fdb_read_responses) FROM Metric
+```
![low cache hit ratio nrql](../../../images/instant-observability/low-cache-hit-ratio-nrql.png)
@@ -115,7 +125,7 @@ Select the email you want to receive your notifications on, and click **Update p
## Summary
-During this procedure, you created FlashDB alert policy and added slow read responses and low cache hit ratio conditions to it. Y ou also added a notoification channel to receive notifications about any opened violations.
+During this procedure, you created FlashDB alert policy and added slow read responses and low cache hit ratio conditions to it. You also added a notoification channel to receive notifications about any opened violations.
diff --git a/src/markdown-pages/instant-observability/build-a-quickstart/deploy-your-application.mdx b/src/markdown-pages/instant-observability/build-a-quickstart/deploy-your-application.mdx
index a82001e47..338b029cd 100644
--- a/src/markdown-pages/instant-observability/build-a-quickstart/deploy-your-application.mdx
+++ b/src/markdown-pages/instant-observability/build-a-quickstart/deploy-your-application.mdx
@@ -8,7 +8,7 @@ duration: '5 min'
-This procedure is a part of lab that teaches you how to build a quickstart. If you haven't already, check out the [_Lab introduction_](/instant-observability/build-a-quickstart)
+This procedure is a part of lab that teaches you how to build a quickstart. If you haven't already, check out the [_lab introduction_](/instant-observability/build-a-quickstart)
@@ -18,27 +18,35 @@ Before you build a quickstart, you need to spin up demo services. The lab depend
To spin up demo services, you first need to install [Docker](https://www.docker.com/) and also set **NEW_RELIC_INSERT_KEY** environment variable.
-> **Note:** **NEW_RELIC_INSERT_KEY** environment variable is your New Relic liscence key. [You can find your New Relic liscence key in your New Relic account](https://docs.newrelic.com/docs/apis/intro-apis/new-relic-api-keys/).
+
+
+**NEW_RELIC_INSERT_KEY** environment variable is your New Relic liscence key. [You can find your New Relic liscence key in your New Relic account](https://docs.newrelic.com/docs/apis/intro-apis/new-relic-api-keys/).
+
+
## Spin up demo services
Clone the lab repository from GitHub:
->```bash
-> git clone https://github.com/mehreentahir16/FlashDB.git
->```
+```bash
+ git clone https://github.com/mehreentahir16/FlashDB.git
+```
This repository contains the code for flashdb as well as the simulator for dummy database traffic. Navigate to the demo directory and execute the following commands to build and run docker image.
-> ```bash
-> docker build -t flashdb .
-> docker run flashdb
->```
+ ```bash
+ docker build -t flashdb .
+ docker run flashdb
+```
Here, you build and run docker image that generates mock database traffic. You will observe this data in New Relic. Once the docker image is up and running, you see the following output in your terminal:
![deploy-your-application](../../../images/instant-observability/terminal-output.png)
->**Important:** Make sure you set NEW_RELIC_INSERT_KEY with your actual [license key](https://docs.newrelic.com/docs/accounts/accounts-billing/account-setup/new-relic-license-key/).
+
+
+Make sure you set NEW_RELIC_INSERT_KEY environment variable with your actual [license key](https://docs.newrelic.com/docs/accounts/accounts-billing/account-setup/new-relic-license-key/).
+
+
The next step is to observe this data in New Relic.
diff --git a/src/markdown-pages/instant-observability/build-a-quickstart/index.mdx b/src/markdown-pages/instant-observability/build-a-quickstart/index.mdx
index 682718240..0d194e4bb 100644
--- a/src/markdown-pages/instant-observability/build-a-quickstart/index.mdx
+++ b/src/markdown-pages/instant-observability/build-a-quickstart/index.mdx
@@ -13,22 +13,26 @@ To achieve your goal, contribute a quickstart to New Relic I/O so other users ca
## Why quickstarts?
-New Relic allow you to collect, monitor, and report data from different sources. While we offer a large variety of open-source integrations for telemetry tools, you can also use Telemetry SDKs to create your own telemetry data solutions. You can use New Relic One dashboards to view, explore, customize, understand, and correlate the data you collect using different user-friendly charts.
+New Relic allows you to collect, monitor, and report data from different sources. While we offer a large variety of open-source integrations for telemetry tools, you can also use Telemetry SDKs to create your own data solutions. You can use dashboards to view, explore, customize, understand, and correlate the data you collect using different user-friendly charts.
You can also set alert policies to monitor key performance metrics and receive notification for anomalies.
-Often, you had to custom build these solutions to observe your applications in New Relic but now, we allow you to create and contribute **quickstarts** to help you and others quickly and easily observe it in New Relic.
+Often, you had to custom build these solutions to observe your applications in New Relic but now, we offer "quickstarts" to help you and others quickly and easily observe your applications in New Relic.
New Relic One quickstarts provide immediate value for your specific use case. They include:
- Clear instructions for instrumenting your services
- Observbility building blocks like dashboards and alerts
+All of this is available through an open ecosystem where New Relic developers, partners, and customers contribute their best-practice solutions.
+Since you're the developer of flashDB, you can also contribute your best-practice solution to help the users of flashDB quickly monitor it in New Relic.
+
## Learning Objectives
-Throughout this lab, you will .
+In this lab, you will .
- Create a dashboard
- Create alerts
- Create a quickstart
- - Package up your dashboards & alerts into quickstart
+ - Package up your dashboard & alerts into quickstart
- Add quickstart description
+ - Contribute quickstart to GitHub
## Prerequisite