Dica
Este procedimento faz parte do curso que ensina como criar um início rápido. Se ainda não o fez, confira a introdução do curso.
Como este procedimento se baseia nos últimos do laboratório, crie um dashboard e entenda a estrutura de diretórios do início rápido antes de prosseguir com este.
Em um procedimento anterior, você cria um dashboard para monitor o FlashDB. Agora você vai adicioná-lo ao seu início rápido para que seu usuário também possa utilizá-lo.
Se ainda não o fez, bifurque o repositório de início rápido do New Relic e clone-o em sua máquina local.
Abra seu projeto no IDE de sua preferência e navegue até o diretório \_template
.
Aqui, copie o diretório dashboards/example-dashboard
e seu conteúdo para o diretório dashboards
no nível raiz. Renomeie o diretório como flashdb
.
Este diretório contém um arquivo JSON de amostra e sua imagem correspondente para contribuir com seu dashboard para o New Relic I/O.
Em seguida, navegue até New Relic e procure seu dashboard. A partir daqui, copie seu JSON.
Salve-o como um arquivo JSON no diretório dashboards/flashdb
e renomeie o arquivo como flashdb.json
.
Aqui, você copiou o JSON do seu dashboard para a área de transferência. Substitua o conteúdo do arquivo JSON existente no diretório dashboards/flashDB
e renomeie-o como flashdb.json
. Seu arquivo flashdb.json
deve conter o seguinte conteúdo:
{ "name": "flashdb", "description": null, "permissions": "PUBLIC_READ_WRITE", "pages": [ { "name": "flashdb", "description": null, "widgets": [ { "title": "Database methods", "layout": { "column": 1, "row": 1, "width": 8, "height": 6 }, "linkedEntityGuids": null, "visualization": { "id": "viz.pie" }, "rawConfiguration": { "facet": { "showOtherSeries": true }, "legend": { "enabled": true }, "nrqlQueries": [ { "accountId": 1234567, "query": "SELECT count(*) FROM fdb_method FACET method " } ], "platformOptions": { "ignoreTimeRange": false } } }, { "title": "Database size", "layout": { "column": 9, "row": 1, "width": 4, "height": 3 }, "linkedEntityGuids": null, "visualization": { "id": "viz.billboard" }, "rawConfiguration": { "facet": { "showOtherSeries": false }, "nrqlQueries": [ { "accountId": 1234567, "query": "SELECT latest(fdb_size) FROM Metric" } ], "platformOptions": { "ignoreTimeRange": false } } }, { "title": "Average response time", "layout": { "column": 9, "row": 4, "width": 4, "height": 3 }, "linkedEntityGuids": null, "visualization": { "id": "viz.line" }, "rawConfiguration": { "facet": { "showOtherSeries": false }, "legend": { "enabled": true }, "nrqlQueries": [ { "accountId": 1234567, "query": "SELECT average(fdb_create_responses), average(fdb_read_responses), average(fdb_update_responses), average(fdb_delete_responses) FROM Metric TIMESERIES" } ], "platformOptions": { "ignoreTimeRange": false }, "yAxisLeft": { "zero": true } } }, { "title": "Cache hits", "layout": { "column": 1, "row": 7, "width": 4, "height": 3 }, "linkedEntityGuids": null, "visualization": { "id": "viz.line" }, "rawConfiguration": { "facet": { "showOtherSeries": false }, "legend": { "enabled": true }, "nrqlQueries": [ { "accountId": 1234567, "query": "SELECT sum(fdb_cache_hits) FROM Metric TIMESERIES" } ], "platformOptions": { "ignoreTimeRange": false }, "yAxisLeft": { "zero": true } } }, { "title": "Errors", "layout": { "column": 5, "row": 7, "width": 4, "height": 3 }, "linkedEntityGuids": null, "visualization": { "id": "viz.line" }, "rawConfiguration": { "facet": { "showOtherSeries": false }, "legend": { "enabled": true }, "nrqlQueries": [ { "accountId": 1234567, "query": "SELECT sum(fdb_create_errors), sum(fdb_read_errors), sum(fdb_update_errors), sum(fdb_delete_errors) FROM Metric TIMESERIES" } ], "platformOptions": { "ignoreTimeRange": false }, "yAxisLeft": { "zero": true } } }, { "title": "FlashDB keys", "layout": { "column": 9, "row": 7, "width": 4, "height": 3 }, "linkedEntityGuids": null, "visualization": { "id": "viz.line" }, "rawConfiguration": { "facet": { "showOtherSeries": false }, "legend": { "enabled": true }, "nrqlQueries": [ { "accountId": 1234567, "query": "SELECT count(fdb_keys) FROM Metric TIMESERIES" } ], "platformOptions": { "ignoreTimeRange": false }, "yAxisLeft": { "zero": true } } } ] } ]}
Em seguida, crie uma captura de tela do seu dashboard e adicione-a ao diretório dashboards/flashdb
. Dê a ele o mesmo nome do seu arquivo JSON. Seu diretório dashboards/flashDB
deve ser semelhante ao seguinte:
Higienize seu dashboard
Ao adicionar seu dashboard ao início rápido, você precisa remover dados confidenciais. Por exemplo:
- Não inclui
permissions: PUBLIC_READ_WRITE
- Defina todos os
linkedEntityGuids
comonull
- Defina seu
accountId
para0
Criamos um script para automatizar esse processo para você. Para remover dados confidenciais e desnecessários do seu dashboard, navegue até newrelic-quickstarts/utils
e execute o script sanitize-dashboard.
$cd newrelic-quickstarts/utils$yarn install$yarn sanitize-dashboard flashdb
Seu arquivo flashdb.json
agora deve ter a seguinte aparência.
{ "name": "flashDB", "description": null, "pages": [ { "name": "flashDB", "description": null, "widgets": [ { "title": "Database methods", "layout": { "column": 1, "row": 1, "width": 8, "height": 6 }, "linkedEntityGuids": null, "visualization": { "id": "viz.pie" }, "rawConfiguration": { "facet": { "showOtherSeries": true }, "legend": { "enabled": true }, "nrqlQueries": [ { "accountId": 0, "query": "SELECT count(*) FROM fdb_method FACET method " } ], "platformOptions": { "ignoreTimeRange": false } } }, { "title": "Database size", "layout": { "column": 9, "row": 1, "width": 4, "height": 3 }, "linkedEntityGuids": null, "visualization": { "id": "viz.billboard" }, "rawConfiguration": { "facet": { "showOtherSeries": false }, "nrqlQueries": [ { "accountId": 0, "query": "SELECT latest(fdb_size) FROM Metric" } ], "platformOptions": { "ignoreTimeRange": false } } }, { "title": "Average response time", "layout": { "column": 9, "row": 4, "width": 4, "height": 3 }, "linkedEntityGuids": null, "visualization": { "id": "viz.line" }, "rawConfiguration": { "facet": { "showOtherSeries": false }, "legend": { "enabled": true }, "nrqlQueries": [ { "accountId": 0, "query": "SELECT average(fdb_create_responses), average(fdb_read_responses), average(fdb_update_responses), average(fdb_delete_responses) FROM Metric TIMESERIES" } ], "platformOptions": { "ignoreTimeRange": false }, "yAxisLeft": { "zero": true } } }, { "title": "Cache hits", "layout": { "column": 1, "row": 7, "width": 4, "height": 3 }, "linkedEntityGuids": null, "visualization": { "id": "viz.line" }, "rawConfiguration": { "facet": { "showOtherSeries": false }, "legend": { "enabled": true }, "nrqlQueries": [ { "accountId": 0, "query": "SELECT sum(fdb_cache_hits) FROM Metric TIMESERIES" } ], "platformOptions": { "ignoreTimeRange": false }, "yAxisLeft": { "zero": true } } }, { "title": "Errors", "layout": { "column": 5, "row": 7, "width": 4, "height": 3 }, "linkedEntityGuids": null, "visualization": { "id": "viz.line" }, "rawConfiguration": { "facet": { "showOtherSeries": false }, "legend": { "enabled": true }, "nrqlQueries": [ { "accountId": 0, "query": "SELECT sum(fdb_create_errors), sum(fdb_read_errors), sum(fdb_update_errors), sum(fdb_delete_errors) FROM Metric TIMESERIES" } ], "platformOptions": { "ignoreTimeRange": false }, "yAxisLeft": { "zero": true } } }, { "title": "FlashDB keys", "layout": { "column": 9, "row": 7, "width": 4, "height": 3 }, "linkedEntityGuids": null, "visualization": { "id": "viz.line" }, "rawConfiguration": { "facet": { "showOtherSeries": false }, "legend": { "enabled": true }, "nrqlQueries": [ { "accountId": 0, "query": "SELECT count(fdb_keys) FROM Metric TIMESERIES" } ], "platformOptions": { "ignoreTimeRange": false }, "yAxisLeft": { "zero": true } } } ] } ]}
Dica
Este procedimento faz parte do curso que ensina como criar um início rápido. Continue na próxima lição: adicione seus alertas ao início rápido.