diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 9c95fc0519..b2df99fe28 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -13,5 +13,5 @@ LICENSE @newrelic/developer-enablement /.config/ @newrelic/developer-enablement # product/content ownership -/dashboards/ @seemantk -/quickstarts/ @seemantk @rahulbasu-nr +/dashboards/ +/quickstarts/ diff --git a/.github/actions/build-validate-artifact/action.yml b/.github/actions/build-validate-artifact/action.yml new file mode 100644 index 0000000000..ea0596d44e --- /dev/null +++ b/.github/actions/build-validate-artifact/action.yml @@ -0,0 +1,25 @@ +name: Build and Validate Artifact +description: Reusable action to build and validate the component artifact +inputs: + output-artifact: + description: 'If provided, the action will output the artifact to the build directory' + required: false + +runs: + using: composite + steps: + - name: Add data source ids to schema + shell: bash + run: | + cd utils && yarn add-datasource-ids + + - name: Build & Validate Artifact + shell: bash + id: build-validate-artifact + run: | + cd utils && yarn build-validate-quickstart-artifact ${{ inputs.output-artifact && '--output-artifact' || '' }} + + - name: Debugging output + shell: bash + if: ${{ runner.debug }} + run: ls -la utils/build diff --git a/.github/actions/bump-version-tag/action.yml b/.github/actions/bump-version-tag/action.yml new file mode 100644 index 0000000000..fb6309f7bc --- /dev/null +++ b/.github/actions/bump-version-tag/action.yml @@ -0,0 +1,16 @@ +name: Bump version tag +description: Bumps the version tag based on the latest version +outputs: + tag: + description: The new tag prefixed with `v` + value: ${{ steps.versions.outputs.v-version }} +runs: + using: composite + steps: + - name: Get next version + uses: reecetech/version-increment@a5d65984a6c6e8bbc30ece69d53d96e40736f24c + id: versions + with: + scheme: semver + increment: minor + use_api: true diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 6f56739e86..e0a4b9dd2b 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -26,3 +26,4 @@ _The owners of this repo are not experts in the subject matter of the quickstart ### Alerts - [ ] Did you check that your alerts actually work? +- [ ] Are you trying to create standalone alerts? Standalone alerts are deprecated. They should only be included in quickstarts. diff --git a/.github/workflows/pr-checks.yml b/.github/workflows/pr-checks.yml new file mode 100644 index 0000000000..603b6d159a --- /dev/null +++ b/.github/workflows/pr-checks.yml @@ -0,0 +1,32 @@ +name: PR Validation + +on: + pull_request: + +jobs: + validate: + name: Validate Artifact + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + with: + ref: ${{ github.sha }} + - name: Setup workspace + uses: "./.github/actions/bootstrap" + - name: Validate PR Artifact + uses: "./.github/actions/build-validate-artifact" + validate-quickstart-ids: + name: Validate Quickstart IDs + runs-on: ubuntu-latest + if: ${{ github.base_ref == 'main' && github.head_ref == 'release' }} + steps: + - name: Checkout repository + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + with: + ref: ${{ github.sha }} + - name: Setup workspace + uses: "./.github/actions/bootstrap" + - name: Validate Quickstart IDs + run: | + cd utils && yarn validate-quickstart-ids diff --git a/.github/workflows/pr-project-board.yml b/.github/workflows/pr-project-board.yml deleted file mode 100644 index 6d6c04a1aa..0000000000 --- a/.github/workflows/pr-project-board.yml +++ /dev/null @@ -1,21 +0,0 @@ -name: Move content PR to Project Board - -on: - pull_request_target: - types: [opened] - paths: - - "quickstarts/**" - -env: - GITHUB_TOKEN: ${{ secrets.OPENSOURCE_BOT_TOKEN }} - -jobs: - move-pr-to-project-board: - runs-on: ubuntu-latest - steps: - - name: Checkout repository - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 - - - name: Move PR to Project Board for triage - run: | - gh pr edit ${{github.event.pull_request.number}} --add-project "NR1 Quickstarts Community" diff --git a/.github/workflows/preview-links.yml b/.github/workflows/preview-links.yml deleted file mode 100644 index 665d3eff74..0000000000 --- a/.github/workflows/preview-links.yml +++ /dev/null @@ -1,34 +0,0 @@ -name: Preview links - -on: - pull_request_target: - branches: - - main - types: [opened] - -env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - PR_NUMBER: ${{ github.event.pull_request.number }} - -jobs: - generate: - runs-on: ubuntu-latest - steps: - - name: Checkout repository - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 - - - name: Setup workspace - uses: "./.github/actions/bootstrap" - - - name: Create preview links - id: links - env: - PR_URL: ${{ github.event.pull_request.url }} - run: | - cd utils && yarn create-preview-links "$PR_URL" "$PR_NUMBER" - - name: Comment - if: steps.links.outputs.comment != '' - env: - COMMENT: ${{ steps.links.outputs.comment }} - run: | - gh pr comment "$PR_NUMBER" --body "$COMMENT" diff --git a/.github/workflows/quickstarts.eu-production.yml b/.github/workflows/quickstarts.eu-production.yml deleted file mode 100644 index 518e0541f9..0000000000 --- a/.github/workflows/quickstarts.eu-production.yml +++ /dev/null @@ -1,20 +0,0 @@ -name: Submit All - EU-Production - -on: - workflow_dispatch: - inputs: - pr-number: - description: 'PR to run against' - required: true - -jobs: - eu-production: - uses: ./.github/workflows/reusable.quickstart_submission.yml - with: - pr-number: ${{ github.event.inputs.pr-number }} - dry-run: false - secrets: - nr-api-url: ${{ secrets.NR_API_URL_EU }} - nr-api-token: ${{ secrets.NR_API_TOKEN_EU }} - github-token: ${{ secrets.GITHUB_TOKEN }} - nr-license-key: ${{ secrets.NEW_RELIC_LICENSE_KEY }} diff --git a/.github/workflows/quickstarts.production.yml b/.github/workflows/quickstarts.production.yml deleted file mode 100644 index 6a5b0a0d0e..0000000000 --- a/.github/workflows/quickstarts.production.yml +++ /dev/null @@ -1,20 +0,0 @@ -name: Submit All - Production - -on: - workflow_dispatch: - inputs: - pr-number: - description: 'PR to run against' - required: true - -jobs: - production: - uses: ./.github/workflows/reusable.quickstart_submission.yml - with: - pr-number: ${{ github.event.inputs.pr-number }} - dry-run: false - secrets: - nr-api-url: ${{ secrets.NR_API_URL }} - nr-api-token: ${{ secrets.NR_API_TOKEN }} - github-token: ${{ secrets.GITHUB_TOKEN }} - nr-license-key: ${{ secrets.NEW_RELIC_LICENSE_KEY }} diff --git a/.github/workflows/quickstarts.staging.yml b/.github/workflows/quickstarts.staging.yml deleted file mode 100644 index 28e6a5b20a..0000000000 --- a/.github/workflows/quickstarts.staging.yml +++ /dev/null @@ -1,20 +0,0 @@ -name: Submit All - Staging - -on: - workflow_dispatch: - inputs: - pr-number: - description: 'PR to run against' - required: true - -jobs: - staging: - uses: ./.github/workflows/reusable.quickstart_submission.yml - with: - pr-number: ${{ github.event.inputs.pr-number }} - dry-run: false - secrets: - nr-api-url: ${{ secrets.NR_API_URL_STAGING }} - nr-api-token: ${{ secrets.NR_API_TOKEN_STAGING }} - github-token: ${{ secrets.GITHUB_TOKEN }} - nr-license-key: ${{ secrets.NEW_RELIC_LICENSE_KEY }} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 1773cc5925..e5aaeba293 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -4,13 +4,27 @@ on: push: branches: - main + tags: + - 'v*' env: THIRD_PARTY_GIT_AUTHOR_EMAIL: opensource+bot@newrelic.com THIRD_PARTY_GIT_AUTHOR_NAME: nr-opensource-bot +defaults: + run: + shell: bash + working-directory: ./utils + +permissions: + id-token: write # Required for attestation + attestations: write # Required for attestation + contents: write + jobs: generate-third-party-notices: + # Don't run this if it's a tag push + if: ${{ startsWith(github.ref, 'refs/heads') }} runs-on: ubuntu-latest steps: # Checkout fetch-depth: 2 because there's a check to see if package.json @@ -24,13 +38,11 @@ jobs: uses: "./.github/actions/bootstrap" - name: Install OSS CLI - working-directory: ./utils run: | yarn global add @newrelic/newrelic-oss-cli - name: Generate Third Party Notices id: generate-notices - working-directory: ./utils run: | if [ ! -f "third_party_manifest.json" ]; then echo "::error::third_party_manifest.json is missing. Must generate using the newrelic-oss-cli." @@ -55,3 +67,34 @@ jobs: else echo "No change in package.json, not regenerating third-party notices" fi + release: + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 + with: + ref: ${{ github.ref }} + - name: Setup workspace + uses: "./.github/actions/bootstrap" + - name: Validate and generate artifact + uses: "./.github/actions/build-validate-artifact" + with: + output-artifact: 'true' + - name: Attest artifact + uses: actions/attest-build-provenance@1c608d11d69870c2092266b3f9a6f3abbf17002c + with: + subject-path: utils/build/* + - name: Create new release tag + # Only run if this is a branch push (we'll need a new tag) + if: ${{ startsWith(github.ref, 'refs/heads') }} + id: version + uses: "./.github/actions/bump-version-tag" + - name: Create release + uses: softprops/action-gh-release@c062e08bd532815e2082a85e87e3ef29c3e6d191 + with: + files: utils/build/* + fail_on_unmatched_files: true + make_latest: true + # If we have a tag output from the previous step, use that as the tag + # name, otherwise use the current ref which should be the tag. + tag_name: ${{ steps.version.outputs.tag || github.ref }} diff --git a/.github/workflows/reusable.quickstart_submission.yml b/.github/workflows/reusable.quickstart_submission.yml deleted file mode 100644 index bb76fdbe72..0000000000 --- a/.github/workflows/reusable.quickstart_submission.yml +++ /dev/null @@ -1,150 +0,0 @@ -# Reusable workflow for creating, updating, or validating quickstarts and install plans for a single environment. -name: Quickstart submission - -on: - workflow_call: - inputs: - pr-number: - required: true - type: string - dry-run: - required: true - type: boolean - default: true - secrets: - nr-api-url: - required: true - nr-api-token: - required: true - github-token: - required: true - nr-license-key: - required: true - -env: - PR_NUMBER: ${{ inputs.pr-number }} - DRY_RUN: ${{ inputs.dry-run }} - -jobs: - submit-install-plans: - name: Submit install plans - runs-on: ubuntu-latest - steps: - - name: Checkout repo - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 - # Ensure we have the most recent commit to `main` - with: - ref: "main" - fetch-depth: 0 - - - name: Setup workspace - uses: "./.github/actions/bootstrap" - - - name: Update install plans - env: - NR_API_URL: ${{ secrets.nr-api-url }} - NR_API_TOKEN: ${{ secrets.nr-api-token }} - GITHUB_TOKEN: ${{ secrets.github-token }} - NEW_RELIC_LICENSE_KEY: ${{ secrets.nr-license-key }} - run: | - URL="https://api.github.com/repos/${GITHUB_REPOSITORY}/pulls/$PR_NUMBER/files" - cd utils && yarn create-validate-install-plans "$URL" "$DRY_RUN" - - submit-data-sources: - name: Submit data sources - runs-on: ubuntu-latest - steps: - - name: Checkout repo - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 - # Ensure we have the most recent commit to `main` - with: - ref: "main" - fetch-depth: 0 - - - name: Setup workspace - uses: "./.github/actions/bootstrap" - - - name: Update data sources - env: - NR_API_URL: ${{ secrets.nr-api-url }} - NR_API_TOKEN: ${{ secrets.nr-api-token }} - GITHUB_TOKEN: ${{ secrets.github-token }} - NEW_RELIC_LICENSE_KEY: ${{ secrets.nr-license-key }} - run: | - URL="https://api.github.com/repos/${GITHUB_REPOSITORY}/pulls/$PR_NUMBER/files" - cd utils && yarn create-validate-data-sources "$URL" "$DRY_RUN" - - submit-quickstarts: - needs: [submit-install-plans, submit-data-sources] - name: Submit quickstarts - runs-on: ubuntu-latest - steps: - - name: Checkout repo - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 - # Ensure we have the most recent commit to `main` - with: - ref: "main" - fetch-depth: 0 - - - name: Setup workspace - uses: "./.github/actions/bootstrap" - - - name: Update quickstarts - env: - NR_API_URL: ${{ secrets.nr-api-url }} - NR_API_TOKEN: ${{ secrets.nr-api-token }} - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - NEW_RELIC_LICENSE_KEY: ${{ secrets.nr-license-key }} - run: | - URL="https://api.github.com/repos/${GITHUB_REPOSITORY}/pulls/$PR_NUMBER/files" - cd utils && yarn create-validate-pr-quickstarts "$URL" "$DRY_RUN" - - set-dashboard-required-datasources: - needs: [submit-quickstarts] - name: Set dashboard required datasources - runs-on: ubuntu-latest - steps: - - name: Checkout repo - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 - # Ensure we have the most recent commit to `main` - with: - ref: "main" - fetch-depth: 0 - - - name: Setup workspace - uses: "./.github/actions/bootstrap" - - - name: Update dashboards with required datasources from quickstarts - env: - NR_API_URL: ${{ secrets.nr-api-url }} - NR_API_TOKEN: ${{ secrets.nr-api-token }} - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - NEW_RELIC_LICENSE_KEY: ${{ secrets.nr-license-key }} - run: | - URL="https://api.github.com/repos/${GITHUB_REPOSITORY}/pulls/$PR_NUMBER/files" - cd utils && yarn set-dashboards-required-datasources "$URL" - - set-alert-policy-required-datasources: - needs: [submit-quickstarts] - name: Set alert policy required datasources - runs-on: ubuntu-latest - steps: - - name: Checkout repo - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 - # Ensure we have the most recent commit to `main` - with: - ref: "main" - fetch-depth: 0 - - - name: Setup workspace - uses: "./.github/actions/bootstrap" - - - name: Update dashboards with required datasources from quickstarts - env: - NR_API_URL: ${{ secrets.nr-api-url }} - NR_API_TOKEN: ${{ secrets.nr-api-token }} - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - NEW_RELIC_LICENSE_KEY: ${{ secrets.nr-license-key }} - run: | - URL="https://api.github.com/repos/${GITHUB_REPOSITORY}/pulls/$PR_NUMBER/files" - cd utils && yarn set-alert-policy-required-datasources "$URL" diff --git a/.github/workflows/submit-gate.yml b/.github/workflows/submit-gate.yml index 64ec1e8d71..948919007f 100644 --- a/.github/workflows/submit-gate.yml +++ b/.github/workflows/submit-gate.yml @@ -1,6 +1,6 @@ # This looks like a confusing workflow, but it has a purpose (✿ ◕‿◕) # It functions kind of as a workflow shim. We can't setup other important workflows to run on pull_request (due to forks), so we setup this workflow to be triggered by pull_request and it is always able to run. -# When it is finished running, it triggers the other important workflows -- submit_packs, submit_install_plans. +# When it is finished running, it triggers the other important workflows -- submit_packs, etc. # Having it setup this way allows us to have manual approval for this workflow run, and then the subsequent triggered runs can access secrets in the repository for validation (even for forked PRs). name: Submit Gate diff --git a/.github/workflows/validate_data_sources.yml b/.github/workflows/validate_data_sources.yml deleted file mode 100644 index 4d0e542d2c..0000000000 --- a/.github/workflows/validate_data_sources.yml +++ /dev/null @@ -1,56 +0,0 @@ -name: Validate data sources - -on: - workflow_run: - workflows: ["Validation Gate"] - types: - - completed - -jobs: - validate-data-source-schema: - name: Validate data source schema - runs-on: ubuntu-latest - steps: - - name: Download artifact - uses: dawidd6/action-download-artifact@268677152d06ba59fcec7a7f0b5d961b6ccd7e1e - with: - workflow: validation_gate.yml - run_id: ${{ github.event.workflow_run.id }} - - - name: Get PR number - id: get_pr_number - run: | - export PR_NUMBER=$(cat artifact/pr_number.txt) - echo "pr-number=$PR_NUMBER" >> $GITHUB_ENV - - - name: Checkout repository - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 - with: - ref: "refs/pull/${{ env.pr-number }}/merge" - - - name: Setup workspace - uses: "./.github/actions/bootstrap" - - - name: Validate new files - id: validation - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - NR_API_URL: ${{ secrets.NR_API_URL }} - NR_API_TOKEN: ${{ secrets.NR_API_TOKEN }} - NEW_RELIC_NO_CONFIG_FILE: true - NEW_RELIC_LICENSE_KEY: ${{ secrets.NEW_RELIC_LICENSE_KEY }} - NEW_RELIC_APP_NAME: ${{ secrets.NEW_RELIC_APP_NAME }} - NEW_RELIC_HOST: staging-collector.newrelic.com - NODE_ENV: production - PR_NUMBER: ${{ env.pr-number }} - run: | - URL="https://api.github.com/repos/${GITHUB_REPOSITORY}/pulls/$PR_NUMBER/files" - DRY_RUN=true - cd utils && yarn create-validate-data-sources $URL $DRY_RUN - - - name: Add commit status - if: always() - uses: "./.github/actions/add-commit-status" - with: - statusContext: "Validation / Data source schema compliance" - state: ${{ job.status }} diff --git a/.github/workflows/validate_install_plans.yml b/.github/workflows/validate_install_plans.yml deleted file mode 100644 index 92d65891a7..0000000000 --- a/.github/workflows/validate_install_plans.yml +++ /dev/null @@ -1,55 +0,0 @@ -name: Validate install plans - -on: - workflow_run: - workflows: ["Validation Gate"] - types: - - completed - -jobs: - validate-install-plan-schema: - name: Validate install plan schema - runs-on: ubuntu-latest - steps: - - name: Download artifact - uses: dawidd6/action-download-artifact@268677152d06ba59fcec7a7f0b5d961b6ccd7e1e - with: - workflow: validation_gate.yml - run_id: ${{ github.event.workflow_run.id }} - - - name: Get PR number - id: get_pr_number - run: | - export PR_NUMBER=$(cat artifact/pr_number.txt) - echo "pr-number=$PR_NUMBER" >> $GITHUB_ENV - - - name: Checkout repository - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 - with: - ref: "refs/pull/${{ env.pr-number }}/merge" - - - name: Setup workspace - uses: "./.github/actions/bootstrap" - - - name: Validate new files - id: validation - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - NR_API_URL: ${{ secrets.NR_API_URL }} - NR_API_TOKEN: ${{ secrets.NR_API_TOKEN }} - NEW_RELIC_NO_CONFIG_FILE: true - NEW_RELIC_LICENSE_KEY: ${{ secrets.NEW_RELIC_LICENSE_KEY }} - NEW_RELIC_APP_NAME: ${{ secrets.NEW_RELIC_APP_NAME }} - NEW_RELIC_HOST: staging-collector.newrelic.com - NODE_ENV: production - PR_NUMBER: ${{ env.pr-number }} - run: | - URL="https://api.github.com/repos/${GITHUB_REPOSITORY}/pulls/$PR_NUMBER/files" - DRY_RUN=true - cd utils && yarn create-validate-install-plans $URL $DRY_RUN - - name: Add commit status - if: always() - uses: "./.github/actions/add-commit-status" - with: - statusContext: "Validation / Install plan schema compliance" - state: ${{ job.status }} diff --git a/.github/workflows/validate_packs.yml b/.github/workflows/validate_packs.yml index 2df675b546..3f69006e93 100644 --- a/.github/workflows/validate_packs.yml +++ b/.github/workflows/validate_packs.yml @@ -39,7 +39,6 @@ jobs: run: cd utils && yarn check-quickstart-uniqueness - name: Add commit status - if: always() uses: "./.github/actions/add-commit-status" with: statusContext: "Validation / Quickstart id are unique" @@ -74,7 +73,6 @@ jobs: run: cd utils && yarn validate-images - name: Add commit status - if: always() uses: "./.github/actions/add-commit-status" with: statusContext: "Validation / Image count and extension compliance" @@ -109,142 +107,11 @@ jobs: run: cd utils && yarn validate-icons - name: Add commit status - if: always() uses: "./.github/actions/add-commit-status" with: statusContext: "Validation / Ensure icons exist" state: ${{ job.status }} - validate-quickstart: - name: Validate Quickstart - runs-on: ubuntu-latest - steps: - - name: Download artifact - uses: dawidd6/action-download-artifact@268677152d06ba59fcec7a7f0b5d961b6ccd7e1e - with: - workflow: validation_gate.yml - run_id: ${{ github.event.workflow_run.id }} - - - name: Get PR number - id: get_pr_number - run: | - export PR_NUMBER=$(cat artifact/pr_number.txt) - echo "pr-number=$PR_NUMBER" >> $GITHUB_ENV - - - name: Checkout repository - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 - with: - ref: "refs/pull/${{ env.pr-number }}/merge" - - - name: Setup workspace - uses: "./.github/actions/bootstrap" - - - name: Validate pr quickstart files - id: validation - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - NR_API_URL: ${{ secrets.NR_API_URL }} - NR_API_TOKEN: ${{ secrets.NR_API_TOKEN }} - NEW_RELIC_NO_CONFIG_FILE: true - NEW_RELIC_LICENSE_KEY: ${{ secrets.NEW_RELIC_LICENSE_KEY }} - NEW_RELIC_APP_NAME: ${{ secrets.NEW_RELIC_APP_NAME }} - NEW_RELIC_HOST: staging-collector.newrelic.com - NODE_ENV: production - PR_NUMBER: ${{ env.pr-number }} - run: | - URL="https://api.github.com/repos/${GITHUB_REPOSITORY}/pulls/$PR_NUMBER/files" - DRY_RUN=true - cd utils && yarn create-validate-pr-quickstarts "$URL" "$DRY_RUN" - - - name: Add commit status - if: always() - uses: "./.github/actions/add-commit-status" - with: - statusContext: "Validation / Validate Quickstart Schema" - state: ${{ job.status }} - - validate-install-plan-ids: - name: Validate install plan ids - runs-on: ubuntu-latest - steps: - - name: Download artifact - uses: dawidd6/action-download-artifact@268677152d06ba59fcec7a7f0b5d961b6ccd7e1e - with: - workflow: validation_gate.yml - run_id: ${{ github.event.workflow_run.id }} - - - name: Get PR number - id: get_pr_number - run: | - export PR_NUMBER=$(cat artifact/pr_number.txt) - echo "pr-number=$PR_NUMBER" >> $GITHUB_ENV - - - name: Checkout repository - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 - with: - ref: "refs/pull/${{ env.pr-number }}/merge" - - - name: Setup workspace - uses: "./.github/actions/bootstrap" - - - name: Validate new files - id: validation - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - PR_NUMBER: ${{ env.pr-number }} - run: | - URL="https://api.github.com/repos/${GITHUB_REPOSITORY}/pulls/$PR_NUMBER/files" - cd utils && yarn validate-quickstart-install-plans "$URL" - - - name: Add commit status - if: always() - uses: "./.github/actions/add-commit-status" - with: - statusContext: "Validation / Install plan ids exist" - state: ${{ job.status }} - - validate-data-source-ids: - name: Validate data source ids - runs-on: ubuntu-latest - steps: - - name: Download artifact - uses: dawidd6/action-download-artifact@268677152d06ba59fcec7a7f0b5d961b6ccd7e1e - with: - workflow: validation_gate.yml - run_id: ${{ github.event.workflow_run.id }} - - - name: Get PR number - id: get_pr_number - run: | - export PR_NUMBER=$(cat artifact/pr_number.txt) - echo "pr-number=$PR_NUMBER" >> $GITHUB_ENV - - - name: Checkout repository - uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 - with: - ref: "refs/pull/${{ env.pr-number }}/merge" - - - name: Setup workspace - uses: "./.github/actions/bootstrap" - - - name: Validate new files - id: validation - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - PR_NUMBER: ${{ env.pr-number }} - NR_API_URL: ${{ secrets.NR_API_URL }} - NR_API_TOKEN: ${{ secrets.NR_API_TOKEN }} - run: | - URL="https://api.github.com/repos/${GITHUB_REPOSITORY}/pulls/$PR_NUMBER/files" - cd utils && yarn validate-quickstart-data-sources "$URL" - - - name: Add commit status - if: always() - uses: "./.github/actions/add-commit-status" - with: - statusContext: "Validation / Data source ids exist" - state: ${{ job.status }} - ensure-quickstart-dashboard-names-are-unique: name: Ensure quickstart dashboard names are unique runs-on: ubuntu-latest @@ -274,7 +141,6 @@ jobs: run: cd utils && yarn check-dashboard-name-uniqueness - name: Add commit status - if: always() uses: "./.github/actions/add-commit-status" with: statusContext: "Validation / Quickstart dashboard name is unique" diff --git a/.github/workflows/validation_gate.yml b/.github/workflows/validation_gate.yml index 2285f324bb..958de4beb4 100644 --- a/.github/workflows/validation_gate.yml +++ b/.github/workflows/validation_gate.yml @@ -1,6 +1,6 @@ # This looks like a confusing workflow, but it has a purpose (✿ ◕‿◕) # It functions kind of as a workflow shim. We can't setup other important workflows to run on pull_request (due to forks), so we setup this workflow to be triggered by pull_request and it is always able to run. -# When it is finished running, it triggers the other important workflows -- validate_packs, validate_install_plans. +# When it is finished running, it triggers the other important workflows -- validate_packs, etc. # Having it setup this way allows us to have manual approval for this workflow run, and then the subsequent triggered runs can access secrets in the repository for validation (even for forked PRs). name: Validation Gate diff --git a/.gitignore b/.gitignore index 73f10ecd36..939a6f89f4 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,6 @@ utils/node_modules utils/newrelic_agent.log +utils/build # IDE files .DS_Store @@ -17,4 +18,4 @@ snapshots/ yarn.lock .yarn-integrity yarn-error.log -utils/yarn-error.log \ No newline at end of file +utils/yarn-error.log diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e7fa2683f6..6bef31b4df 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -30,8 +30,9 @@ - [Dashboard name uniqueness](#dashboard-name-uniqueness) - [Dashboard screenshots](#dashboard-screenshots) - [Alerts](#alerts) + - [Alert condition fields](#alert-condition-fields) - - [Install Plans (DEPRECATED)](#install-plans-deprecated) + - [Data sources](#data-sources-1) - [Data source fields](#data-source-fields) - [Data source install fields](#data-source-install-fields) @@ -116,7 +117,7 @@ title: Example quickstart description: | ## Long form description - * with + * with * markdown * support @@ -476,6 +477,8 @@ exmaple-screenshot2.png Alerts are defined as policies, which are composed of multiple alert conditions. They are located under the `alert-policies/` directory and CANNOT be nested, an alert policy named `example-policy` would live under `alert-policies/example-policy`. Each condition within a policy is defined using a yaml file. For more information on creating New Relic alert conditions, see [Introduction to alerts](https://docs.newrelic.com/docs/alerts-applied-intelligence/new-relic-alerts/learn-alerts/introduction-alerts) +> **DEPRECATION WARNING** - Standalone alerts are deprecated and should only be used in quickstarts. + ```yaml name: Example alert condition @@ -558,31 +561,6 @@ example-alert-condition2.yml For documentation on the rest of the alert condition fields, please review the [Introduction to alerts](https://docs.newrelic.com/docs/alerts-applied-intelligence/new-relic-alerts/learn-alerts/introduction-alerts) -### Install plans **(DEPRECATED)** - -Install plans are now deprecated in favor of using data sources. To learn about data sources and their fields, view the [data sources section](#data-sources-1) below. If you are migrating from install plans to data sources, the following fields can be used equivalently on data sources when creating a COMMUNITY data source. The fields `title` and `target` do not have an equivalent on data sources. - -| Install plan field | Data souce field | -| ------------------- | ----------------------------------------------------------------- | -| id | `id` | -| name | `displayName` | -| description | `description` | -| install | `install` | -| install.mode | `install.primary.nerdlet` or `install.primary.link` † | -| install.destination | `install.primary.nerdlet.nerdletId` or `install.primary.link.url` | -| fallback | `install.fallback` | - -† _The `install.primary` or `install.fallback` field on data source does not support `targetedInstall`. We are deprecating the use of targeted installs in favor of using CORE data sources. You can learn more about CORE data sources under the [data sources section](#data-sources-1). If you are currently using a targeted install mode and need help with converting a targeted install plan to a CORE data source, please reach out to our team for assistance._ - -_Example of targeted install:_ - -```yaml -install: - mode: targetedInstall - destination: - recipeName: fake-install-recipe -``` - ### Data sources Data sources represent a _single_ type of instrumentation, such as an agent, attributes on a transaction, a cloud provider integration, a third-party integration, etc. @@ -684,7 +662,8 @@ icon.png ``` ## Quickstart Preview -⚠️ There is currently no way to preview Quickstarts locally. + +⚠️ There is currently no way to preview Quickstarts locally.
Deprecated preview steps @@ -722,6 +701,7 @@ icon.png - Once a PR is open for a quickstart, a comment will be automatically generated with a link to the quickstart associated with the PR. - If a PR has multiple quickstarts, a link will be generated in the PR for each quickstart. +
### Feature requests diff --git a/README.md b/README.md index ba3397b87a..81996b4a7e 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ New Relic One quickstarts help accelerate your New Relic journey by providing im - Clear instructions for instrumenting your services - Observability building blocks like dashboards and alerts -All of this is available through our [Instant Observability](https://developer.newrelic.com/instant-observability) open source ecosystem where New Relic developers, partners, and customers contribute their best-practice solutions. +All of this is available through our [Instant Observability](https://developer.newrelic.com/instant-observability) open source ecosystem where New Relic developers, partners, and customers contribute their best practice solutions. ## New Relic One Instant Observability @@ -23,7 +23,7 @@ You can search for all the available quickstarts in the [New Relic Instant Obser > Review our comprehensive [Developer Guide](https://developer.newrelic.com/contribute-to-quickstarts/) to get starting building your quickstart! -Head over to our [contributing guide](./CONTRIBUTING.md) to learn how to define your own quickstart! +Head over to our [contributing guide](./CONTRIBUTING.md) to learn how to define your own quickstart! ## Support @@ -48,4 +48,3 @@ If you believe you have found a security vulnerability in this project or any of ## License New Relic One quickstarts is licensed under the [Apache 2.0](http://apache.org/licenses/LICENSE-2.0.txt) License. - diff --git a/_template/data-sources/example-data-source/config.yml b/_template/data-sources/example-data-source/config.yml index 7dda052980..d32837faca 100644 --- a/_template/data-sources/example-data-source/config.yml +++ b/_template/data-sources/example-data-source/config.yml @@ -1,8 +1,7 @@ id: logs displayName: Display name description: | - ## Description - ## Supports markdown + Description does not support markdown. icon: logo.svg install: primary: diff --git a/_template/quickstarts/example-quickstart/config.yml b/_template/quickstarts/example-quickstart/config.yml index 89d53341e8..059e7410ce 100644 --- a/_template/quickstarts/example-quickstart/config.yml +++ b/_template/quickstarts/example-quickstart/config.yml @@ -44,4 +44,3 @@ documentation: # Content / Design icon: logo.svg -website: https://www.newrelic.com diff --git a/alert-policies/kubernetes-opentelemetry/ContainerCPUThrottling.yaml b/alert-policies/kubernetes-opentelemetry/ContainerCPUThrottling.yaml new file mode 100644 index 0000000000..6ef77428b7 --- /dev/null +++ b/alert-policies/kubernetes-opentelemetry/ContainerCPUThrottling.yaml @@ -0,0 +1,76 @@ +name: Container cpu throttling is high +# Description and details +description: | + Alert when container is being throttled > 25% of the time for more than 5 minutes + +# Type of alert: BASELINE | STATIC +type: STATIC + +# NRQL query +nrql: + query: "from Metric select latest(container_cpu_cfs_throttled_periods_total) / latest(container_cpu_cfs_periods_total)* 100 where k8s.cluster.name in ('YOUR_CLUSTER_NAME') and k8s.namespace.name in ('YOUR_NAMESPACE_NAME') facet k8s.container.name, k8s.pod.name, k8s.namespace.name, k8s.cluster.name" + +# Direction in which baseline is set (Default: LOWER_ONLY) +# baselineDirection: LOWER_ONLY | UPPER_AND_LOWER | UPPER_ONLY + +# 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: 25 + # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + thresholdDuration: 300 + # How many data points must be in violation for the duration + thresholdOccurrences: ALL + + # Adding a Warning threshold is optional + # - priority: WARNING + # # Operator used to compare against the threshold. + # operator: ABOVE + # # Value that triggers a violation + # threshold: 0 + # # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + # thresholdDuration: 60 + # # How many data points must be in violation for the duration + # thresholdOccurrences: AT_LEAST_ONCE + +# Loss of Signal Settings +expiration: + # Close open violations if signal is lost (Default: false) + closeViolationsOnExpiration: true + # Open "Loss of Signal" violation if signal is lost (Default: false) + openViolationOnExpiration: false + # Time in seconds; Max value: 172800 (48hrs), null if closeViolationsOnExpiration and openViolationOnExpiration are both 'false' + expirationDuration: 300 + +# Advanced Signal Settings +# Duration of the time window used to evaluate the NRQL Condition +signal: + # How long we wait for data that belongs in each aggregation window + aggregationDelay: 60 # seconds + # The method that determines when we consider an aggregation window to complete so that we can evaluate the signals for violations. + aggregationMethod: EVENT_FLOW + # How long we wait after each data point arrives to make sure we've processed the whole batch. + aggregationTimer: null # seconds + # Controls the duration of the time window used to evaluate the NRQL query + aggregationWindow: 300 # seconds; 30 seconds <= x < 15 minutes + # Option that determines the type of value that should be used to fill gaps (empty windows). + fillOption: NONE # defaults to STATIC + # If using the static fill option, this value is used for filling. + fillValue: null # default + # This setting gathers data in overlapping time windows to smooth the chart line, making it easier to spot trends. + slideBy: 60 # seconds + # Evaluation delay is how long we wait before we start evaluating a signal against the thresholds in this condition. + evaluationDelay: 60 + +# OPTIONAL: URL of runbook to be sent with notification +runbookUrl: + +# Duration after which a violation automatically closes +# Time in seconds; 300 - 2592000 (Default: 86400 [1 day]) +violationTimeLimitSeconds: 21600 diff --git a/alert-policies/kubernetes-opentelemetry/ContainerHighCPUUtil.yaml b/alert-policies/kubernetes-opentelemetry/ContainerHighCPUUtil.yaml new file mode 100644 index 0000000000..625670c141 --- /dev/null +++ b/alert-policies/kubernetes-opentelemetry/ContainerHighCPUUtil.yaml @@ -0,0 +1,76 @@ +name: Container high cpu utilization +# Description and details +description: | + Alert when the average container cpu utilization (vs. Limit) is > 90% for more than 5 minutes + +# Type of alert: BASELINE | STATIC +type: STATIC + +# NRQL query +nrql: + query: "from Metric select average(container.cpu.utilization) where k8s.cluster.name in ('YOUR_CLUSTER_NAME') and k8s.namespace.name in ('YOUR_NAMESPACE_NAME') facet k8s.container.name, k8s.pod.name, k8s.namespace.name, k8s.cluster.name" + +# Direction in which baseline is set (Default: LOWER_ONLY) +# baselineDirection: LOWER_ONLY | UPPER_AND_LOWER | UPPER_ONLY + +# 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: 90 + # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + thresholdDuration: 300 + # How many data points must be in violation for the duration + thresholdOccurrences: ALL + + # Adding a Warning threshold is optional + # - priority: WARNING + # # Operator used to compare against the threshold. + # operator: ABOVE + # # Value that triggers a violation + # threshold: 0 + # # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + # thresholdDuration: 60 + # # How many data points must be in violation for the duration + # thresholdOccurrences: AT_LEAST_ONCE + +# Loss of Signal Settings +expiration: + # Close open violations if signal is lost (Default: false) + closeViolationsOnExpiration: true + # Open "Loss of Signal" violation if signal is lost (Default: false) + openViolationOnExpiration: false + # Time in seconds; Max value: 172800 (48hrs), null if closeViolationsOnExpiration and openViolationOnExpiration are both 'false' + expirationDuration: 300 + +# Advanced Signal Settings +# Duration of the time window used to evaluate the NRQL Condition +signal: + # How long we wait for data that belongs in each aggregation window + aggregationDelay: 60 # seconds + # The method that determines when we consider an aggregation window to complete so that we can evaluate the signals for violations. + aggregationMethod: EVENT_FLOW + # How long we wait after each data point arrives to make sure we've processed the whole batch. + aggregationTimer: null # seconds + # Controls the duration of the time window used to evaluate the NRQL query + aggregationWindow: 300 # seconds; 30 seconds <= x < 15 minutes + # Option that determines the type of value that should be used to fill gaps (empty windows). + fillOption: NONE # defaults to STATIC + # If using the static fill option, this value is used for filling. + fillValue: null # default + # This setting gathers data in overlapping time windows to smooth the chart line, making it easier to spot trends. + slideBy: 60 # seconds + # Evaluation delay is how long we wait before we start evaluating a signal against the thresholds in this condition. + evaluationDelay: 60 + +# OPTIONAL: URL of runbook to be sent with notification +runbookUrl: + +# Duration after which a violation automatically closes +# Time in seconds; 300 - 2592000 (Default: 86400 [1 day]) +violationTimeLimitSeconds: 21600 diff --git a/alert-policies/kubernetes-opentelemetry/ContainerHighMemUtil.yaml b/alert-policies/kubernetes-opentelemetry/ContainerHighMemUtil.yaml new file mode 100644 index 0000000000..20f68e6954 --- /dev/null +++ b/alert-policies/kubernetes-opentelemetry/ContainerHighMemUtil.yaml @@ -0,0 +1,76 @@ +name: Container high memory utilization +# Description and details +description: | + Alert when the average container memory utilization (vs. Limit) is > 90% for more than 5 minutes + +# Type of alert: BASELINE | STATIC +type: STATIC + +# NRQL query +nrql: + query: "from Metric select max(container_memory_working_set_bytes) / filter(max(kube_pod_container_resource_limits), where resource = 'memory') where k8s.cluster.name in ('YOUR_CLUSTER_NAME') and k8s.namespace.name in ('YOUR_NAMESPACE_NAME') facet pod, container, k8s.namespace.name, k8s.cluster.name" + +# Direction in which baseline is set (Default: LOWER_ONLY) +# baselineDirection: LOWER_ONLY | UPPER_AND_LOWER | UPPER_ONLY + +# 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: 90 + # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + thresholdDuration: 300 + # How many data points must be in violation for the duration + thresholdOccurrences: ALL + + # Adding a Warning threshold is optional + # - priority: WARNING + # # Operator used to compare against the threshold. + # operator: ABOVE + # # Value that triggers a violation + # threshold: 0 + # # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + # thresholdDuration: 60 + # # How many data points must be in violation for the duration + # thresholdOccurrences: AT_LEAST_ONCE + +# Loss of Signal Settings +expiration: + # Close open violations if signal is lost (Default: false) + closeViolationsOnExpiration: true + # Open "Loss of Signal" violation if signal is lost (Default: false) + openViolationOnExpiration: false + # Time in seconds; Max value: 172800 (48hrs), null if closeViolationsOnExpiration and openViolationOnExpiration are both 'false' + expirationDuration: 300 + +# Advanced Signal Settings +# Duration of the time window used to evaluate the NRQL Condition +signal: + # How long we wait for data that belongs in each aggregation window + aggregationDelay: 60 # seconds + # The method that determines when we consider an aggregation window to complete so that we can evaluate the signals for violations. + aggregationMethod: EVENT_FLOW + # How long we wait after each data point arrives to make sure we've processed the whole batch. + aggregationTimer: null # seconds + # Controls the duration of the time window used to evaluate the NRQL query + aggregationWindow: 300 # seconds; 30 seconds <= x < 15 minutes + # Option that determines the type of value that should be used to fill gaps (empty windows). + fillOption: NONE # defaults to STATIC + # If using the static fill option, this value is used for filling. + fillValue: null # default + # This setting gathers data in overlapping time windows to smooth the chart line, making it easier to spot trends. + slideBy: 60 # seconds + # Evaluation delay is how long we wait before we start evaluating a signal against the thresholds in this condition. + evaluationDelay: 60 + +# OPTIONAL: URL of runbook to be sent with notification +runbookUrl: + +# Duration after which a violation automatically closes +# Time in seconds; 300 - 2592000 (Default: 86400 [1 day]) +violationTimeLimitSeconds: 21600 diff --git a/alert-policies/kubernetes-opentelemetry/ContainerRestarting.yaml b/alert-policies/kubernetes-opentelemetry/ContainerRestarting.yaml new file mode 100644 index 0000000000..9df6519ebd --- /dev/null +++ b/alert-policies/kubernetes-opentelemetry/ContainerRestarting.yaml @@ -0,0 +1,73 @@ +name: Container is Restarting + +# Description and details +description: | + Alert when the container restart count is greater than 0 in a sliding 5 minute window + +# Type of alert: BASELINE | STATIC +type: STATIC + +# NRQL query +nrql: + query: "from Metric select sum(kube_pod_container_status_restarts_total) where metricName = 'kube_pod_container_status_restarts_total' and k8s.cluster.name in ('YOUR_CLUSTER_NAME') and k8s.namespace.name in ('YOUR_NAMESPACE_NAME') FACET k8s.container.name, k8s.pod.name, k8s.namespace.name, k8s.cluster.name" + +# Direction in which baseline is set (Default: LOWER_ONLY) +# baselineDirection: LOWER_ONLY | UPPER_AND_LOWER | UPPER_ONLY + +# 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 + # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + 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: 1 + # thresholdDuration: 300 + # thresholdOccurrences: ALL | AT_LEAST_ONCE + +# Loss of Signal Settings +expiration: + # Close open violations if signal is lost (Default: false) + closeViolationsOnExpiration: true + # Open "Loss of Signal" violation if signal is lost (Default: false) + openViolationOnExpiration: false + # Time in seconds; Max value: 172800 (48hrs), null if closeViolationsOnExpiration and openViolationOnExpiration are both 'false' + expirationDuration: 300 + +# Advanced Signal Settings +# Duration of the time window used to evaluate the NRQL Condition +signal: + # How long we wait for data that belongs in each aggregation window + aggregationDelay: 60 # seconds + # The method that determines when we consider an aggregation window to complete so that we can evaluate the signals for violations. + aggregationMethod: EVENT_FLOW + # How long we wait after each data point arrives to make sure we've processed the whole batch. + aggregationTimer: null # seconds + # Controls the duration of the time window used to evaluate the NRQL query + aggregationWindow: 300 # seconds; 30 seconds <= x < 15 minutes + # Option that determines the type of value that should be used to fill gaps (empty windows). + fillOption: NONE # defaults to STATIC + # If using the static fill option, this value is used for filling. + fillValue: null # default + # This setting gathers data in overlapping time windows to smooth the chart line, making it easier to spot trends. + slideBy: 60 # seconds + # Evaluation delay is how long we wait before we start evaluating a signal against the thresholds in this condition. + evaluationDelay: 60 + +# OPTIONAL: URL of runbook to be sent with notification +runbookUrl: + +# Duration after which a violation automatically closes +# Time in seconds; 300 - 2592000 (Default: 86400 [1 day]) +violationTimeLimitSeconds: 21600 diff --git a/alert-policies/kubernetes-opentelemetry/ContainerWaiting.yaml b/alert-policies/kubernetes-opentelemetry/ContainerWaiting.yaml new file mode 100644 index 0000000000..d47e2bc813 --- /dev/null +++ b/alert-policies/kubernetes-opentelemetry/ContainerWaiting.yaml @@ -0,0 +1,73 @@ +name: Container is Waiting + +# Description and details +description: | + Alert when a container is Waiting for more than 5 minutes + +# Type of alert: BASELINE | STATIC +type: STATIC + +# NRQL query +nrql: + query: "from Metric select uniqueCount(k8s.pod.name) WHERE container_phase = 'waiting' and k8s.cluster.name in ('YOUR_CLUSTER_NAME') and k8s.namespace.name in ('YOUR_NAMESPACE_NAME') FACET k8s.container.name, k8s.pod.name, k8s.namespace.name, k8s.cluster.name" + +# Direction in which baseline is set (Default: LOWER_ONLY) +# baselineDirection: LOWER_ONLY | UPPER_AND_LOWER | UPPER_ONLY + +# 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 + # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + 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: 1 + # thresholdDuration: 300 + # thresholdOccurrences: ALL | AT_LEAST_ONCE + +# Loss of Signal Settings +expiration: + # Close open violations if signal is lost (Default: false) + closeViolationsOnExpiration: true + # Open "Loss of Signal" violation if signal is lost (Default: false) + openViolationOnExpiration: false + # Time in seconds; Max value: 172800 (48hrs), null if closeViolationsOnExpiration and openViolationOnExpiration are both 'false' + expirationDuration: 300 + +# Advanced Signal Settings +# Duration of the time window used to evaluate the NRQL Condition +signal: + # How long we wait for data that belongs in each aggregation window + aggregationDelay: 60 # seconds + # The method that determines when we consider an aggregation window to complete so that we can evaluate the signals for violations. + aggregationMethod: EVENT_FLOW + # How long we wait after each data point arrives to make sure we've processed the whole batch. + aggregationTimer: null # seconds + # Controls the duration of the time window used to evaluate the NRQL query + aggregationWindow: 60 # seconds; 30 seconds <= x < 15 minutes + # Option that determines the type of value that should be used to fill gaps (empty windows). + fillOption: NONE # defaults to STATIC + # If using the static fill option, this value is used for filling. + fillValue: null # default + # This setting gathers data in overlapping time windows to smooth the chart line, making it easier to spot trends. + slideBy: null # seconds + # Evaluation delay is how long we wait before we start evaluating a signal against the thresholds in this condition. + evaluationDelay: 60 + +# OPTIONAL: URL of runbook to be sent with notification +runbookUrl: + +# Duration after which a violation automatically closes +# Time in seconds; 300 - 2592000 (Default: 86400 [1 day]) +violationTimeLimitSeconds: 21600 diff --git a/alert-policies/kubernetes-opentelemetry/DaemonsetPodsMissing.yaml b/alert-policies/kubernetes-opentelemetry/DaemonsetPodsMissing.yaml new file mode 100644 index 0000000000..3dd5ae52f3 --- /dev/null +++ b/alert-policies/kubernetes-opentelemetry/DaemonsetPodsMissing.yaml @@ -0,0 +1,73 @@ +name: Daemonset is missing Pods + +# Description and details +description: | + Alert when Daemonset is missing Pods for > 5 minutes + +# Type of alert: BASELINE | STATIC +type: STATIC + +# NRQL query +nrql: + query: "from Metric select latest(kube_daemonset_status_desired_number_scheduled) - latest(kube_daemonset_status_number_ready) where k8s.cluster.name in ('YOUR_CLUSTER_NAME') and k8s.namespace.name in ('YOUR_NAMESPACE_NAME') facet k8s.daemonset.name, k8s.namespace.name, k8s.cluster.name" + +# Direction in which baseline is set (Default: LOWER_ONLY) +# baselineDirection: LOWER_ONLY | UPPER_AND_LOWER | UPPER_ONLY + +# 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 + # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + 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: 1 + # thresholdDuration: 300 + # thresholdOccurrences: ALL | AT_LEAST_ONCE + +# Loss of Signal Settings +expiration: + # Close open violations if signal is lost (Default: false) + closeViolationsOnExpiration: true + # Open "Loss of Signal" violation if signal is lost (Default: false) + openViolationOnExpiration: false + # Time in seconds; Max value: 172800 (48hrs), null if closeViolationsOnExpiration and openViolationOnExpiration are both 'false' + expirationDuration: 300 + +# Advanced Signal Settings +# Duration of the time window used to evaluate the NRQL Condition +signal: + # How long we wait for data that belongs in each aggregation window + aggregationDelay: 60 # seconds + # The method that determines when we consider an aggregation window to complete so that we can evaluate the signals for violations. + aggregationMethod: EVENT_FLOW + # How long we wait after each data point arrives to make sure we've processed the whole batch. + aggregationTimer: null # seconds + # Controls the duration of the time window used to evaluate the NRQL query + aggregationWindow: 60 # seconds; 30 seconds <= x < 15 minutes + # Option that determines the type of value that should be used to fill gaps (empty windows). + fillOption: NONE # defaults to STATIC + # If using the static fill option, this value is used for filling. + fillValue: null # default + # This setting gathers data in overlapping time windows to smooth the chart line, making it easier to spot trends. + slideBy: null # seconds + # Evaluation delay is how long we wait before we start evaluating a signal against the thresholds in this condition. + evaluationDelay: 60 + +# OPTIONAL: URL of runbook to be sent with notification +runbookUrl: + +# Duration after which a violation automatically closes +# Time in seconds; 300 - 2592000 (Default: 86400 [1 day]) +violationTimeLimitSeconds: 21600 diff --git a/alert-policies/kubernetes-opentelemetry/DeploymentPodsMissing.yaml b/alert-policies/kubernetes-opentelemetry/DeploymentPodsMissing.yaml new file mode 100644 index 0000000000..0dc3e4f664 --- /dev/null +++ b/alert-policies/kubernetes-opentelemetry/DeploymentPodsMissing.yaml @@ -0,0 +1,73 @@ +name: Deployment is missing Pods + +# Description and details +description: | + Alert when Deployment is missing Pods for > 5 minutes + +# Type of alert: BASELINE | STATIC +type: STATIC + +# NRQL query +nrql: + query: "from Metric select latest(kube_deployment_spec_replicas) - latest(kube_deployment_status_replicas) where k8s.cluster.name in ('YOUR_CLUSTER_NAME') and k8s.namespace.name in ('YOUR_NAMESPACE_NAME') facet k8s.deployment.name, k8s.namespace.name, k8s.cluster.name" + +# Direction in which baseline is set (Default: LOWER_ONLY) +# baselineDirection: LOWER_ONLY | UPPER_AND_LOWER | UPPER_ONLY + +# 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 + # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + 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: 1 + # thresholdDuration: 300 + # thresholdOccurrences: ALL | AT_LEAST_ONCE + +# Loss of Signal Settings +expiration: + # Close open violations if signal is lost (Default: false) + closeViolationsOnExpiration: true + # Open "Loss of Signal" violation if signal is lost (Default: false) + openViolationOnExpiration: false + # Time in seconds; Max value: 172800 (48hrs), null if closeViolationsOnExpiration and openViolationOnExpiration are both 'false' + expirationDuration: 300 + +# Advanced Signal Settings +# Duration of the time window used to evaluate the NRQL Condition +signal: + # How long we wait for data that belongs in each aggregation window + aggregationDelay: 60 # seconds + # The method that determines when we consider an aggregation window to complete so that we can evaluate the signals for violations. + aggregationMethod: EVENT_FLOW + # How long we wait after each data point arrives to make sure we've processed the whole batch. + aggregationTimer: null # seconds + # Controls the duration of the time window used to evaluate the NRQL query + aggregationWindow: 60 # seconds; 30 seconds <= x < 15 minutes + # Option that determines the type of value that should be used to fill gaps (empty windows). + fillOption: NONE # defaults to STATIC + # If using the static fill option, this value is used for filling. + fillValue: null # default + # This setting gathers data in overlapping time windows to smooth the chart line, making it easier to spot trends. + slideBy: null # seconds + # Evaluation delay is how long we wait before we start evaluating a signal against the thresholds in this condition. + evaluationDelay: 60 + +# OPTIONAL: URL of runbook to be sent with notification +runbookUrl: + +# Duration after which a violation automatically closes +# Time in seconds; 300 - 2592000 (Default: 86400 [1 day]) +violationTimeLimitSeconds: 21600 diff --git a/alert-policies/kubernetes-opentelemetry/JobFailedOtel.yaml b/alert-policies/kubernetes-opentelemetry/JobFailedOtel.yaml new file mode 100644 index 0000000000..2b5c52374e --- /dev/null +++ b/alert-policies/kubernetes-opentelemetry/JobFailedOtel.yaml @@ -0,0 +1,77 @@ +name: Job Failed + +# Description and details +description: | + Alert when a Job reports a failed status + +# Type of alert: BASELINE | STATIC +type: STATIC + +# NRQL query +nrql: + query: "from Metric select if(latest(kube_job_failed), uniqueCount(job_name), 0) where k8s.cluster.name in ('YOUR_CLUSTER_NAME') and k8s.namespace.name in ('YOUR_NAMESPACE_NAME') facet job_name, k8s.namespace.name, k8s.cluster.name" + +# Direction in which baseline is set (Default: LOWER_ONLY) +# baselineDirection: LOWER_ONLY | UPPER_AND_LOWER | UPPER_ONLY + +# 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 + # # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + # thresholdDuration: 300 + # # How many data points must be in violation for the duration + # thresholdOccurrences: ALL + + # Adding a Warning threshold is optional + - priority: WARNING + # Operator used to compare against the threshold. + operator: ABOVE + # Value that triggers a violation + threshold: 0 + # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + thresholdDuration: 60 + # How many data points must be in violation for the duration + thresholdOccurrences: AT_LEAST_ONCE + +# Loss of Signal Settings +expiration: + # Close open violations if signal is lost (Default: false) + closeViolationsOnExpiration: true + # Open "Loss of Signal" violation if signal is lost (Default: false) + openViolationOnExpiration: false + # Time in seconds; Max value: 172800 (48hrs), null if closeViolationsOnExpiration and openViolationOnExpiration are both 'false' + expirationDuration: 300 + +# Advanced Signal Settings +# Duration of the time window used to evaluate the NRQL Condition +signal: + # How long we wait for data that belongs in each aggregation window + aggregationDelay: 60 # seconds + # The method that determines when we consider an aggregation window to complete so that we can evaluate the signals for violations. + aggregationMethod: EVENT_FLOW + # How long we wait after each data point arrives to make sure we've processed the whole batch. + aggregationTimer: null # seconds + # Controls the duration of the time window used to evaluate the NRQL query + aggregationWindow: 60 # seconds; 30 seconds <= x < 15 minutes + # Option that determines the type of value that should be used to fill gaps (empty windows). + fillOption: NONE # defaults to STATIC + # If using the static fill option, this value is used for filling. + fillValue: null # default + # This setting gathers data in overlapping time windows to smooth the chart line, making it easier to spot trends. + slideBy: null # seconds + # Evaluation delay is how long we wait before we start evaluating a signal against the thresholds in this condition. + evaluationDelay: null + +# OPTIONAL: URL of runbook to be sent with notification +runbookUrl: + +# Duration after which a violation automatically closes +# Time in seconds; 300 - 2592000 (Default: 86400 [1 day]) +violationTimeLimitSeconds: 21600 diff --git a/alert-policies/kubernetes-opentelemetry/NodeHighAllocatableCPUUtil.yaml b/alert-policies/kubernetes-opentelemetry/NodeHighAllocatableCPUUtil.yaml new file mode 100644 index 0000000000..400094e63f --- /dev/null +++ b/alert-policies/kubernetes-opentelemetry/NodeHighAllocatableCPUUtil.yaml @@ -0,0 +1,76 @@ +name: Node allocatable cpu utilization is high +# Description and details +description: | + Alert when the average Node allocatable cpu utilization is > 90% for more than 5 minutes + +# Type of alert: BASELINE | STATIC +type: STATIC + +# NRQL query +nrql: + query: "from Metric select average(k8s.node.cpu.utilization) * 100 where k8s.cluster.name in ('YOUR_CLUSTER_NAME') facet k8s.node.name, k8s.cluster.name" + +# Direction in which baseline is set (Default: LOWER_ONLY) +# baselineDirection: LOWER_ONLY | UPPER_AND_LOWER | UPPER_ONLY + +# 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: 90 + # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + thresholdDuration: 300 + # How many data points must be in violation for the duration + thresholdOccurrences: ALL + + # Adding a Warning threshold is optional + # - priority: WARNING + # # Operator used to compare against the threshold. + # operator: ABOVE + # # Value that triggers a violation + # threshold: 0 + # # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + # thresholdDuration: 60 + # # How many data points must be in violation for the duration + # thresholdOccurrences: AT_LEAST_ONCE + +# Loss of Signal Settings +expiration: + # Close open violations if signal is lost (Default: false) + closeViolationsOnExpiration: true + # Open "Loss of Signal" violation if signal is lost (Default: false) + openViolationOnExpiration: false + # Time in seconds; Max value: 172800 (48hrs), null if closeViolationsOnExpiration and openViolationOnExpiration are both 'false' + expirationDuration: 900 + +# Advanced Signal Settings +# Duration of the time window used to evaluate the NRQL Condition +signal: + # How long we wait for data that belongs in each aggregation window + aggregationDelay: 60 # seconds + # The method that determines when we consider an aggregation window to complete so that we can evaluate the signals for violations. + aggregationMethod: EVENT_FLOW + # How long we wait after each data point arrives to make sure we've processed the whole batch. + aggregationTimer: null # seconds + # Controls the duration of the time window used to evaluate the NRQL query + aggregationWindow: 300 # seconds; 30 seconds <= x < 15 minutes + # Option that determines the type of value that should be used to fill gaps (empty windows). + fillOption: NONE # defaults to STATIC + # If using the static fill option, this value is used for filling. + fillValue: null # default + # This setting gathers data in overlapping time windows to smooth the chart line, making it easier to spot trends. + slideBy: 60 # seconds + # Evaluation delay is how long we wait before we start evaluating a signal against the thresholds in this condition. + evaluationDelay: 60 + +# OPTIONAL: URL of runbook to be sent with notification +runbookUrl: + +# Duration after which a violation automatically closes +# Time in seconds; 300 - 2592000 (Default: 86400 [1 day]) +violationTimeLimitSeconds: 21600 diff --git a/alert-policies/kubernetes-opentelemetry/NodeHighAllocatableMemUtil.yaml b/alert-policies/kubernetes-opentelemetry/NodeHighAllocatableMemUtil.yaml new file mode 100644 index 0000000000..c34b683fae --- /dev/null +++ b/alert-policies/kubernetes-opentelemetry/NodeHighAllocatableMemUtil.yaml @@ -0,0 +1,76 @@ +name: Node allocatable memory utilization is high +# Description and details +description: | + Alert when the average Node allocatable memory utilization is > 90% for more than 5 minutes + +# Type of alert: BASELINE | STATIC +type: STATIC + +# NRQL query +nrql: + query: "from Metric select (average(k8s.node.memory.working_set) / filter(latest(kube_node_status_allocatable), WHERE resource = 'memory')) * 100 where k8s.cluster.name in ('YOUR_CLUSTER_NAME') facet k8s.node.name, k8s.cluster.name" + +# Direction in which baseline is set (Default: LOWER_ONLY) +# baselineDirection: LOWER_ONLY | UPPER_AND_LOWER | UPPER_ONLY + +# 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: 90 + # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + thresholdDuration: 300 + # How many data points must be in violation for the duration + thresholdOccurrences: ALL + + # Adding a Warning threshold is optional + # - priority: WARNING + # # Operator used to compare against the threshold. + # operator: ABOVE + # # Value that triggers a violation + # threshold: 0 + # # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + # thresholdDuration: 60 + # # How many data points must be in violation for the duration + # thresholdOccurrences: AT_LEAST_ONCE + +# Loss of Signal Settings +expiration: + # Close open violations if signal is lost (Default: false) + closeViolationsOnExpiration: true + # Open "Loss of Signal" violation if signal is lost (Default: false) + openViolationOnExpiration: false + # Time in seconds; Max value: 172800 (48hrs), null if closeViolationsOnExpiration and openViolationOnExpiration are both 'false' + expirationDuration: 900 + +# Advanced Signal Settings +# Duration of the time window used to evaluate the NRQL Condition +signal: + # How long we wait for data that belongs in each aggregation window + aggregationDelay: 60 # seconds + # The method that determines when we consider an aggregation window to complete so that we can evaluate the signals for violations. + aggregationMethod: EVENT_FLOW + # How long we wait after each data point arrives to make sure we've processed the whole batch. + aggregationTimer: null # seconds + # Controls the duration of the time window used to evaluate the NRQL query + aggregationWindow: 300 # seconds; 30 seconds <= x < 15 minutes + # Option that determines the type of value that should be used to fill gaps (empty windows). + fillOption: NONE # defaults to STATIC + # If using the static fill option, this value is used for filling. + fillValue: null # default + # This setting gathers data in overlapping time windows to smooth the chart line, making it easier to spot trends. + slideBy: 60 # seconds + # Evaluation delay is how long we wait before we start evaluating a signal against the thresholds in this condition. + evaluationDelay: 60 + +# OPTIONAL: URL of runbook to be sent with notification +runbookUrl: + +# Duration after which a violation automatically closes +# Time in seconds; 300 - 2592000 (Default: 86400 [1 day]) +violationTimeLimitSeconds: 21600 diff --git a/alert-policies/kubernetes-opentelemetry/NodeHighFSCapacityUtil.yaml b/alert-policies/kubernetes-opentelemetry/NodeHighFSCapacityUtil.yaml new file mode 100644 index 0000000000..4c57ae6d0b --- /dev/null +++ b/alert-policies/kubernetes-opentelemetry/NodeHighFSCapacityUtil.yaml @@ -0,0 +1,76 @@ +name: Node root file system capacity utilization is high +# Description and details +description: | + Alert when the average Node root file system capacity utilization is > 90% for more than 5 minutes + +# Type of alert: BASELINE | STATIC +type: STATIC + +# NRQL query +nrql: + query: "from Metric select (average(k8s.node.filesystem.usage) / average(k8s.node.filesystem.capacity)) * 100 where k8s.cluster.name in ('YOUR_CLUSTER_NAME') facet k8s.node.name, k8s.cluster.name" + +# Direction in which baseline is set (Default: LOWER_ONLY) +# baselineDirection: LOWER_ONLY | UPPER_AND_LOWER | UPPER_ONLY + +# 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: 90 + # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + thresholdDuration: 300 + # How many data points must be in violation for the duration + thresholdOccurrences: ALL + + # Adding a Warning threshold is optional + # - priority: WARNING + # # Operator used to compare against the threshold. + # operator: ABOVE + # # Value that triggers a violation + # threshold: 0 + # # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + # thresholdDuration: 60 + # # How many data points must be in violation for the duration + # thresholdOccurrences: AT_LEAST_ONCE + +# Loss of Signal Settings +expiration: + # Close open violations if signal is lost (Default: false) + closeViolationsOnExpiration: true + # Open "Loss of Signal" violation if signal is lost (Default: false) + openViolationOnExpiration: false + # Time in seconds; Max value: 172800 (48hrs), null if closeViolationsOnExpiration and openViolationOnExpiration are both 'false' + expirationDuration: 900 + +# Advanced Signal Settings +# Duration of the time window used to evaluate the NRQL Condition +signal: + # How long we wait for data that belongs in each aggregation window + aggregationDelay: 60 # seconds + # The method that determines when we consider an aggregation window to complete so that we can evaluate the signals for violations. + aggregationMethod: EVENT_FLOW + # How long we wait after each data point arrives to make sure we've processed the whole batch. + aggregationTimer: null # seconds + # Controls the duration of the time window used to evaluate the NRQL query + aggregationWindow: 300 # seconds; 30 seconds <= x < 15 minutes + # Option that determines the type of value that should be used to fill gaps (empty windows). + fillOption: NONE # defaults to STATIC + # If using the static fill option, this value is used for filling. + fillValue: null # default + # This setting gathers data in overlapping time windows to smooth the chart line, making it easier to spot trends. + slideBy: 60 # seconds + # Evaluation delay is how long we wait before we start evaluating a signal against the thresholds in this condition. + evaluationDelay: 60 + +# OPTIONAL: URL of runbook to be sent with notification +runbookUrl: + +# Duration after which a violation automatically closes +# Time in seconds; 300 - 2592000 (Default: 86400 [1 day]) +violationTimeLimitSeconds: 21600 diff --git a/alert-policies/kubernetes-opentelemetry/NodeIsNotReady.yaml b/alert-policies/kubernetes-opentelemetry/NodeIsNotReady.yaml new file mode 100644 index 0000000000..b64fd15328 --- /dev/null +++ b/alert-policies/kubernetes-opentelemetry/NodeIsNotReady.yaml @@ -0,0 +1,77 @@ +name: Node is not ready + +# Description and details +description: | + Alert when a Node is not ready for > 5 minutes + +# Type of alert: BASELINE | STATIC +type: STATIC + +# NRQL query +nrql: + query: "from Metric select if(latest(condition) = 'Ready', 0, 1) where k8s.cluster.name in ('YOUR_CLUSTER_NAME') facet k8s.node.name, k8s.cluster.name" + +# Direction in which baseline is set (Default: LOWER_ONLY) +# baselineDirection: LOWER_ONLY | UPPER_AND_LOWER | UPPER_ONLY + +# 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: BELOW + # Value that triggers a violation + threshold: 1 + # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + thresholdDuration: 300 + # How many data points must be in violation for the duration + thresholdOccurrences: ALL + + # Adding a Warning threshold is optional + # - priority: WARNING + # # Operator used to compare against the threshold. + # operator: ABOVE + # # Value that triggers a violation + # threshold: 0 + # # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + # thresholdDuration: 60 + # # How many data points must be in violation for the duration + # thresholdOccurrences: AT_LEAST_ONCE + +# Loss of Signal Settings +expiration: + # Close open violations if signal is lost (Default: false) + closeViolationsOnExpiration: true + # Open "Loss of Signal" violation if signal is lost (Default: false) + openViolationOnExpiration: false + # Time in seconds; Max value: 172800 (48hrs), null if closeViolationsOnExpiration and openViolationOnExpiration are both 'false' + expirationDuration: 300 + +# Advanced Signal Settings +# Duration of the time window used to evaluate the NRQL Condition +signal: + # How long we wait for data that belongs in each aggregation window + aggregationDelay: 60 # seconds + # The method that determines when we consider an aggregation window to complete so that we can evaluate the signals for violations. + aggregationMethod: EVENT_FLOW + # How long we wait after each data point arrives to make sure we've processed the whole batch. + aggregationTimer: null # seconds + # Controls the duration of the time window used to evaluate the NRQL query + aggregationWindow: 60 # seconds; 30 seconds <= x < 15 minutes + # Option that determines the type of value that should be used to fill gaps (empty windows). + fillOption: NONE # defaults to STATIC + # If using the static fill option, this value is used for filling. + fillValue: null # default + # This setting gathers data in overlapping time windows to smooth the chart line, making it easier to spot trends. + slideBy: null # seconds + # Evaluation delay is how long we wait before we start evaluating a signal against the thresholds in this condition. + evaluationDelay: 300 + +# OPTIONAL: URL of runbook to be sent with notification +runbookUrl: + +# Duration after which a violation automatically closes +# Time in seconds; 300 - 2592000 (Default: 86400 [1 day]) +violationTimeLimitSeconds: 21600 diff --git a/alert-policies/kubernetes-opentelemetry/NodePodCapacity.yaml b/alert-policies/kubernetes-opentelemetry/NodePodCapacity.yaml new file mode 100644 index 0000000000..41026339b3 --- /dev/null +++ b/alert-policies/kubernetes-opentelemetry/NodePodCapacity.yaml @@ -0,0 +1,77 @@ +name: Node Pod count nearing capacity + +# Description and details +description: | + Alert when the Running pod count on a Node is > 90% of the Node's Pod Capacity for more than 5 minutes + +# Type of alert: BASELINE | STATIC +type: STATIC + +# NRQL query +nrql: + query: "FROM Metric select filter(uniqueCount(k8s.pod.name), where phase = 'Running' AND (metricName = 'kube_pod_status_phase' AND kube_pod_status_phase ['latest'] = 1) and created_by_kind != 'Job' ) / filter(latest(kube_node_status_allocatable), WHERE resource = 'pods' ) * 100 as 'Pod Capacity %' where k8s.cluster.name in ('YOUR_CLUSTER_NAME')" + +# Direction in which baseline is set (Default: LOWER_ONLY) +# baselineDirection: LOWER_ONLY | UPPER_AND_LOWER | UPPER_ONLY + +# 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: 90 + # # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + # thresholdDuration: 300 + # # How many data points must be in violation for the duration + # thresholdOccurrences: ALL + + # Adding a Warning threshold is optional + - priority: WARNING + # Operator used to compare against the threshold. + operator: ABOVE + # Value that triggers a violation + threshold: 90 + # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + thresholdDuration: 300 + # How many data points must be in violation for the duration + thresholdOccurrences: ALL + +# Loss of Signal Settings +expiration: + # Close open violations if signal is lost (Default: false) + closeViolationsOnExpiration: true + # Open "Loss of Signal" violation if signal is lost (Default: false) + openViolationOnExpiration: false + # Time in seconds; Max value: 172800 (48hrs), null if closeViolationsOnExpiration and openViolationOnExpiration are both 'false' + expirationDuration: 300 + +# Advanced Signal Settings +# Duration of the time window used to evaluate the NRQL Condition +signal: + # How long we wait for data that belongs in each aggregation window + aggregationDelay: 60 # seconds + # The method that determines when we consider an aggregation window to complete so that we can evaluate the signals for violations. + aggregationMethod: EVENT_FLOW + # How long we wait after each data point arrives to make sure we've processed the whole batch. + aggregationTimer: null # seconds + # Controls the duration of the time window used to evaluate the NRQL query + aggregationWindow: 60 # seconds; 30 seconds <= x < 15 minutes + # Option that determines the type of value that should be used to fill gaps (empty windows). + fillOption: NONE # defaults to STATIC + # If using the static fill option, this value is used for filling. + fillValue: null # default + # This setting gathers data in overlapping time windows to smooth the chart line, making it easier to spot trends. + slideBy: null # seconds + # Evaluation delay is how long we wait before we start evaluating a signal against the thresholds in this condition. + evaluationDelay: 300 + +# OPTIONAL: URL of runbook to be sent with notification +runbookUrl: + +# Duration after which a violation automatically closes +# Time in seconds; 300 - 2592000 (Default: 86400 [1 day]) +violationTimeLimitSeconds: 21600 diff --git a/alert-policies/kubernetes-opentelemetry/PersistentVolumeErrors.yaml b/alert-policies/kubernetes-opentelemetry/PersistentVolumeErrors.yaml new file mode 100644 index 0000000000..73fd69119f --- /dev/null +++ b/alert-policies/kubernetes-opentelemetry/PersistentVolumeErrors.yaml @@ -0,0 +1,73 @@ +name: Persistent Volume has errors + +# Description and details +description: | + Alert when Persistent Volume is in a Failed or Pending state for more than 5 minutes + +# Type of alert: BASELINE | STATIC +type: STATIC + +# NRQL query +nrql: + query: "from Metric select uniqueCount(persistentvolume) where phase in ('Failed','Pending') and k8s.cluster.name in ('YOUR_CLUSTER_NAME') facet persistentvolume, k8s.cluster.name" + +# Direction in which baseline is set (Default: LOWER_ONLY) +# baselineDirection: LOWER_ONLY | UPPER_AND_LOWER | UPPER_ONLY + +# 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 + # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + 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: 1 + # thresholdDuration: 300 + # thresholdOccurrences: ALL | AT_LEAST_ONCE + +# Loss of Signal Settings +expiration: + # Close open violations if signal is lost (Default: false) + closeViolationsOnExpiration: true + # Open "Loss of Signal" violation if signal is lost (Default: false) + openViolationOnExpiration: false + # Time in seconds; Max value: 172800 (48hrs), null if closeViolationsOnExpiration and openViolationOnExpiration are both 'false' + expirationDuration: 300 + +# Advanced Signal Settings +# Duration of the time window used to evaluate the NRQL Condition +signal: + # How long we wait for data that belongs in each aggregation window + aggregationDelay: 60 # seconds + # The method that determines when we consider an aggregation window to complete so that we can evaluate the signals for violations. + aggregationMethod: EVENT_FLOW + # How long we wait after each data point arrives to make sure we've processed the whole batch. + aggregationTimer: null # seconds + # Controls the duration of the time window used to evaluate the NRQL query + aggregationWindow: 60 # seconds; 30 seconds <= x < 15 minutes + # Option that determines the type of value that should be used to fill gaps (empty windows). + fillOption: NONE # defaults to STATIC + # If using the static fill option, this value is used for filling. + fillValue: null # default + # This setting gathers data in overlapping time windows to smooth the chart line, making it easier to spot trends. + slideBy: null # seconds + # Evaluation delay is how long we wait before we start evaluating a signal against the thresholds in this condition. + evaluationDelay: 60 + +# OPTIONAL: URL of runbook to be sent with notification +runbookUrl: + +# Duration after which a violation automatically closes +# Time in seconds; 300 - 2592000 (Default: 86400 [1 day]) +violationTimeLimitSeconds: 21600 diff --git a/alert-policies/kubernetes-opentelemetry/PodNotReady.yaml b/alert-policies/kubernetes-opentelemetry/PodNotReady.yaml new file mode 100644 index 0000000000..1418e1189e --- /dev/null +++ b/alert-policies/kubernetes-opentelemetry/PodNotReady.yaml @@ -0,0 +1,77 @@ +name: Pod is not ready + +# Description and details +description: | + Alert when a Pod is not ready for > 5 minutes + +# Type of alert: BASELINE | STATIC +type: STATIC + +# NRQL query +nrql: + query: "from Metric select latest(kube_pod_status_ready) where k8s.cluster.name in ('YOUR_CLUSTER_NAME') and k8s.namespace.name in ('YOUR_NAMESPACE_NAME') facet k8s.pod.name, k8s.namespace.name, k8s.cluster.name" + +# Direction in which baseline is set (Default: LOWER_ONLY) +# baselineDirection: LOWER_ONLY | UPPER_AND_LOWER | UPPER_ONLY + +# 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: BELOW + # Value that triggers a violation + threshold: 1 + # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + thresholdDuration: 300 + # How many data points must be in violation for the duration + thresholdOccurrences: ALL + + # Adding a Warning threshold is optional + # - priority: WARNING + # # Operator used to compare against the threshold. + # operator: ABOVE + # # Value that triggers a violation + # threshold: 0 + # # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + # thresholdDuration: 60 + # # How many data points must be in violation for the duration + # thresholdOccurrences: AT_LEAST_ONCE + +# Loss of Signal Settings +expiration: + # Close open violations if signal is lost (Default: false) + closeViolationsOnExpiration: true + # Open "Loss of Signal" violation if signal is lost (Default: false) + openViolationOnExpiration: false + # Time in seconds; Max value: 172800 (48hrs), null if closeViolationsOnExpiration and openViolationOnExpiration are both 'false' + expirationDuration: 300 + +# Advanced Signal Settings +# Duration of the time window used to evaluate the NRQL Condition +signal: + # How long we wait for data that belongs in each aggregation window + aggregationDelay: 60 # seconds + # The method that determines when we consider an aggregation window to complete so that we can evaluate the signals for violations. + aggregationMethod: EVENT_FLOW + # How long we wait after each data point arrives to make sure we've processed the whole batch. + aggregationTimer: null # seconds + # Controls the duration of the time window used to evaluate the NRQL query + aggregationWindow: 60 # seconds; 30 seconds <= x < 15 minutes + # Option that determines the type of value that should be used to fill gaps (empty windows). + fillOption: NONE # defaults to STATIC + # If using the static fill option, this value is used for filling. + fillValue: null # default + # This setting gathers data in overlapping time windows to smooth the chart line, making it easier to spot trends. + slideBy: null # seconds + # Evaluation delay is how long we wait before we start evaluating a signal against the thresholds in this condition. + evaluationDelay: 60 + +# OPTIONAL: URL of runbook to be sent with notification +runbookUrl: + +# Duration after which a violation automatically closes +# Time in seconds; 300 - 2592000 (Default: 86400 [1 day]) +violationTimeLimitSeconds: 21600 diff --git a/alert-policies/kubernetes-opentelemetry/PodNotScheduled.yaml b/alert-policies/kubernetes-opentelemetry/PodNotScheduled.yaml new file mode 100644 index 0000000000..38aea1d89d --- /dev/null +++ b/alert-policies/kubernetes-opentelemetry/PodNotScheduled.yaml @@ -0,0 +1,76 @@ +name: Pod cannot be scheduled + +# Description and details +description: | + Alert when a Pod cannot be scheduled for more than 5 minutes +# Type of alert: BASELINE | STATIC +type: STATIC + +# NRQL query +nrql: + query: "from Metric select latest(kube_pod_status_scheduled) where k8s.cluster.name in ('YOUR_CLUSTER_NAME') and k8s.namespace.name in ('YOUR_NAMESPACE_NAME') and metricName = 'kube_pod_status_scheduled' facet k8s.pod.name, k8s.namespace.name, k8s.cluster.name" + +# Direction in which baseline is set (Default: LOWER_ONLY) +# baselineDirection: LOWER_ONLY | UPPER_AND_LOWER | UPPER_ONLY + +# 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: BELOW + # Value that triggers a violation + threshold: 1 + # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + thresholdDuration: 300 + # How many data points must be in violation for the duration + thresholdOccurrences: ALL + + # Adding a Warning threshold is optional + # - priority: WARNING + # # Operator used to compare against the threshold. + # operator: ABOVE + # # Value that triggers a violation + # threshold: 0 + # # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + # thresholdDuration: 60 + # # How many data points must be in violation for the duration + # thresholdOccurrences: AT_LEAST_ONCE + +# Loss of Signal Settings +expiration: + # Close open violations if signal is lost (Default: false) + closeViolationsOnExpiration: true + # Open "Loss of Signal" violation if signal is lost (Default: false) + openViolationOnExpiration: false + # Time in seconds; Max value: 172800 (48hrs), null if closeViolationsOnExpiration and openViolationOnExpiration are both 'false' + expirationDuration: 300 + +# Advanced Signal Settings +# Duration of the time window used to evaluate the NRQL Condition +signal: + # How long we wait for data that belongs in each aggregation window + aggregationDelay: 60 # seconds + # The method that determines when we consider an aggregation window to complete so that we can evaluate the signals for violations. + aggregationMethod: EVENT_FLOW + # How long we wait after each data point arrives to make sure we've processed the whole batch. + aggregationTimer: null # seconds + # Controls the duration of the time window used to evaluate the NRQL query + aggregationWindow: 60 # seconds; 30 seconds <= x < 15 minutes + # Option that determines the type of value that should be used to fill gaps (empty windows). + fillOption: NONE # defaults to STATIC + # If using the static fill option, this value is used for filling. + fillValue: null # default + # This setting gathers data in overlapping time windows to smooth the chart line, making it easier to spot trends. + slideBy: null # seconds + # Evaluation delay is how long we wait before we start evaluating a signal against the thresholds in this condition. + evaluationDelay: 60 + +# OPTIONAL: URL of runbook to be sent with notification +runbookUrl: + +# Duration after which a violation automatically closes +# Time in seconds; 300 - 2592000 (Default: 86400 [1 day]) +violationTimeLimitSeconds: 21600 diff --git a/alert-policies/kubernetes-opentelemetry/PodsFailingNamespace.yaml b/alert-policies/kubernetes-opentelemetry/PodsFailingNamespace.yaml new file mode 100644 index 0000000000..17ad1daaef --- /dev/null +++ b/alert-policies/kubernetes-opentelemetry/PodsFailingNamespace.yaml @@ -0,0 +1,73 @@ +name: More than 5 pods failing in namespace + +# Description and details +description: | + Alert when more than 5 pods are failing in a namespace for more than 5 minutes + +# Type of alert: BASELINE | STATIC +type: STATIC + +# NRQL query +nrql: + query: "from Metric select uniqueCount(k8s.pod.name) where k8s.cluster.name in ('YOUR_CLUSTER_NAME') and k8s.namespace.name in ('YOUR_NAMESPACE_NAME') and phase = 'Failed' facet k8s.namespace.name, k8s.cluster.name" + +# Direction in which baseline is set (Default: LOWER_ONLY) +# baselineDirection: LOWER_ONLY | UPPER_AND_LOWER | UPPER_ONLY + +# 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: 5 + # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + 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: 1 + # thresholdDuration: 300 + # thresholdOccurrences: ALL | AT_LEAST_ONCE + +# Loss of Signal Settings +expiration: + # Close open violations if signal is lost (Default: false) + closeViolationsOnExpiration: true + # Open "Loss of Signal" violation if signal is lost (Default: false) + openViolationOnExpiration: false + # Time in seconds; Max value: 172800 (48hrs), null if closeViolationsOnExpiration and openViolationOnExpiration are both 'false' + expirationDuration: 300 + +# Advanced Signal Settings +# Duration of the time window used to evaluate the NRQL Condition +signal: + # How long we wait for data that belongs in each aggregation window + aggregationDelay: 60 # seconds + # The method that determines when we consider an aggregation window to complete so that we can evaluate the signals for violations. + aggregationMethod: EVENT_FLOW + # How long we wait after each data point arrives to make sure we've processed the whole batch. + aggregationTimer: null # seconds + # Controls the duration of the time window used to evaluate the NRQL query + aggregationWindow: 60 # seconds; 30 seconds <= x < 15 minutes + # Option that determines the type of value that should be used to fill gaps (empty windows). + fillOption: NONE # defaults to STATIC + # If using the static fill option, this value is used for filling. + fillValue: null # default + # This setting gathers data in overlapping time windows to smooth the chart line, making it easier to spot trends. + slideBy: null # seconds + # Evaluation delay is how long we wait before we start evaluating a signal against the thresholds in this condition. + evaluationDelay: 60 + +# OPTIONAL: URL of runbook to be sent with notification +runbookUrl: + +# Duration after which a violation automatically closes +# Time in seconds; 300 - 2592000 (Default: 86400 [1 day]) +violationTimeLimitSeconds: 21600 diff --git a/alert-policies/kubernetes-opentelemetry/StatefulsetPodsMissing.yaml b/alert-policies/kubernetes-opentelemetry/StatefulsetPodsMissing.yaml new file mode 100644 index 0000000000..0e666bae6c --- /dev/null +++ b/alert-policies/kubernetes-opentelemetry/StatefulsetPodsMissing.yaml @@ -0,0 +1,73 @@ +name: Statefulset is missing Pods + +# Description and details +description: | + Alert when Statefulset is missing Pods for > 5 minutes + +# Type of alert: BASELINE | STATIC +type: STATIC + +# NRQL query +nrql: + query: "from Metric select latest(kube_statefulset_replicas) - latest(kube_statefulset_status_replicas_ready) where k8s.cluster.name in ('YOUR_CLUSTER_NAME') and k8s.namespace.name in ('YOUR_NAMESPACE_NAME') facet k8s.statefulset.name, k8s.namespace.name, k8s.cluster.name" + +# Direction in which baseline is set (Default: LOWER_ONLY) +# baselineDirection: LOWER_ONLY | UPPER_AND_LOWER | UPPER_ONLY + +# 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 + # Time in seconds; 120 - 3600, must be a multiple of 60 for Baseline conditions + 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: 1 + # thresholdDuration: 300 + # thresholdOccurrences: ALL | AT_LEAST_ONCE + +# Loss of Signal Settings +expiration: + # Close open violations if signal is lost (Default: false) + closeViolationsOnExpiration: true + # Open "Loss of Signal" violation if signal is lost (Default: false) + openViolationOnExpiration: false + # Time in seconds; Max value: 172800 (48hrs), null if closeViolationsOnExpiration and openViolationOnExpiration are both 'false' + expirationDuration: 300 + +# Advanced Signal Settings +# Duration of the time window used to evaluate the NRQL Condition +signal: + # How long we wait for data that belongs in each aggregation window + aggregationDelay: 60 # seconds + # The method that determines when we consider an aggregation window to complete so that we can evaluate the signals for violations. + aggregationMethod: EVENT_FLOW + # How long we wait after each data point arrives to make sure we've processed the whole batch. + aggregationTimer: null # seconds + # Controls the duration of the time window used to evaluate the NRQL query + aggregationWindow: 60 # seconds; 30 seconds <= x < 15 minutes + # Option that determines the type of value that should be used to fill gaps (empty windows). + fillOption: NONE # defaults to STATIC + # If using the static fill option, this value is used for filling. + fillValue: null # default + # This setting gathers data in overlapping time windows to smooth the chart line, making it easier to spot trends. + slideBy: null # seconds + # Evaluation delay is how long we wait before we start evaluating a signal against the thresholds in this condition. + evaluationDelay: 60 + +# OPTIONAL: URL of runbook to be sent with notification +runbookUrl: + +# Duration after which a violation automatically closes +# Time in seconds; 300 - 2592000 (Default: 86400 [1 day]) +violationTimeLimitSeconds: 21600 diff --git a/alert-policies/langchain/responseTime.yml b/alert-policies/langchain/duration.yml similarity index 83% rename from alert-policies/langchain/responseTime.yml rename to alert-policies/langchain/duration.yml index 762b69a340..6f559c09b5 100644 --- a/alert-policies/langchain/responseTime.yml +++ b/alert-policies/langchain/duration.yml @@ -1,10 +1,10 @@ -name: Response time +name: Request duration description: |+ - This alert is triggered if response time exceeds 5 seconds in 5 minutes. + This alert is triggered if request duration exceeds 5 seconds over 5 minutes. type: STATIC nrql: - query: "FROM LlmChatCompletionSummary, LlmCompletion, LlmEmbedding SELECT latest(response_time)/1000" + query: "FROM LlmChatCompletionSummary SELECT latest(duration) / 1000" # Function used to aggregate the NRQL query value(s) for comparison to the terms.threshold (Default: SINGLE_VALUE) valueFunction: SINGLE_VALUE diff --git a/alert-policies/llm-application/APIResponseTime.yml b/alert-policies/llm-application/APIResponseTime.yml index 573fbb05a7..971ed6de1b 100644 --- a/alert-policies/llm-application/APIResponseTime.yml +++ b/alert-policies/llm-application/APIResponseTime.yml @@ -10,7 +10,7 @@ type: STATIC # NRQL query nrql: - query: "FROM LlmChatCompletionSummary, LlmCompletion, LlmEmbedding SELECT percentile(response_time, 95) FACET entity.guid" + query: "FROM LlmChatCompletionSummary SELECT percentile(duration, 95) / 1000 FACET entity.guid" # Function used to aggregate the NRQL query value(s) for comparison to the terms.threshold (Default: SINGLE_VALUE) valueFunction: SINGLE_VALUE diff --git a/alert-policies/llm-application/cost.yml b/alert-policies/llm-application/cost.yml deleted file mode 100644 index 5cc6feeccb..0000000000 --- a/alert-policies/llm-application/cost.yml +++ /dev/null @@ -1,41 +0,0 @@ -# Name of the alert -name: Cost - -# Description and details -description: |+ - This alert is triggered when the cost exceeds 10 USD for 1 minute. - -# Type of alert -type: STATIC - -# NRQL query -nrql: - query: "FROM LlmChatCompletionSummary, LlmCompletion SELECT filter(sum(usage.prompt_tokens) * 0.0300 / 1000, where response.model in ('gpt-4', 'gpt-4-0314', 'gpt-4-0613')) + filter(sum(usage.completion_tokens) * 0.0600 / 1000, where response.model LIKE '%gpt-4%' AND respsonse.model NOT LIKE '%32k%') + filter(sum(usage.prompt_tokens) * 0.0600 / 1000, where response.model LIKE '%gpt-4-32k%') + filter(sum(usage.completion_tokens) * 0.1200 / 1000, where response.model LIKE '%gpt-4-32k%') + filter(sum(usage.total_tokens) * 0.0020 / 1000, where response.model LIKE '%gpt-3.5-turbo%') + filter(sum(usage.total_tokens) * 0.0200 / 1000, where response.model LIKE '%davinci%') + filter(sum(usage.total_tokens) * 0.0020 / 1000, where response.model LIKE '%curie%') + filter(sum(usage.total_tokens) * 0.0005 / 1000, where response.model LIKE '%babbage%') + filter(sum(usage.total_tokens) * 0.0004 / 1000, where response.model LIKE '%ada%') as 'Cost (USD)' FACET entity.guid" - -# 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: 10 - # Time in seconds; 120 - 3600 - thresholdDuration: 120 - # How many data points must be in violation for the duration - thresholdOccurrences: ALL - - priority: WARNING - # Operator used to compare against the threshold. - operator: ABOVE - # Value that triggers a violation - threshold: 8 - # Time in seconds; 120 - 3600 - thresholdDuration: 120 - # How many data points must be in violation for the duration - thresholdOccurrences: ALL - -# Duration after which a violation automatically closes -# Time in seconds; 300 - 2592000 (Default: 86400 [1 day]) -violationTimeLimitSeconds: 86400 diff --git a/alert-policies/mongodb/EmptyDatabase.yml b/alert-policies/mongodb/EmptyDatabase.yml index 98ec0c992a..d95a56e679 100644 --- a/alert-policies/mongodb/EmptyDatabase.yml +++ b/alert-policies/mongodb/EmptyDatabase.yml @@ -13,7 +13,7 @@ valueFunction: SINGLE_VALUE terms: - priority: CRITICAL # Operator used to compare against the threshold. - operator: UNDER + operator: BELOW # Value that triggers a violation threshold: 1 # Time in seconds; 120 - 3600 @@ -23,4 +23,4 @@ terms: # Duration after which a violation automatically closes # Time in seconds; 300 - 2592000 (Default: 86400 [1 day]) -violationTimeLimitSeconds: 86400 \ No newline at end of file +violationTimeLimitSeconds: 86400 diff --git a/alert-policies/langchain/requestsPerModel.yml b/alert-policies/ocsf/SecurityFindingsOverTime.yml similarity index 76% rename from alert-policies/langchain/requestsPerModel.yml rename to alert-policies/ocsf/SecurityFindingsOverTime.yml index 4c9a0e3be2..4f01cf1ccb 100644 --- a/alert-policies/langchain/requestsPerModel.yml +++ b/alert-policies/ocsf/SecurityFindingsOverTime.yml @@ -1,10 +1,11 @@ -name: Requests per model +name: Security Findings Over Time description: |+ - This alert is triggered if requests per model exceeds 1000 in 5 minutes. + This alert is triggered when the Security findings over time exceeds 10 times for 5 minutes. + type: STATIC nrql: - query: "FROM LlmChatCompletionSummary, LlmCompletion, LlmEmbedding SELECT count(request.model) AS 'Requests per model'" + query: "SELECT count('Finding/Uid') as findings from ocsfSecurityFinding" # Function used to aggregate the NRQL query value(s) for comparison to the terms.threshold (Default: SINGLE_VALUE) valueFunction: SINGLE_VALUE @@ -15,7 +16,7 @@ terms: # Operator used to compare against the threshold. operator: ABOVE # Value that triggers a violation - threshold: 1000 + threshold: 15 # Time in seconds; 120 - 3600 thresholdDuration: 300 # How many data points must be in violation for the duration @@ -24,12 +25,13 @@ terms: # Operator used to compare against the threshold. operator: ABOVE # Value that triggers a violation - threshold: 900 + threshold: 10 # Time in seconds; 120 - 3600 thresholdDuration: 300 # How many data points must be in violation for the duration thresholdOccurrences: ALL + # Duration after which a violation automatically closes # Time in seconds; 300 - 2592000 (Default: 86400 [1 day]) -violationTimeLimitSeconds: 86400 \ No newline at end of file +violationTimeLimitSeconds: 86400 diff --git a/alert-policies/ocsf/SecurityHighRisk.yml b/alert-policies/ocsf/SecurityHighRisk.yml new file mode 100644 index 0000000000..ff7f08cfc5 --- /dev/null +++ b/alert-policies/ocsf/SecurityHighRisk.yml @@ -0,0 +1,37 @@ +name: Security High Risk Findings + +description: |+ + This alert is triggered when the high security risk level is exceeds 3 for 5 minutes. + +type: STATIC +nrql: + query: "SELECT count(*) as HighRisk from ocsfSecurityFinding WHERE risk_level='High'" + +# 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: 5 + # Time in seconds; 120 - 3600 + thresholdDuration: 300 + # How many data points must be in violation for the duration + thresholdOccurrences: ALL + - priority: WARNING + # Operator used to compare against the threshold. + operator: ABOVE + # Value that triggers a violation + threshold: 3 + # Time in seconds; 120 - 3600 + thresholdDuration: 300 + # How many data points must be in violation for the duration + thresholdOccurrences: ALL + + +# Duration after which a violation automatically closes +# Time in seconds; 300 - 2592000 (Default: 86400 [1 day]) +violationTimeLimitSeconds: 86400 diff --git a/alert-policies/langchain/error.yml b/alert-policies/temporal-cloud/RpsLimit.yml similarity index 70% rename from alert-policies/langchain/error.yml rename to alert-policies/temporal-cloud/RpsLimit.yml index 1b90941cab..17f477a785 100644 --- a/alert-policies/langchain/error.yml +++ b/alert-policies/temporal-cloud/RpsLimit.yml @@ -1,10 +1,13 @@ -name: Errors - +# Name of the alert +name: RPS Limit +# Description and details description: |+ - This alert is triggered if the number of errors exceeds 2 within 5 minutes. + This alert is triggered if the Temporal Cloud RPS limit is reached. type: STATIC + +# NRQL query nrql: - query: "FROM LlmChatCompletionSummary, LlmCompletion SELECT count(error_type) AS 'Error count' WHERE error_type IS NOT null" + query: "FROM temporalCloudResourceExhaustedErrors SELECT latest(`data.result-value1`) FACET `data.result-metric-__name__`" # Function used to aggregate the NRQL query value(s) for comparison to the terms.threshold (Default: SINGLE_VALUE) valueFunction: SINGLE_VALUE @@ -15,13 +18,11 @@ terms: # Operator used to compare against the threshold. operator: ABOVE # Value that triggers a violation - threshold: 2 + threshold: 1 # Time in seconds; 120 - 3600 thresholdDuration: 300 # How many data points must be in violation for the duration thresholdOccurrences: ALL - - # Duration after which a violation automatically closes # Time in seconds; 300 - 2592000 (Default: 86400 [1 day]) violationTimeLimitSeconds: 86400 \ No newline at end of file diff --git a/dashboards/amazon-cloudwatch-application-signals/amazon-cloudwatch-application-signals.json b/dashboards/amazon-cloudwatch-application-signals/amazon-cloudwatch-application-signals.json new file mode 100644 index 0000000000..2dc6bc11cb --- /dev/null +++ b/dashboards/amazon-cloudwatch-application-signals/amazon-cloudwatch-application-signals.json @@ -0,0 +1,247 @@ +{ + "name": "AWS Cloudwatch Application Signals", + "description": null, + "pages": [ + { + "name": "AWS Cloudwatch Application Signals", + "description": null, + "widgets": [ + { + "title": "Top requests by operation", + "layout": { + "column": 1, + "row": 1, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(`aws.applicationsignals.Error`) FROM Metric FACET `aws.applicationsignals.Operation` SINCE 12 HOURS AGO TIMESERIES 5 minutes" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Top requests by path", + "layout": { + "column": 7, + "row": 1, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(`aws.applicationsignals.Latency`) FROM Metric FACET concat(`aws.applicationsignals.Service`,' > ', `aws.applicationsignals.RemoteService`) WHERE `aws.applicationsignals.Service` IS NOT NULL AND `aws.applicationsignals.RemoteService` IS NOT NULL SINCE 12 HOURS AGO TIMESERIES 5 minutes" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Top latency by operation", + "layout": { + "column": 1, + "row": 4, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT average(`aws.applicationsignals.Latency`) FROM Metric FACET `aws.applicationsignals.Operation` SINCE 12 HOURS AGO TIMESERIES 5 minutes" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Top latency by path", + "layout": { + "column": 7, + "row": 4, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT average(`aws.applicationsignals.Latency`) FROM Metric FACET concat(`aws.applicationsignals.Service`,' > ', `aws.applicationsignals.RemoteService`) WHERE `aws.applicationsignals.Service` IS NOT NULL AND `aws.applicationsignals.RemoteService` IS NOT NULL SINCE 12 HOURS AGO TIMESERIES 5 minutes" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Top faults by operation", + "layout": { + "column": 1, + "row": 7, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT sum(`aws.applicationsignals.Fault`) FROM Metric FACET `aws.applicationsignals.Operation` SINCE 12 HOURS AGO TIMESERIES 5 minutes" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Top faults by path", + "layout": { + "column": 7, + "row": 7, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT sum(`aws.applicationsignals.Fault`) FROM Metric FACET concat(`aws.applicationsignals.Service`,' > ', `aws.applicationsignals.RemoteService`) WHERE `aws.applicationsignals.Service` IS NOT NULL AND `aws.applicationsignals.RemoteService` IS NOT NULL SINCE 12 HOURS AGO TIMESERIES 5 minutes" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + } + ] + } + ], + "variables": [] + } \ No newline at end of file diff --git a/dashboards/amazon-cloudwatch-application-signals/amazon-cloudwatch-application-signals01.png b/dashboards/amazon-cloudwatch-application-signals/amazon-cloudwatch-application-signals01.png new file mode 100644 index 0000000000..7f4f2f4550 Binary files /dev/null and b/dashboards/amazon-cloudwatch-application-signals/amazon-cloudwatch-application-signals01.png differ diff --git a/dashboards/bitmovin/dashboard.json b/dashboards/bitmovin/dashboard.json new file mode 100644 index 0000000000..f16e5d14ee --- /dev/null +++ b/dashboards/bitmovin/dashboard.json @@ -0,0 +1,179 @@ +{ + "name": "Bitmovin Analytics", + "description": null, + "pages": [ + { + "name": "Bitmovin", + "description": null, + "widgets": [ + { + "title": "", + "layout": { + "column": 1, + "row": 1, + "width": 12, + "height": 1 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.markdown" + }, + "rawConfiguration": { + "text": "# To query more metrics, or add dimensions, modify your integration configuration following [these steps](https://github.com/newrelic/newrelic-bitmovin-analytics/tree/feat/refactor?tab=readme-ov-file#query-configuration)\n" + } + }, + { + "title": "All Bitmovin Metrics", + "layout": { + "column": 1, + "row": 2, + "width": 4, + "height": 4 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT uniques(metricName) WHERE metricName like 'bitmovin%'" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Concurrent Viewers", + "layout": { + "column": 5, + "row": 2, + "width": 8, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.stacked-bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT max(bitmovin.max_concurrent_viewers) as 'Concurrent Viewrs' TIMESERIES 1 minute" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Play Attemps", + "layout": { + "column": 5, + "row": 5, + "width": 8, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT max(bitmovin.cnt_play_attempts) as 'Play Attempts' TIMESERIES 1 minute since 15 minutes ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "All Bitmovin Dimensions", + "layout": { + "column": 1, + "row": 6, + "width": 4, + "height": 5 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.json" + }, + "rawConfiguration": { + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT keyset() WHERE metricName like 'bitmovin%'" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Video Startup Time (Histogram)", + "layout": { + "column": 5, + "row": 8, + "width": 8, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.histogram" + }, + "rawConfiguration": { + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT histogram(bitmovin.cnt_video_startuptime/1000,width: 1, buckets: 100) as 'Video Startup Time (s)'" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "yAxisLeft": { + "zero": true + } + } + } + ] + } + ], + "variables": [] +} \ No newline at end of file diff --git a/dashboards/bitmovin/dashboard.png b/dashboards/bitmovin/dashboard.png new file mode 100644 index 0000000000..8fa56cf17f Binary files /dev/null and b/dashboards/bitmovin/dashboard.png differ diff --git a/dashboards/data-ingest-entity-breakdown/data-ingest-entity-breakdown.json b/dashboards/data-ingest-entity-breakdown/data-ingest-entity-breakdown.json index bcb6513e12..cde5fe213e 100644 --- a/dashboards/data-ingest-entity-breakdown/data-ingest-entity-breakdown.json +++ b/dashboards/data-ingest-entity-breakdown/data-ingest-entity-breakdown.json @@ -1,282 +1,282 @@ { - "name": "Data Ingest Governance Entity Breakdowns", - "description": null, - "pages": [ - { - "name": "APM Applications", - "description": null, - "widgets": [ - { - "visualization": { - "id": "viz.table" - }, - "layout": { - "column": 1, - "row": 1, - "height": 6, - "width": 5 - }, - "title": "Daily Rate Estimate", - "rawConfiguration": { - "dataFormatters": [], - "facet": { - "showOtherSeries": true - }, - "nrqlQueries": [ - { - "accountId": 0, - "query": "FROM Transaction, TransactionError, TransactionTrace, SqlTrace, ErrorTrace, Span select rate(bytecountestimate()/10e8, 1 day) as 'GB Ingest' facet appName limit 100" - } - ] - }, - "linkedEntityGuids": null + "name": "Data Ingest Governance Entity Breakdowns", + "description": null, + "pages": [ + { + "name": "APM Applications", + "description": null, + "widgets": [ + { + "visualization": { + "id": "viz.table" }, - { - "visualization": { - "id": "viz.area" - }, - "layout": { - "column": 6, - "row": 1, - "height": 6, - "width": 7 - }, - "title": "GB Estimate Time Series", - "rawConfiguration": { - "facet": { - "showOtherSeries": true - }, - "legend": { - "enabled": true - }, - "nrqlQueries": [ - { - "accountId": 0, - "query": "FROM Transaction, TransactionError, TransactionTrace, SqlTrace, ErrorTrace, Span select bytecountestimate()/10e08 as 'GB Ingest' facet appName limit 100 TIMESERIES " - } - ] - }, - "linkedEntityGuids": null - } - ] - }, - { - "name": "Browser Applications", - "description": null, - "widgets": [ - { - "visualization": { - "id": "viz.table" - }, - "layout": { - "column": 1, - "row": 1, - "height": 6, - "width": 5 - }, - "title": "Daily Rate Estimate", - "rawConfiguration": { - "dataFormatters": [], - "facet": { - "showOtherSeries": true - }, - "nrqlQueries": [ - { - "accountId": 0, - "query": "FROM PageAction, PageView, PageViewTiming, AjaxRequest, JavaScriptError select rate(bytecountestimate()/10e8, 1 day) as 'GB Ingest' facet appName limit 100" - } - ] - }, - "linkedEntityGuids": null + "layout": { + "column": 1, + "row": 1, + "height": 6, + "width": 5 }, - { - "visualization": { - "id": "viz.area" - }, - "layout": { - "column": 6, - "row": 1, - "height": 6, - "width": 7 - }, - "title": "GB Estimate Time Series", - "rawConfiguration": { - "facet": { - "showOtherSeries": true - }, - "legend": { - "enabled": true - }, - "nrqlQueries": [ - { - "accountId": 0, - "query": "FROM PageAction, PageView, PageViewTiming, AjaxRequest, JavaScriptError select bytecountestimate()/10e08 as 'GB Ingest' facet appName limit 100 TIMESERIES " - } - ] + "title": "Daily Rate Estimate", + "rawConfiguration": { + "dataFormatters": [], + "facet": { + "showOtherSeries": true }, - "linkedEntityGuids": null - } - ] - }, - { - "name": "Mobile Applications", - "description": null, - "widgets": [ - { - "visualization": { - "id": "viz.table" - }, - "layout": { - "column": 1, - "row": 1, - "height": 6, - "width": 5 - }, - "title": "Daily Rate Estimate", - "rawConfiguration": { - "dataFormatters": [], - "facet": { - "showOtherSeries": true - }, - "nrqlQueries": [ - { - "accountId": 0, - "query": "FROM Mobile, MobileRequest, MobileRequestError, MobileSession, MobileHandleException, MobileCrash select rate(bytecountestimate()/10e8, 1 day) as 'GB Ingest' facet appName limit 100" - } - ] - }, - "linkedEntityGuids": null + "nrqlQueries": [ + { + "accountId": 0, + "query": "FROM Transaction, TransactionError, TransactionTrace, SqlTrace, ErrorTrace, Span select rate(bytecountestimate()/10e8, 1 day) as 'GB Ingest' facet appName limit 100" + } + ] }, - { - "visualization": { - "id": "viz.area" - }, - "layout": { - "column": 6, - "row": 1, - "height": 6, - "width": 7 - }, - "title": "GB Estimate Time Series", - "rawConfiguration": { - "facet": { - "showOtherSeries": true - }, - "legend": { - "enabled": true - }, - "nrqlQueries": [ - { - "accountId": 0, - "query": "FROM Mobile, MobileRequest, MobileRequestError, MobileSession, MobileHandleException, MobileCrash select bytecountestimate()/10e08 as 'GB Ingest' facet appName limit 100 TIMESERIES " - } - ] - }, - "linkedEntityGuids": null - } - ] - }, - { - "name": "K8s Clusters", - "description": null, - "widgets": [ - { - "visualization": { - "id": "viz.table" - }, - "layout": { - "column": 1, - "row": 1, - "height": 6, - "width": 5 + "linkedEntityGuids": null + }, + { + "visualization": { + "id": "viz.area" + }, + "layout": { + "column": 6, + "row": 1, + "height": 6, + "width": 7 + }, + "title": "GB Estimate Time Series", + "rawConfiguration": { + "facet": { + "showOtherSeries": true }, - "title": "Daily Rate Estimate", - "rawConfiguration": { - "dataFormatters": [], - "facet": { - "showOtherSeries": true - }, - "nrqlQueries": [ - { - "accountId": 0, - "query": "FROM K8sClusterSample, K8sContainerSample,K8sDaemonsetSample, K8sDeploymentSample, K8sEndpointSample, K8sHpaSample, K8sNamespaceSample, K8sNodeSample, K8sPodSample, K8sReplicasetSample, K8sServiceSample, K8sVolumeSample select rate(bytecountestimate()/10e8, 1 day) as 'GB Ingest' facet clusterName limit 100" - } - ] + "legend": { + "enabled": true }, - "linkedEntityGuids": null + "nrqlQueries": [ + { + "accountId": 0, + "query": "FROM Transaction, TransactionError, TransactionTrace, SqlTrace, ErrorTrace, Span select bytecountestimate()/10e08 as 'GB Ingest' facet appName limit 100 TIMESERIES " + } + ] + }, + "linkedEntityGuids": null + } + ] + }, + { + "name": "Browser Applications", + "description": null, + "widgets": [ + { + "visualization": { + "id": "viz.table" + }, + "layout": { + "column": 1, + "row": 1, + "height": 6, + "width": 5 }, - { - "visualization": { - "id": "viz.area" + "title": "Daily Rate Estimate", + "rawConfiguration": { + "dataFormatters": [], + "facet": { + "showOtherSeries": true }, - "layout": { - "column": 6, - "row": 1, - "height": 6, - "width": 7 + "nrqlQueries": [ + { + "accountId": 0, + "query": "FROM PageAction, PageView, PageViewTiming, AjaxRequest, JavaScriptError select rate(bytecountestimate()/10e8, 1 day) as 'GB Ingest' facet appName limit 100" + } + ] + }, + "linkedEntityGuids": null + }, + { + "visualization": { + "id": "viz.area" + }, + "layout": { + "column": 6, + "row": 1, + "height": 6, + "width": 7 + }, + "title": "GB Estimate Time Series", + "rawConfiguration": { + "facet": { + "showOtherSeries": true }, - "title": "GB Estimate Time Series", - "rawConfiguration": { - "facet": { - "showOtherSeries": true - }, - "legend": { - "enabled": true - }, - "nrqlQueries": [ - { - "accountId": 0, - "query": "FROM K8sClusterSample, K8sContainerSample,K8sDaemonsetSample, K8sDeploymentSample, K8sEndpointSample, K8sHpaSample, K8sNamespaceSample, K8sNodeSample, K8sPodSample, K8sReplicasetSample, K8sServiceSample, K8sVolumeSample select bytecountestimate()/10e08 as 'GB Ingest' facet clusterName limit 100 TIMESERIES " - } - ] + "legend": { + "enabled": true }, - "linkedEntityGuids": null - } - ] - }, - { - "name": "Infrastructure Integrations", - "description": null, - "widgets": [ - { - "visualization": { - "id": "viz.markdown" + "nrqlQueries": [ + { + "accountId": 0, + "query": "FROM PageAction, PageView, PageViewTiming, AjaxRequest, JavaScriptError select bytecountestimate()/10e08 as 'GB Ingest' facet appName limit 100 TIMESERIES " + } + ] + }, + "linkedEntityGuids": null + } + ] + }, + { + "name": "Mobile Applications", + "description": null, + "widgets": [ + { + "visualization": { + "id": "viz.table" + }, + "layout": { + "column": 1, + "row": 1, + "height": 6, + "width": 5 + }, + "title": "Daily Rate Estimate", + "rawConfiguration": { + "dataFormatters": [], + "facet": { + "showOtherSeries": true }, - "layout": { - "column": 1, - "row": 1, - "height": 9, - "width": 12 + "nrqlQueries": [ + { + "accountId": 0, + "query": "FROM Mobile, MobileRequest, MobileRequestError, MobileSession, MobileHandleException, MobileCrash select rate(bytecountestimate()/10e8, 1 day) as 'GB Ingest' facet appName limit 100" + } + ] + }, + "linkedEntityGuids": null + }, + { + "visualization": { + "id": "viz.area" + }, + "layout": { + "column": 6, + "row": 1, + "height": 6, + "width": 7 + }, + "title": "GB Estimate Time Series", + "rawConfiguration": { + "facet": { + "showOtherSeries": true }, - "title": "", - "rawConfiguration": { - "text": "## Install the Cloud Integration Dashboard\n\nCloud Integrations can often be the source of data ingest growth. Without good visualizations it can be very difficult to pinpoint where the growth is coming from. This is partly because these integrations are so easy to configure and they are not part of an organizations normal CI/CD pipeline and may also not be part of a formal configuration management system.\nFortunately this powerful set of dashboards can be installed [directly from New Relic I/O](https://onenr.io/0EPwJJO9Ow7).\nIndividual dashboards installed by this pakage include:\n\n- AWS Integrations\n- Azure Integrations\n- GCP Integrations\n- On-Host Integrations\n- Kubernetes\n\n\n![AWS Integration Breakdown](https://raw.githubusercontent.com/newrelic/newrelic-quickstarts/v0.99.1/quickstarts/audit/infrastructure-integrations-data-analysis/dashboards/aws-integrations-data-ingest-analysis.png)" + "legend": { + "enabled": true }, - "linkedEntityGuids": null - } - ] - }, - { - "name": "About this dashboard", - "description": null, - "widgets": [ - { - "visualization": { - "id": "viz.markdown" + "nrqlQueries": [ + { + "accountId": 0, + "query": "FROM Mobile, MobileRequest, MobileRequestError, MobileSession, MobileHandleException, MobileCrash select bytecountestimate()/10e08 as 'GB Ingest' facet appName limit 100 TIMESERIES " + } + ] + }, + "linkedEntityGuids": null + } + ] + }, + { + "name": "K8s Clusters", + "description": null, + "widgets": [ + { + "visualization": { + "id": "viz.table" + }, + "layout": { + "column": 1, + "row": 1, + "height": 6, + "width": 5 + }, + "title": "Daily Rate Estimate", + "rawConfiguration": { + "dataFormatters": [], + "facet": { + "showOtherSeries": true }, - "layout": { - "column": 1, - "row": 1, - "height": 5, - "width": 6 + "nrqlQueries": [ + { + "accountId": 0, + "query": "FROM K8sClusterSample, K8sContainerSample,K8sDaemonsetSample, K8sDeploymentSample, K8sEndpointSample, K8sHpaSample, K8sNamespaceSample, K8sNodeSample, K8sPodSample, K8sReplicasetSample, K8sServiceSample, K8sVolumeSample select rate(bytecountestimate()/10e8, 1 day) as 'GB Ingest' facet clusterName limit 100" + } + ] + }, + "linkedEntityGuids": null + }, + { + "visualization": { + "id": "viz.area" + }, + "layout": { + "column": 6, + "row": 1, + "height": 6, + "width": 7 + }, + "title": "GB Estimate Time Series", + "rawConfiguration": { + "facet": { + "showOtherSeries": true }, - "title": "", - "rawConfiguration": { - "text": "# How these charts work\nThese charts use the `bytecountestimate()` operator which can estimate the data ingest overhead for nearly any event or metric in NRDB. \n\nHere is an example of a query that estimates data ingest overhead for Browser data faceted by appName:\n\n```\nFROM PageAction, PageView, PageViewTiming, AjaxRequest, JavaScriptError\nSELECT rate(bytecountestimate()/10e8, 30 day) AS 'GB Ingest'\nFACET appName SINCE 1 DAY AGO\n```\n\n### Benefits\n- The data is far more granular than what is in the main [Data Governance Baseline](https://docs.newrelic.com/docs/new-relic-solutions/observability-maturity/operational-efficiency/dg-baselining#install-dashboard) dashboard which rely only on NrConsumption metrics\n- We are able to facet by nearly any attribute\n\n### Drawbacks\n- The queries are slower as the data can be quite high volume and the bytecountestimate() operator has some overhead.\n- They can only be queried up to the data retention period for that telemetry. For some telemetry types this may not be more than a week.\n\n## View the [data governance guide](https://docs.newrelic.com/docs/new-relic-solutions/observability-maturity/operational-efficiency/dg-intro) for more information\n" + "legend": { + "enabled": true }, - "linkedEntityGuids": null - } - ] - } - ] - } \ No newline at end of file + "nrqlQueries": [ + { + "accountId": 0, + "query": "FROM K8sClusterSample, K8sContainerSample,K8sDaemonsetSample, K8sDeploymentSample, K8sEndpointSample, K8sHpaSample, K8sNamespaceSample, K8sNodeSample, K8sPodSample, K8sReplicasetSample, K8sServiceSample, K8sVolumeSample select bytecountestimate()/10e08 as 'GB Ingest' facet clusterName limit 100 TIMESERIES " + } + ] + }, + "linkedEntityGuids": null + } + ] + }, + { + "name": "Infrastructure Integrations", + "description": null, + "widgets": [ + { + "visualization": { + "id": "viz.markdown" + }, + "layout": { + "column": 1, + "row": 1, + "height": 9, + "width": 12 + }, + "title": "", + "rawConfiguration": { + "text": "## Install the Cloud Integration Dashboard\n\nCloud Integrations can often be the source of data ingest growth. Without good visualizations it can be very difficult to pinpoint where the growth is coming from. This is partly because these integrations are so easy to configure and they are not part of an organizations normal CI/CD pipeline and may also not be part of a formal configuration management system.\nFortunately this powerful set of dashboards can be installed [directly from New Relic I/O](https://newrelic.com/instant-observability/infrastructure-integrations-data-analysis).\nIndividual dashboards installed by this pakage include:\n\n- AWS Integrations\n- Azure Integrations\n- GCP Integrations\n- On-Host Integrations\n- Kubernetes\n\n\n![AWS Integration Breakdown](https://raw.githubusercontent.com/newrelic/newrelic-quickstarts/v0.99.1/quickstarts/audit/infrastructure-integrations-data-analysis/dashboards/aws-integrations-data-ingest-analysis.png)" + }, + "linkedEntityGuids": null + } + ] + }, + { + "name": "About this dashboard", + "description": null, + "widgets": [ + { + "visualization": { + "id": "viz.markdown" + }, + "layout": { + "column": 1, + "row": 1, + "height": 5, + "width": 6 + }, + "title": "", + "rawConfiguration": { + "text": "# How these charts work\nThese charts use the `bytecountestimate()` operator which can estimate the data ingest overhead for nearly any event or metric in NRDB. \n\nHere is an example of a query that estimates data ingest overhead for Browser data faceted by appName:\n\n```\nFROM PageAction, PageView, PageViewTiming, AjaxRequest, JavaScriptError\nSELECT rate(bytecountestimate()/10e8, 30 day) AS 'GB Ingest'\nFACET appName SINCE 1 DAY AGO\n```\n\n### Benefits\n- The data is far more granular than what is in the main [Data Governance Baseline](https://docs.newrelic.com/docs/new-relic-solutions/observability-maturity/operational-efficiency/dg-baselining#install-dashboard) dashboard which rely only on NrConsumption metrics\n- We are able to facet by nearly any attribute\n\n### Drawbacks\n- The queries are slower as the data can be quite high volume and the bytecountestimate() operator has some overhead.\n- They can only be queried up to the data retention period for that telemetry. For some telemetry types this may not be more than a week.\n\n## View the [data governance guide](https://docs.newrelic.com/docs/new-relic-solutions/observability-maturity/operational-efficiency/dg-intro) for more information\n" + }, + "linkedEntityGuids": null + } + ] + } + ] +} diff --git a/dashboards/databricks-spark/databricks-spark.json b/dashboards/databricks-spark/databricks-spark.json new file mode 100644 index 0000000000..f75fb807b9 --- /dev/null +++ b/dashboards/databricks-spark/databricks-spark.json @@ -0,0 +1,1543 @@ +{ + "name": "Databricks Spark", + "description": null, + "pages": [ + { + "name": "Jobs", + "description": null, + "widgets": [ + { + "title": "Jobs Running", + "layout": { + "column": 1, + "row": 1, + "width": 3, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.jobs) AS 'Jobs' WHERE sparkAppJobStatus = 'running'" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Stages Running", + "layout": { + "column": 4, + "row": 1, + "width": 3, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.stages) AS 'Stages' WHERE sparkAppStageStatus = 'active'" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Tasks Running", + "layout": { + "column": 7, + "row": 1, + "width": 3, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.job.tasks) AS 'Tasks' WHERE sparkAppTaskStatus = 'active'" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Executors", + "layout": { + "column": 10, + "row": 1, + "width": 3, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT uniqueCount(sparkAppExecutorId) AS 'Executors' WHERE metricName = 'spark.app.executor.maxMemory'" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Jobs By Status", + "layout": { + "column": 1, + "row": 4, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.jobs) AS 'Jobs' FACET sparkAppJobStatus TIMESERIES" + } + ], + "nullValues": { + "nullValue": "zero" + }, + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Job Tasks By Status", + "layout": { + "column": 5, + "row": 4, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.job.tasks) AS 'Tasks' FACET sparkAppTaskStatus TIMESERIES" + } + ], + "nullValues": { + "nullValue": "zero" + }, + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Job Stages By Status", + "layout": { + "column": 9, + "row": 4, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.job.stages) AS 'Stages' FACET sparkAppStageStatus TIMESERIES" + } + ], + "nullValues": { + "nullValue": "zero" + }, + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + } + ] + }, + { + "name": "Stages", + "description": null, + "widgets": [ + { + "title": "Average Executor Total Task Run Time", + "layout": { + "column": 1, + "row": 1, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(spark.app.stage.executor.runTime) WHERE spark.app.stage.executor.runTime IS NOT NULL TIMESERIES" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "units": { + "unit": "MS" + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Average Executor Total Task CPU Time", + "layout": { + "column": 5, + "row": 1, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(spark.app.stage.executor.cpuTime) / 1000000 WHERE spark.app.stage.executor.cpuTime IS NOT NULL TIMESERIES" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "units": { + "unit": "MS" + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Average JVM GC Time", + "layout": { + "column": 9, + "row": 1, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(spark.app.stage.jvmGcTime) WHERE spark.app.stage.jvmGcTime IS NOT NULL TIMESERIES" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "units": { + "unit": "MS" + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Average Task Deserialization Time", + "layout": { + "column": 1, + "row": 4, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(spark.app.stage.executor.deserializeTime) WHERE spark.app.stage.executor.deserializeTime IS NOT NULL TIMESERIES" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "units": { + "unit": "MS" + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Average Task Deserialization CPU Time", + "layout": { + "column": 5, + "row": 4, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(spark.app.stage.executor.deserializeCpuTime) / 1000000 WHERE spark.app.stage.executor.deserializeCpuTime IS NOT NULL TIMESERIES" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "units": { + "unit": "MS" + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Average Result Serialization Time", + "layout": { + "column": 9, + "row": 4, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(spark.app.stage.resultSerializationTime) WHERE spark.app.stage.resultSerializationTime IS NOT NULL TIMESERIES" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "units": { + "unit": "MS" + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "I/O Bytes", + "layout": { + "column": 1, + "row": 7, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.stage.inputBytes) AS 'Bytes In' WHERE spark.app.stage.inputBytes IS NOT NULL TIMESERIES" + }, + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.stage.outputBytes) AS 'Bytes Out' WHERE spark.app.stage.outputBytes IS NOT NULL TIMESERIES" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "I/O Records", + "layout": { + "column": 7, + "row": 7, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.stage.inputRecords) AS 'Records In' WHERE spark.app.stage.inputRecords IS NOT NULL TIMESERIES" + }, + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.stage.outputRecords) AS 'Records Out' WHERE spark.app.stage.outputRecords IS NOT NULL TIMESERIES" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Shuffle I/O Bytes", + "layout": { + "column": 1, + "row": 10, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.stage.shuffle.readBytes) AS 'Bytes Written' WHERE spark.app.stage.shuffle.readBytes IS NOT NULL TIMESERIES" + }, + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.stage.shuffle.writeBytes) AS 'Bytes Out' WHERE spark.app.stage.shuffle.writeBytes IS NOT NULL TIMESERIES" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Shuffle I/O Records", + "layout": { + "column": 7, + "row": 10, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.stage.shuffle.readRecords) AS 'Records Read' WHERE spark.app.stage.shuffle.readRecords IS NOT NULL TIMESERIES" + }, + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.stage.shuffle.writeRecords) AS 'Records Written' WHERE spark.app.stage.shuffle.writeRecords IS NOT NULL TIMESERIES" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + } + ] + }, + { + "name": "Executors", + "description": null, + "widgets": [ + { + "title": "Average Driver Memory Used", + "layout": { + "column": 1, + "row": 1, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(spark.app.executor.memoryUsed) AS 'Bytes' WHERE sparkAppExecutorId = 'driver' AND spark.app.executor.memoryUsed IS NOT NULL TIMESERIES" + } + ], + "nullValues": { + "nullValue": "default" + }, + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "units": { + "unit": "BYTES" + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Average Driver Disk Used", + "layout": { + "column": 7, + "row": 1, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(spark.app.executor.diskUsed) AS 'Bytes' WHERE sparkAppExecutorId = 'driver' AND spark.app.executor.diskUsed IS NOT NULL TIMESERIES " + } + ], + "nullValues": { + "nullValue": "default" + }, + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "units": { + "unit": "BYTES" + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Average Executor Memory Used", + "layout": { + "column": 1, + "row": 4, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(spark.app.executor.memoryUsed) as 'Bytes' WHERE sparkAppExecutorId != 'driver' AND spark.app.executor.memoryUsed IS NOT NULL TIMESERIES FACET sparkAppExecutorId" + } + ], + "nullValues": { + "nullValue": "default" + }, + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "units": { + "unit": "BYTES" + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Average Executor Disk Used", + "layout": { + "column": 7, + "row": 4, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(spark.app.executor.diskUsed) AS 'Bytes' WHERE sparkAppExecutorId != 'driver' AND spark.app.executor.diskUsed IS NOT NULL TIMESERIES FACET sparkAppExecutorId" + } + ], + "nullValues": { + "nullValue": "default" + }, + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "units": { + "unit": "BYTES" + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Active Tasks", + "layout": { + "column": 1, + "row": 7, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.executor.activeTasks) AS 'Tasks' TIMESERIES WHERE sparkAppExecutorId != 'driver' FACET sparkAppExecutorId" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Complete Tasks", + "layout": { + "column": 5, + "row": 7, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.executor.completedTasks) AS 'Tasks' WHERE sparkAppExecutorId != 'driver' FACET sparkAppExecutorId" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Failed Tasks", + "layout": { + "column": 9, + "row": 7, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.executor.failedTasks) AS 'Tasks' WHERE sparkAppExecutorId != 'driver' FACET sparkAppExecutorId" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Average Executor Used On Heap Memory", + "layout": { + "column": 1, + "row": 10, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(spark.app.executor.memory.usedOnHeapStorageMemory) WHERE sparkAppExecutorId != 'driver' AND spark.app.executor.memory.usedOnHeapStorageMemory IS NOT NULL TIMESERIES FACET sparkAppExecutorId" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "units": { + "unit": "BYTES" + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Average Executor Used Off Heap Memory", + "layout": { + "column": 7, + "row": 10, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(spark.app.executor.memory.usedOffHeapStorageMemory) WHERE sparkAppExecutorId != 'driver' AND spark.app.executor.memory.usedOffHeapStorageMemory IS NOT NULL TIMESERIES FACET sparkAppExecutorId" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "units": { + "unit": "BYTES" + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Average Executor Peak JVM Heap Memory", + "layout": { + "column": 1, + "row": 13, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(spark.app.executor.memory.peak.jvmHeap) WHERE sparkAppExecutorId != 'driver' AND spark.app.executor.memory.peak.jvmHeap IS NOT NULL TIMESERIES FACET sparkAppExecutorId" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "units": { + "unit": "BYTES" + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Average Executor Peak JVM Off Heap Memory", + "layout": { + "column": 7, + "row": 13, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(spark.app.executor.memory.peak.jvmOffHeap) WHERE sparkAppExecutorId != 'driver' AND spark.app.executor.memory.peak.jvmOffHeap IS NOT NULL TIMESERIES FACET sparkAppExecutorId" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "units": { + "unit": "BYTES" + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Total Executor JVM Task Duration (seconds)", + "layout": { + "column": 1, + "row": 16, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.executor.totalDuration) / 1000 AS 'Seconds' WHERE sparkAppExecutorId != 'driver' FACET sparkAppExecutorId" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Total Executor JVM GC Time (seconds)", + "layout": { + "column": 5, + "row": 16, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.executor.totalGCTime) / 1000 AS 'Seconds' WHERE sparkAppExecutorId != 'driver' FACET sparkAppExecutorId" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "RDD Blocks", + "layout": { + "column": 9, + "row": 16, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.executor.rddBlocks) AS 'RDD Blocks' WHERE sparkAppExecutorId != 'driver' TIMESERIES FACET sparkAppExecutorId" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Total Input Bytes Summed", + "layout": { + "column": 1, + "row": 19, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "dataFormatters": [ + { + "name": "Bytes", + "type": "humanized" + } + ], + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.executor.totalInputBytes) AS 'Bytes' WHERE sparkAppExecutorId != 'driver' FACET sparkAppExecutorId" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Total Shuffle Read Bytes Summed", + "layout": { + "column": 5, + "row": 19, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "dataFormatters": [ + { + "name": "Bytes", + "type": "humanized" + } + ], + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.executor.totalShuffleRead) AS 'Bytes' WHERE sparkAppExecutorId != 'driver' FACET sparkAppExecutorId" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Total Shuffle Write Bytes Summed", + "layout": { + "column": 9, + "row": 19, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "dataFormatters": [ + { + "name": "Bytes", + "type": "humanized" + } + ], + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.executor.totalShuffleWrite) AS 'Bytes' WHERE sparkAppExecutorId != 'driver' FACET sparkAppExecutorId" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + } + ] + }, + { + "name": "RDDs", + "description": null, + "widgets": [ + { + "title": "Total Partitions By App & RDD", + "layout": { + "column": 1, + "row": 1, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.storage.rdd.partitions) AS 'Partitions' WHERE spark.app.storage.rdd.partitions IS NOT NULL FACET sparkAppName, sparkAppRDDName " + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Cached Partitions By App & RDD", + "layout": { + "column": 7, + "row": 1, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT latest(spark.app.storage.rdd.cachedPartitions) AS 'Partitions' WHERE spark.app.storage.rdd.cachedPartitions IS NOT NULL FACET sparkAppName, sparkAppRDDName " + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Average Memory Used By App & RDD", + "layout": { + "column": 1, + "row": 4, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(spark.app.storage.rdd.memory.used) WHERE spark.app.storage.rdd.memory.used IS NOT NULL TIMESERIES FACET sparkAppName, sparkAppRDDName" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "units": { + "unit": "BYTES" + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Average Disk Used By App & RDD", + "layout": { + "column": 7, + "row": 4, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(spark.app.storage.rdd.disk.used) WHERE spark.app.storage.rdd.disk.used IS NOT NULL TIMESERIES FACET sparkAppName, sparkAppRDDName" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "units": { + "unit": "BYTES" + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Average Memory Used by RDD Partition Block Name", + "layout": { + "column": 1, + "row": 7, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(spark.app.storage.rdd.partition.memory.used) WHERE spark.app.storage.rdd.partition.memory.used IS NOT NULL TIMESERIES FACET sparkAppRDDName, sparkAppRddPartitionBlockName" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "units": { + "unit": "BYTES" + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Average Disk Used by RDD Partition Block Name", + "layout": { + "column": 7, + "row": 7, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(spark.app.storage.rdd.partition.disk.used) WHERE spark.app.storage.rdd.partition.disk.used IS NOT NULL TIMESERIES FACET sparkAppRDDName, sparkAppRddPartitionBlockName" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "units": { + "unit": "BYTES" + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + } + ] + } + ] +} \ No newline at end of file diff --git a/dashboards/databricks-spark/databricks-spark01.png b/dashboards/databricks-spark/databricks-spark01.png new file mode 100644 index 0000000000..95fe120a05 Binary files /dev/null and b/dashboards/databricks-spark/databricks-spark01.png differ diff --git a/dashboards/databricks-spark/databricks-spark02.png b/dashboards/databricks-spark/databricks-spark02.png new file mode 100644 index 0000000000..66d4c858e3 Binary files /dev/null and b/dashboards/databricks-spark/databricks-spark02.png differ diff --git a/dashboards/databricks-spark/databricks-spark03.png b/dashboards/databricks-spark/databricks-spark03.png new file mode 100644 index 0000000000..0bbff226fb Binary files /dev/null and b/dashboards/databricks-spark/databricks-spark03.png differ diff --git a/dashboards/databricks-spark/databricks-spark04.png b/dashboards/databricks-spark/databricks-spark04.png new file mode 100644 index 0000000000..deee19c229 Binary files /dev/null and b/dashboards/databricks-spark/databricks-spark04.png differ diff --git a/dashboards/databricks/databricks.json b/dashboards/databricks/databricks.json deleted file mode 100644 index e67b0ae002..0000000000 --- a/dashboards/databricks/databricks.json +++ /dev/null @@ -1,427 +0,0 @@ -{ - "name": "Databricks: Spark - Overview v2", - "description": "", - "pages": [ - { - "name": "Spark - Overview", - "description": "", - "widgets": [ - { - "visualization": { - "id": "viz.markdown" - }, - "layout": { - "column": 1, - "row": 1, - "height": 2, - "width": 1 - }, - "title": "", - "rawConfiguration": { - "text": "\n![Add Images](https://d2.alternativeto.net/dist/icons/apache-spark_147518.png?width=128&height=128&mode=crop&upscale=false)" - }, - "linkedEntityGuids": null - }, - { - "visualization": { - "id": "viz.billboard" - }, - "layout": { - "column": 2, - "row": 1, - "height": 2, - "width": 1 - }, - "title": "Spark Application Count", - "rawConfiguration": { - "nrqlQueries": [ - { - "accountId": 0, - "query": "FROM Metric SELECT uniqueCount(spark.app.ID) AS '# of Apps' since 1 hour ago" - } - ] - }, - "linkedEntityGuids": null - }, - { - "visualization": { - "id": "viz.billboard" - }, - "layout": { - "column": 3, - "row": 1, - "height": 2, - "width": 1 - }, - "title": "Workers", - "rawConfiguration": { - "nrqlQueries": [ - { - "accountId": 0, - "query": "FROM Metric SELECT uniqueCount(spark.executor.ID) AS '# of Workers' where spark.executor.ID != 'driver' since 1 minute ago" - } - ] - }, - "linkedEntityGuids": null - }, - { - "visualization": { - "id": "viz.billboard" - }, - "layout": { - "column": 4, - "row": 1, - "height": 2, - "width": 1 - }, - "title": "Job Tasks Running", - "rawConfiguration": { - "nrqlQueries": [ - { - "accountId": 0, - "query": "FROM Metric select uniqueCount(spark.job.StageIds) AS 'Jobs Running' where spark.job.Status = 'RUNNING' since 1 minute ago " - } - ] - }, - "linkedEntityGuids": null - }, - { - "visualization": { - "id": "viz.billboard" - }, - "layout": { - "column": 5, - "row": 1, - "height": 2, - "width": 1 - }, - "title": "Stages Running", - "rawConfiguration": { - "nrqlQueries": [ - { - "accountId": 0, - "query": "FROM Metric select filter(uniqueCount(spark.job.StageIds), WHERE spark.job.Status = 'RUNNING') as 'Stages Running' since 1 minute ago " - } - ] - }, - "linkedEntityGuids": null - }, - { - "visualization": { - "id": "viz.billboard" - }, - "layout": { - "column": 6, - "row": 1, - "height": 2, - "width": 1 - }, - "title": "Tasks Running", - "rawConfiguration": { - "nrqlQueries": [ - { - "accountId": 0, - "query": "FROM Metric SELECT round(rate(sum(spark.job.numactivetasks), 5 seconds)) as 'Tasks Running' WHERE spark.job.Status = 'RUNNING' since 1 minute ago" - } - ] - }, - "linkedEntityGuids": null - }, - { - "visualization": { - "id": "viz.line" - }, - "layout": { - "column": 7, - "row": 1, - "height": 2, - "width": 2 - }, - "title": "Cluster Load", - "rawConfiguration": { - "nrqlQueries": [ - { - "accountId": 0, - "query": "SELECT average(loadAverageOneMinute), uniqueCount(hostname) AS 'Hosts', sum(processorCount) AS 'CPUs' FROM SystemSample since 15 minutes ago until 1 minute ago TIMESERIES" - } - ] - }, - "linkedEntityGuids": null - }, - { - "visualization": { - "id": "viz.table" - }, - "layout": { - "column": 9, - "row": 1, - "height": 3, - "width": 4 - }, - "title": "Spark Node CPU Utilization", - "rawConfiguration": { - "nrqlQueries": [ - { - "accountId": 0, - "query": "from SystemSample SELECT latest(cpuPercent) as 'CPU %', latest(coreCount) as 'Cores' FACET hostname where hostname LIKE '%-%-%-%-%-%-%' LIMIT 50 SINCE 1 minute ago " - } - ] - }, - "linkedEntityGuids": null - }, - { - "visualization": { - "id": "viz.line" - }, - "layout": { - "column": 1, - "row": 3, - "height": 2, - "width": 2 - }, - "title": "GC Time", - "rawConfiguration": { - "nrqlQueries": [ - { - "accountId": 0, - "query": "FROM Metric SELECT latest(spark.executor.totalgctime) AS 'Garbage Collection' facet spark.executor.ID since 1 hour ago TIMESERIES " - } - ] - }, - "linkedEntityGuids": null - }, - { - "visualization": { - "id": "viz.area" - }, - "layout": { - "column": 3, - "row": 3, - "height": 2, - "width": 3 - }, - "title": "Cores Used", - "rawConfiguration": { - "nrqlQueries": [ - { - "accountId": 0, - "query": "FROM Metric SELECT latest(spark.app.Cores) AS 'Cluster Cores' since 1 hour ago TIMESERIES " - } - ] - }, - "linkedEntityGuids": null - }, - { - "visualization": { - "id": "viz.line" - }, - "layout": { - "column": 6, - "row": 3, - "height": 2, - "width": 3 - }, - "title": "Jobs", - "rawConfiguration": { - "nrqlQueries": [ - { - "accountId": 0, - "query": "FROM Metric SELECT filter(uniqueCount(spark.job.StageIds), WHERE spark.job.Status ='RUNNING') as 'RUNNING' TIMESERIES since 1 hour ago" - } - ] - }, - "linkedEntityGuids": null - }, - { - "visualization": { - "id": "viz.table" - }, - "layout": { - "column": 9, - "row": 4, - "height": 3, - "width": 4 - }, - "title": "Spark Node Memory Utilization", - "rawConfiguration": { - "nrqlQueries": [ - { - "accountId": 0, - "query": "from SystemSample SELECT 100 * average(memoryUsedBytes) / (average(memoryFreeBytes) + average(memoryUsedBytes)) as PctUsed, average(memoryFreeBytes)/1000000 AS 'Avg MB Free' FACET hostname WHERE hostname LIKE '%-%-%-%-%-%-%' LIMIT 50 SINCE 1 minute ago" - } - ] - }, - "linkedEntityGuids": null - }, - { - "visualization": { - "id": "viz.line" - }, - "layout": { - "column": 1, - "row": 5, - "height": 2, - "width": 4 - }, - "title": "Job Stages", - "rawConfiguration": { - "nrqlQueries": [ - { - "accountId": 0, - "query": "FROM Metric SELECT filter(uniqueCount(spark.job.StageIds), WHERE spark.job.Status ='SUCCEEDED') as 'Succeeded', filter(uniqueCount(spark.job.StageIds), WHERE spark.job.Status = 'RUNNING') as 'Running', filter(uniqueCount(spark.job.StageIds), WHERE spark.job.Status = 'FAILED') as 'Failed' TIMESERIES since 1 hour ago" - } - ] - }, - "linkedEntityGuids": null - }, - { - "visualization": { - "id": "viz.line" - }, - "layout": { - "column": 5, - "row": 5, - "height": 2, - "width": 4 - }, - "title": "Job Tasks", - "rawConfiguration": { - "nrqlQueries": [ - { - "accountId": 0, - "query": "FROM Metric select latest(spark.job.numcompletedtasks) as 'Completed Tasks', latest(spark.job.numtasks) as 'Running Tasks' FACET spark.job.Status TIMESERIES since 1 hours ago" - } - ] - }, - "linkedEntityGuids": null - }, - { - "visualization": { - "id": "viz.line" - }, - "layout": { - "column": 1, - "row": 7, - "height": 2, - "width": 4 - }, - "title": "Shuffle Read/Write Records", - "rawConfiguration": { - "nrqlQueries": [ - { - "accountId": 0, - "query": "FROM Metric SELECT latest(spark.executor.totalshuffleread) AS 'Reads', latest(spark.executor.totalshufflewrite) AS 'Writes' TIMESERIES since 1 hour ago" - } - ] - }, - "linkedEntityGuids": null - }, - { - "visualization": { - "id": "viz.line" - }, - "layout": { - "column": 5, - "row": 7, - "height": 2, - "width": 4 - }, - "title": "Shuffle Read/Write Bytes", - "rawConfiguration": { - "nrqlQueries": [ - { - "accountId": 0, - "query": "FROM Metric select latest(spark.stage.shufflereadbytes) AS 'Read Bytes', latest(spark.stage.shufflewritebytes) AS 'Write Bytes' TIMESERIES since 1 hour ago" - } - ] - }, - "linkedEntityGuids": null - }, - { - "visualization": { - "id": "viz.pie" - }, - "layout": { - "column": 9, - "row": 7, - "height": 4, - "width": 4 - }, - "title": "Processes Utilization", - "rawConfiguration": { - "nrqlQueries": [ - { - "accountId": 0, - "query": "SELECT count(*), average(threadCount), average(cpuPercent), average(cpuSystemPercent) FROM ProcessSample FACET commandName WHERE hostname LIKE '%-%-%-%-%-%-%' SINCE 5 minutes ago limit 10" - } - ] - }, - "linkedEntityGuids": null - }, - { - "visualization": { - "id": "viz.line" - }, - "layout": { - "column": 1, - "row": 9, - "height": 2, - "width": 4 - }, - "title": "Stage Input/Output Records", - "rawConfiguration": { - "nrqlQueries": [ - { - "accountId": 0, - "query": "FROM Metric SELECT latest(spark.stage.inputrecords) AS 'Input', latest(spark.stage.outputrecords) AS 'Output' TIMESERIES since 1 hour ago" - } - ] - }, - "linkedEntityGuids": null - }, - { - "visualization": { - "id": "viz.line" - }, - "layout": { - "column": 5, - "row": 9, - "height": 2, - "width": 4 - }, - "title": "Stage Input/Output Bytes", - "rawConfiguration": { - "nrqlQueries": [ - { - "accountId": 0, - "query": "FROM Metric SELECT latest(spark.stage.inputbytes) AS 'Input Bytes', latest(spark.stage.outputbytes) AS 'Output Bytes' TIMESERIES since 1 hour ago" - } - ] - }, - "linkedEntityGuids": null - }, - { - "visualization": { - "id": "viz.line" - }, - "layout": { - "column": 1, - "row": 11, - "height": 2, - "width": 4 - }, - "title": "RDD Blocks", - "rawConfiguration": { - "nrqlQueries": [ - { - "accountId": 0, - "query": "FROM Metric SELECT latest(spark.executor.rddblocks) AS BlocksUsed TIMESERIES since 1 hour ago" - } - ] - }, - "linkedEntityGuids": null - } - ] - } - ] - } \ No newline at end of file diff --git a/dashboards/databricks/databricks.png b/dashboards/databricks/databricks.png deleted file mode 100644 index 1032a91327..0000000000 Binary files a/dashboards/databricks/databricks.png and /dev/null differ diff --git a/dashboards/gcp-redis/gcp-redis.json b/dashboards/gcp-redis/gcp-redis.json index 4672c7c03e..3306d54db0 100644 --- a/dashboards/gcp-redis/gcp-redis.json +++ b/dashboards/gcp-redis/gcp-redis.json @@ -335,7 +335,7 @@ "nrqlQueries": [ { "accountIds": [], - "query": "SELECT AVERAGE(replication.master.slaves.Offset) AS `Average Replication Byte Offset(Slaves)`, AVERAGE(replication.MasterReplOffset) AS `Average Replication Byte Offset(Master)` FROM GcpRedisInstanceSample WHERE (`provider` = 'GcpRedisInstance') FACET slave TIMESERIES AUTO" + "query": "SELECT AVERAGE('replication.master.slaves.Offset') AS `Average Replication Byte Offset(Slaves)`, AVERAGE(replication.MasterReplOffset) AS `Average Replication Byte Offset(Master)` FROM GcpRedisInstanceSample WHERE (`provider` = 'GcpRedisInstance') FACET slave TIMESERIES AUTO" } ], "platformOptions": { diff --git a/dashboards/jfrog-artifactory-cloud/jfrog-artifactory-cloud01.png b/dashboards/jfrog-artifactory-cloud/jfrog-artifactory-cloud01.png new file mode 100644 index 0000000000..02c67e0a5b Binary files /dev/null and b/dashboards/jfrog-artifactory-cloud/jfrog-artifactory-cloud01.png differ diff --git a/dashboards/jfrog-artifactory-cloud/jfrog-artifactory-cloud02.png b/dashboards/jfrog-artifactory-cloud/jfrog-artifactory-cloud02.png new file mode 100644 index 0000000000..477378f79b Binary files /dev/null and b/dashboards/jfrog-artifactory-cloud/jfrog-artifactory-cloud02.png differ diff --git a/dashboards/jfrog-artifactory-cloud/jfrog-artifactory-cloud03.png b/dashboards/jfrog-artifactory-cloud/jfrog-artifactory-cloud03.png new file mode 100644 index 0000000000..e8b29ea7ef Binary files /dev/null and b/dashboards/jfrog-artifactory-cloud/jfrog-artifactory-cloud03.png differ diff --git a/dashboards/jfrog-artifactory-cloud/jfrog-artifactory.json b/dashboards/jfrog-artifactory-cloud/jfrog-artifactory.json new file mode 100644 index 0000000000..4c70337bd9 --- /dev/null +++ b/dashboards/jfrog-artifactory-cloud/jfrog-artifactory.json @@ -0,0 +1,878 @@ +{ + "name": "JFrog Platform Cloud", + "description": "This dashboard provides an overview of usage statistics of JFrog Artifactory logs (application, audit, Docker, requests) and overview of the system metrics, JVM statistics, storage consumption, garbage collection, and other operational insights associated with JFrog Artifactory", + "pages": [ + { + "name": "Requests", + "description": null, + "widgets": [ + { + "title": "", + "layout": { + "column": 1, + "row": 1, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.markdown" + }, + "rawConfiguration": { + "text": "![JFrog Artifactory Logo](data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAoHCA8PDw8QDw8REA8REREQDxEPEREPDxAPGBkZGhgUGRgcIS4lHB4tIRgYJjgmKy8xNTU1GiQ7QDszPy40NTEBDAwMEA8QHxISHzcsJCs0NDQ2NzQ2NDQ0NDQ0MTQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQ0NDQxMT8/P//AABEIAKgBKwMBIgACEQEDEQH/xAAbAAEAAgMBAQAAAAAAAAAAAAAABAUBAwYCB//EAEEQAAIBAwIDBAQLBwMFAQAAAAABAgMEERIhBQYxEyJBURZhcdEUMlNUgZGSk6GxwRUjNVJicoJCg+E0c6LC8CX/xAAYAQEBAQEBAAAAAAAAAAAAAAAAAgEDBP/EACYRAQEAAgEEAgEFAQEAAAAAAAABAhESAyExURNBIjJhcYHRwRT/2gAMAwEAAhEDEQA/APswAAAAAAAAAAAAAAAAAAAAAAAMGSNdXlKjHVVqRgv6mln2LxKWvzfaReIqpU9cYpL/AMmibnjj5rLlJ5rowctHnOhnejVS8+4/1LC05js6rSVXRJ+FROH4vYydTC/bJnjftcg8xaaTTyn0a6HotQYMgAYMgDAMmABkAAAAAAAGDIAAAAAAAAAAAAAAAAAAAAAABzPMHMioN0qGJVf9UusYe9krmfivwajiL/e1Mxh6l4yOa5a4I7qTq1c9lGW/nUl7jh1M7vhj5c88rvjj5RbPht3fzc25SWd6lST0r1L3I6G25Nopfvas5vyilCP45OnhCMYqMUoxSwklhJHs3HoYzz3J0sZ57udnyhaNYTqRfmp5/NFVfcm1IpyoVFP+ma0S+h9PyO3BV6OF+m3p436fN+H8WubCfZzUnBPvUp52/t8jvOHX9O5pqpSeU9mvGL8miPxrhFO7hhpKoviTxuvU/UcVwu8qWFy4zyo6tNWPhj+Y5S3pXV8I3endXw+kg8QkpJNPKaTT80ez0uwAAAAAAAAAAAAAAGAMgAAAAAAAAAAAAAAAAAAAeZdH7GB865iryub6UI9IyVKP6s76wtY0KUKcVhRil7X4s+f8Hjr4jDPys5fU2fSTz9Dvyy/dy6XfeQAD0OoAABx3PFiv3dxFb50T/RnYlLzXBSsqufDS17cnPq47wqc5vGtXKF32lqot5dNuH0dV+BfnG8hSebmPh+7l9O6/Q7IdK7wjMLvGAAOiwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAxgyAPmtCXwfiKctlCu8+xv/AJPpOThedLBwrRrxXdqbSa8Jo6LlviSuaCy/3kEozXj6mefpfjlcK5dPtbiuQAeh1AAAKDnGuoWko+M5KK/Nl+fPeauJfCbiNOn3oweiOP8AVN9fccutlxwR1LrFaciUWqdefhKUYr6F/wAnXFbwOy+D21Om/jY1S/ue7LIrp48cZG4TWMgAC1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAicRsoXFKVOfSS2fin4NHz5q54bc+Kae38lSB9MIfELClcwcKscrwfjF+aZy6nT5d55RnhvvPKLwnjtC5isSUJ+MJNJ59XmWxwPEeVLik3Kg+0it1ju1ERKfFL+37rnUSXhOOr8yJ1rj2zifks/VH0k11KkYJynJRiurbSR8+lzNfS2U1/jDc1K1v7yXeVSefGfdgh/6Jf0zZ8s+oteYOZ1JSpWzaT2lU6ZXlEcqcCbcbmtHEVvTjLq3/MybwjlWFJqddqc1uor4if6nTJJbLY3HDLK8szHC28snoAHd1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAZBSy5ls4tp1HlNp919UPSey+Vf2WRzx9p5Y+10eJQT6pP2pMqPSey+Vf2WPSey+Vf2Wbzx9nKe1qqEF0hFeyKNiKb0nsvlX9lj0nsvlX9ljnj7OWPtdApfSey+Vf2WPSey+Vf2WOePs5T2ugQOH8VoXLkqM9Tgk5bNYTzj8iebLL3ipd+AAGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeWtseo9ADjavJspSlL4RFapOWND2y8+Zj0Kl84j92/edmDl8OHpHx4+nGehUvnEfu37x6FS+cR+7fvOzA+HD0fHj6cZ6FS+cR+7fvHoVL5xH7t+87MD4cPR8ePpxnoVL5xH7t+8ehUvnEfu37zswPhw9Hx4+lFy/wJ2TqN1FPWoraOnGM+8vQC8cZjNRUkk1AAFNAAAAAAAAAAAAAAAAAAAAMAeFVi3hSi35JpsdrH+aP1o4Plxv9pPd/Gr+PqkQrGyldXc6PaOGZ1Xq3ljDb6ZOHzXU7fenL5L6fSVUi+kov2NM2HK2fL8LOpGvVuk4x8JLSm/bkuKnGbWMIzdaOmTai923jrt1Oky7fl2XMvfZZAh3HEKFKCnUqRjGSTjl7tPyXUxacTt6+1KrGb8llP6mVueG7iaDRc3NOlHVUnGEfOTwQ6fHLObxG4hn15ivraFshuLMEK34lb1ZunTqRnNLU1F529viS5SSTb6JZYll8Nnd5lVinhyin5OSTNh8t4lcTr1q9ZZ0qfVdEs4ifQuC3SrW1Ked9KUvU1szn0+rztmkY58rpYAgLits3NKtB6Fme+0V7Ss4xx2n8GlO2rLW3pg0mn68ZRdzxk2q5SOiIlLiFCdSVOFSMqkesU9/+Sj5Y4tCVLTXr6q0ptKMtTk89CPwvhttTvpSjdRnJa5RpqLyvPMumxHO3Vx+08t606O94jQoY7WpGLfRdW/oPVlf0a6bpTU0uuPD2nCX1ajX4i5VZqVDVhy306F4HX8OlZUacpUJQjTcu9LLS1eWWMOpcsr6McratgVUePWbelV456b6ks+3BZ6ljOVjGc+GPM6Sy+FSy+HoFVLj9mpaXXWemyk0n7cEHmfi3Z0I9hWSnNppx3bhvumTc8ZLWXKSbdGDn+W+KU50aVOdbVcSc8qWXN7t/kWV5xS3oPFWrGD8nlv6kbM5Ztsylm04EW0vqNdZpVIzS64e6+jqeZ8QoKoqTqwVR57ud9ll58tjdxu0wFYuOWjcl28e78Z74+h43JltcU60FOnJTg84kum2zEsvis3K3ghVeJW8KnZyqxVTKWl9cvovxRNG2gANAAAAAAMMyYYHz/lv+Jf5V/ykQrP4R8Ln8FWa2urpxp6ZefjbdCby3/Ev8q/5SPXLP8Sf91f/ANjxSbkn7/48sm5P5Sr2N87O5+GppLs3Tz2b31b/ABWa+WeCUbik6tVzembUYp4isYZf82f9DW/x/NEXkpZtJeupJfgjpwnySXv2+3TjOer6UFlH4ff4qtuGZ4in0hH4sfwNnMdlGxr0qlvmmmtSSb2kma7GX7P4g+2TUU5rKWcwlnTI2cy3sb2vSp2+ZpLSmk95SZz7cLv9W/7R243fnbVzDcuvc0HUbjTlTpy9SUvjNG/mSzsadKEreUdba2jLVqj5vyPXNinThQo6E4Qpr95py9XitXgQrG44dDS6tCtOS+M3PMW/7dhlrlZdf2XW7K6blSwpRoQr9mo1ZJrXvlx815EzmS77G1qNfGktEfayXw+6pVqUZ0WtGMJJY048GvA5Tne51VKVBeC1Nf1S2R3ysw6fZ1yvHDsicLo0nw+51Tgqk94Rckpd3psWfI91qhVoyfR64/2vqhR5NpuMXKrUUnFNpKOE/LoVXCm7LiPZyfd1um2/GL6M5SZYZY2z9kTeNls/Zp4Rw+Fxe1KMpSjDVUk9Lw2oy2Rfcw8JoULHEIb05Zg225LU9yu5X/iVT/e/M6HmyLdlUws4cW8eWTcMZ8dv8mEnC1X8ncPoypRrygnVjOSjN5yiu5finxOon0fbJ+wn8ocRoQoqlKajUc3iLz3s9MEHl7+KT/3RNaw17O2sUaVjS/afYaf3bqNacvpjJf8AGOCWipUlKp8Hp03LxzrT3a36sqX/ABj/AHP0M88OXb0lLOjR3fLOd/pM7THK6+ztMb2QeMx4eqcVaym5qWJZ1YlHz3JvEL6cOGW0FJ5qalJ75cI+GTTxudj8HpRtlHtMpyaT1YxvlmLul2vDbecO92EpRqJdY58WTe1y1rx9J+7/AB9LTgvLlvWtYTqKTnUTlqUmnFeCQ5vsKNK2pOEEpQlGnF+OjD2M8F5jtqVrCFSUlOmtOlRy5eWBzPdwueH06tPOiVSLeVvHqmn9J0/D47rzpf48e3p74Ba0aNkrtQXbRp1HqefBv3IqeXLKN9cValxmaS1NNvvSb8S14Dd0KtlG11pVZRqQUHnOXqaKrlm8hZXFWFxmGVpbae0k/Ent+Pr/AKzt+Pp4vo/s+/XYtqCcHjPWMsaov8Rx2gp8UdNNxU50Ytrqtaim/wAReyXEOILsk5QcoLOP9EcapG/iq/8A2Yf923/KBN8XXjf+p9+tre85co07S4hSUnKUYzTk9T1Qy9vrf1kbke8XZVqUnjs5dos+EWt/xWfpOtZ82vNVlc3MI/FnCcF/bPDi/wAjrnJ08plPHh0y1hZYm8Ag7ziEq8l3YuVV5884gv8A7yO9Od5Ms+ztu0a71WTl/gto/q/pOiL6OOsd++6unNYgAOqwAAAAAIHGK9WnQnOjBzqJbJbtevHjjyJ4MvgrlOU+C1KUpXFdaZyTUYvZ79W14ewvqPDLenPtIUYRnv3orD36k0E44TGaTMZJppuLeFWLhUipRfWMt0zFra0qMdNKEYRznEVhZ8zeCtfakS8saNdJVacZ46aluvY/A8WXC7e3bdKlGDfju39bJwGpvbNRxnG7+6tbzXKU5W7lFxim1CUcbx8smrjHMdC4oypU6Mtc8JOaj3X5rGW2drKKaw0mvJrKNcLalF5jThF+ajFM53p5d9ZeUXG/VUvKFnUo28nUTi5z1KMlhpY649ZZ1uGW059pOjCVTKeprvZXTcnAuYSTS5jJNBBrcMt6k9c6MJT27zXe26bk4G2S+W62hUOG29KTnTpQjN5zJLD367kqUFJNNJxaw0900ewJJPB4VlLgdnCanGhBSTynvhPzS6I30eG29ObqwpQjUeczS7zz13JgM44+makQ/wBnW/adr2UO1znXjvZ88nq9saNxHTWpqcVus9U/U1uiUDdQ1FVb8Bs6erRQj3k09TlU2/ybwS7WypUYdnTgow37vXOeuc9SUBMZPEJJFU+AWTlqdvDPXx0/V0J7t4OHZuEXDGNOFpx5YNwExk8Q1FZb8EtKU1OFGMZrdPMnh+rL2Nt7wu3uHmrSjKXTVupY9qJwHGeNGoiWdhQoJqjSjDPVxW79r6nmpw23nUVWVKDqJxkptd7Kxh5+hE0DjPBqNdSpGEZSk8Rim28dEupwfGK8eI3dOFtHwUXNx7zWd5P+lI75rPsI9pY0aCfZU4wz10rDftfiR1MLl2+mZY8uzbQpRpwjCKxGKUY+xI2gHRQAAAAAAAAAAAAAAAAAAAAAAAAYAAGQAAAAAAAAAAAAAAAAAAAAAAAAAP/Z)\n\n---\n#### Dashboard Instructions\n\n(Scroll for more)\n\n---\n##### Variables Available\n* **User**: Filters by user, primarily for auditing actions\n* **Repository**: Filters by repository, used for monitoring docker data\n---\n##### Dashboard Pages\n- **Requests**: Tracks HTTP response codes, and upload/download activity by IP Address\n- **Audit**: Track audit logs to determine who is accessing your Artifactory instance and from where. Service users are filtered out | *Variable: User*\n- **Docker**: Tracks your dockerhub status over time | *Variable: Repository*\n\n" + } + }, + { + "title": "Artifactory calls by HTTP status", + "layout": { + "column": 5, + "row": 1, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.stacked-bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Log SELECT count(return_status) FACET return_status WHERE service = 'jfrog.saas.rt.artifactory.request' AND user_name IN ({{user}}) TIMESERIES AUTO " + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Artifactory HTTP 4xx errors", + "layout": { + "column": 9, + "row": 1, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.stacked-bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Log SELECT count(return_status) FACET return_status WHERE service = 'jfrog.saas.rt.artifactory.request' AND return_status LIKE '4%%' AND user_name IN ({{user}}) TIMESERIES AUTO" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "units": { + "unit": "COUNT" + } + } + }, + { + "title": "Top requests by IP address", + "layout": { + "column": 1, + "row": 4, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM Log FACET ip_address WHERE ip_address !='UNKNOWN' AND ip_address !='127.0.0.1' AND user_name IN ({{user}}) LIMIT 10 " + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Artifactory HTTP 5xx errors", + "layout": { + "column": 5, + "row": 4, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.stacked-bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Log SELECT count(return_status) FACET return_status WHERE service = 'jfrog.saas.rt.artifactory.request' AND return_status LIKE '5%%' AND user_name IN ({{user}}) TIMESERIES AUTO" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "User request activity", + "layout": { + "column": 9, + "row": 4, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM Log FACET user_name WHERE service LIKE 'jfrog.saas.%' AND request_user_agent NOT LIKE 'Prometheus%' AND user_name NOT LIKE 'jf%@%' AND user_name NOT LIKE 'non_authenticated_user' AND user_name NOT LIKE '_system_' AND user_name NOT IN ('UNKNOWN','NA') AND user_name IN ({{user}})" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Log volume, number of records", + "layout": { + "column": 1, + "row": 7, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.pie" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": true + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Log SELECT count(service) FACET service WHERE hostname = 'jfrog-cloud' AND service NOT LIKE 'jfrog.saas.rt.xray.%' AND user_name IN ({{user}}) " + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Accessed resources by username, instance name and IP address", + "layout": { + "column": 5, + "row": 7, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM Log WITH user_name AS user FACET request_url, user_name, remote_address WHERE service = 'jfrog.saas.rt.artifactory.request' AND request_url NOT LIKE '/ui%' AND request_url NOT LIKE '/api/v1/metrics%' AND request_url NOT LIKE '/api/v1/system%' AND request_url NOT LIKE '/api/system%' AND request_url NOT LIKE '/api/admin/%' AND request_url NOT LIKE '/api/storagesummary/%' AND request_url NOT LIKE '/api/xray%' AND request_url NOT LIKE '/api/auth/%' AND request_url NOT LIKE '/api/treebrowser/%' AND request_url NOT LIKE '/api/home/%' AND request_url NOT LIKE '/api/artifact%' AND request_url NOT LIKE '/api/v2/%' AND request_url NOT LIKE '/api/builds%' AND request_url NOT LIKE '/api/docker/%/blobs%' AND request_url NOT LIKE '/api/search%' AND request_url NOT LIKE '/api/storage%' AND request_url NOT LIKE '/api/bundles%' AND request_url NOT LIKE '/api/onboarding%' AND request_url NOT LIKE '/api/users%' AND request_url NOT LIKE '/api/permissiontargets%' AND request_url NOT IN ('/api/repodata','/api/artifactactions/download','/api/setMeUp','/api/treebrowser','/api/generalConfig','/api/propertysets','/api/saml/config','/api/setMeUp','/api/subscription/getUpgradeInfo','/api/generalConfig','/api/global/replications/config','/api/onboarding/initStatus','/api/docker/null/v2/token','/api/docker/v2/') AND user_name IN ({{user}}) LIMIT 10" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + } + ] + }, + { + "name": "Audit", + "description": null, + "widgets": [ + { + "title": "Operations by users", + "layout": { + "column": 1, + "row": 1, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM Log FACET user_name WHERE service = 'jfrog.saas.rt.access.audit' AND user_name IN ({{user}}) AND user_name NOT LIKE 'jf%@%'" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Operations on tokens", + "layout": { + "column": 5, + "row": 1, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.stacked-bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(entity_name) FROM Log FACET entity_name WHERE entity_name LIKE '%@%/%' AND user_name IN ({{user}}) TIMESERIES AUTO" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Operations on permissions", + "layout": { + "column": 9, + "row": 1, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.stacked-bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM Log FACET event,event_type WHERE service = 'jfrog.saas.rt.access.security.audit' AND entity_name NOT LIKE '%@%' AND event = 'PRM' AND user_name IN ({{user}}) TIMESERIES AUTO" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Operations on users", + "layout": { + "column": 1, + "row": 4, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.stacked-bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM Log FACET event,event_type,user_name WHERE service = 'jfrog.saas.rt.access.security.audit' AND entity_name NOT LIKE '%@%' AND event = 'USR' AND user_name IN ({{user}}) TIMESERIES AUTO" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Operations on groups", + "layout": { + "column": 5, + "row": 4, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.stacked-bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM Log FACET event,event_type,user_name WHERE service = 'jfrog.saas.rt.access.security.audit' AND entity_name NOT LIKE '%@%' AND event = 'GRP' AND user_name IN ({{user}}) TIMESERIES AUTO" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Artifactory access security audit events ", + "layout": { + "column": 9, + "row": 4, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.stacked-bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM Log FACET service WHERE service = 'jfrog.saas.rt.access.security.audit' AND user_name IN ({{user}}) TIMESERIES AUTO" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Artifactory access audit events ", + "layout": { + "column": 1, + "row": 7, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.stacked-bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM Log FACET service WHERE service = 'jfrog.saas.rt.access.audit' AND user_name IN ({{user}}) TIMESERIES AUTO" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Action types", + "layout": { + "column": 5, + "row": 7, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM Log FACET action_response WHERE service = 'jfrog.saas.rt.artifactory.access' AND user_name IN ({{user}})" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Accepted deploys by username", + "layout": { + "column": 9, + "row": 7, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM Log FACET action_response, user_name WHERE service = 'jfrog.saas.rt.artifactory.access' AND action_response = 'ACCEPTED DEPLOY' AND user_name IN ({{user}})" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Denied actions by IP", + "layout": { + "column": 1, + "row": 10, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.pie" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": true + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM Log FACET ip_address, action WHERE service = 'jfrog.saas.rt.artifactory.access' AND user_name IN ({{user}}) AND action_response LIKE 'DENIED%'" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Denied downloads by username and instance", + "layout": { + "column": 5, + "row": 10, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.pie" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": true + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM Log FACET user_name,action,instance_name WHERE service = 'jfrog.saas.rt.artifactory.access' AND user_name IN ({{user}}) AND action_response LIKE 'DENIED DOWNLOAD'" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Users activity over time", + "layout": { + "column": 9, + "row": 10, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.stacked-bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM Log FACET user_name WHERE service = 'jfrog.saas.rt.artifactory.access' AND user_name != 'NA' AND user_name IN ({{user}}) TIMESERIES AUTO" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Denied logins by IP", + "layout": { + "column": 1, + "row": 13, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.pie" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": true + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM Log FACET action_response,ip_address WHERE service = 'jfrog.saas.rt.artifactory.access' AND action_response LIKE 'DENIED LOGIN' AND user_name IN ({{user}})" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Accepted deployments by username and instance name.", + "layout": { + "column": 5, + "row": 13, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.pie" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": true + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM Log FACET action_response,user_name,instance_name WHERE service = 'jfrog.saas.rt.artifactory.access' AND action_response LIKE 'ACCEPTED DEPLOY' AND user_name IN ({{user}})" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Accepted downloads by username and instance name.", + "layout": { + "column": 9, + "row": 13, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.pie" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": true + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM Log FACET action_response,user_name,instance_name WHERE service = 'jfrog.saas.rt.artifactory.access' AND action_response LIKE 'ACCEPTED DOWNLOAD' AND user_name IN ({{user}})" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + } + ] + }, + { + "name": "Docker", + "description": null, + "widgets": [ + { + "title": "Accessed docker repos (timeseries)", + "layout": { + "column": 1, + "row": 1, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.stacked-bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Log SELECT count(repo) FACET repo WHERE service = 'jfrog.saas.rt.artifactory.request' AND request_method IN ('HEAD','PUT') AND request_url LIKE '%/manifests/%' AND repo IN ({{repo}}) TIMESERIES AUTO " + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Accessed docker repos (top chart)", + "layout": { + "column": 5, + "row": 1, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM Log FACET repo WHERE service = 'jfrog.saas.rt.artifactory.request' AND request_method IN ('HEAD','PUT') AND request_url LIKE '%/manifests/%' AND repo IN ({{repo}}) LIMIT 10" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Accessed docker images by name and response code", + "layout": { + "column": 9, + "row": 1, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.stacked-bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM Log FACET return_status,image WHERE service = 'jfrog.saas.rt.artifactory.request' AND request_method IN ('HEAD','PUT') AND request_url LIKE '%/manifests/%' AND repo IN ({{repo}}) TIMESERIES" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Accessed docker images (timeseries)", + "layout": { + "column": 1, + "row": 4, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.stacked-bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Log SELECT count(image) FACET image WHERE service = 'jfrog.saas.rt.artifactory.request' AND request_method IN ('HEAD','PUT') AND request_url LIKE '%/manifests/%' AND repo IN ({{repo}}) TIMESERIES AUTO " + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Data Transfers (GBs) Uploads By Repo", + "layout": { + "column": 5, + "row": 4, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.pie" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": true + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT sum(response_content_length) FROM Log FACET repo WHERE service = 'jfrog.saas.rt.artifactory.request' AND request_url LIKE '/api/docker/%' AND image!='NULL' AND image!='' AND repo IN ({{repo}})" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + } + ] + } + ], + "variables": [ + { + "name": "user", + "items": null, + "defaultValues": [ + { + "value": { + "string": "*" + } + } + ], + "nrqlQuery": { + "accountIds": [], + "query": "SELECT uniques(user_name) FROM Log WHERE hostname = 'jfrog-cloud' AND user_name NOT LIKE 'token:%' AND user_name != nil " + }, + "options": { + "ignoreTimeRange": false + }, + "title": "User", + "type": "NRQL", + "isMultiSelection": true, + "replacementStrategy": "DEFAULT" + }, + { + "name": "repo", + "items": null, + "defaultValues": [ + { + "value": { + "string": "*" + } + } + ], + "nrqlQuery": { + "accountIds": [], + "query": "SELECT uniques(repo) FROM Log WHERE hostname = 'jfrog-cloud' AND repo != nil " + }, + "options": { + "ignoreTimeRange": false + }, + "title": "Repository", + "type": "NRQL", + "isMultiSelection": true, + "replacementStrategy": "DEFAULT" + } + ] +} \ No newline at end of file diff --git a/dashboards/lambdatest/lambdatest-logs.json b/dashboards/lambdatest/lambdatest-logs.json index 6b5ac498a7..196c6fb722 100644 --- a/dashboards/lambdatest/lambdatest-logs.json +++ b/dashboards/lambdatest/lambdatest-logs.json @@ -502,6 +502,216 @@ } } ] + }, + { + "name": "LambdaTest - HyperExecute Overview", + "description": null, + "widgets": [ + { + "title": "Jobs", + "layout": { + "column": 1, + "row": 1, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT uniqueCount(job_id) AS 'Jobs' FROM Log WHERE `service`='lambdatest' AND `newrelic.source` = 'api.logs' AND `logtype` = 'hye-job' SINCE 1 week ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Tasks", + "layout": { + "column": 5, + "row": 1, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT uniqueCount(task_id) AS 'Tasks' FROM Log WHERE `service`='lambdatest' AND `newrelic.source` = 'api.logs' AND `logtype` = 'hye-task' SINCE 1 week ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Stages", + "layout": { + "column": 9, + "row": 1, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT uniqueCount(stage_id) AS 'Stages' FROM Log WHERE `service`='lambdatest' AND `newrelic.source` = 'api.logs' AND `logtype` = 'hye-stage' SINCE 1 week ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Job trends", + "layout": { + "column": 1, + "row": 4, + "width": 6, + "height": 4 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.area" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT uniqueCount(job_id) \nFROM Log \nWHERE `newrelic.source` = 'api.logs'\nAND service = 'lambdatest' AND `newrelic.source` = 'api.logs' AND `logtype` = 'hye-job'\nFACET job_status\nSINCE 1 week ago \nTIMESERIES" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Task trends", + "layout": { + "column": 7, + "row": 4, + "width": 6, + "height": 4 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.area" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT uniqueCount(task_id) \nFROM Log \nWHERE `newrelic.source` = 'api.logs'\nAND service = 'lambdatest' AND `newrelic.source` = 'api.logs' AND `logtype` = 'hye-task'\nFACET task_status\nSINCE 1 week ago \nTIMESERIES" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Stage trends", + "layout": { + "column": 1, + "row": 8, + "width": 6, + "height": 4 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.area" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT uniqueCount(stage_id) \nFROM Log \nWHERE `newrelic.source` = 'api.logs'\nAND service = 'lambdatest' AND `newrelic.source` = 'api.logs' AND `logtype` = 'hye-stage'\nFACET stage_status\nSINCE 1 week ago \nTIMESERIES" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Task status ratio", + "layout": { + "column": 7, + "row": 8, + "width": 6, + "height": 4 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.stacked-bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT percentage(uniqueCount(task_id), WHERE task_status = 'completed') AS 'Completed',\n percentage(uniqueCount(task_id), WHERE task_status = 'failed') AS 'Failed',\n percentage(uniqueCount(task_id), WHERE task_status = 'skipped') AS 'Skipped',\n\t percentage(uniqueCount(task_id), WHERE task_status = 'cancelled') AS 'Cancelled',\n\t percentage(uniqueCount(task_id), WHERE task_status = 'aborted') AS 'Aborted',\n\t percentage(uniqueCount(task_id), WHERE task_status = 'lambda_error') AS 'Lambda error',\n\t percentage(uniqueCount(task_id), WHERE task_status = 'timeout') AS 'Timeout',\n\t percentage(uniqueCount(task_id), WHERE task_status = 'log-available') AS 'Log available'\nFROM Log \nWHERE `newrelic.source` = 'api.logs'\nAND service = 'lambdatest' AND `newrelic.source` = 'api.logs' AND `logtype` = 'hye-task'\nSINCE 1 week ago \nTIMESERIES" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "units": { + "unit": "PERCENTAGE" + } + } + } + ] } ], "variables": [] diff --git a/dashboards/netscaler/netscaler.json b/dashboards/netscaler/netscaler.json new file mode 100644 index 0000000000..205028b6aa --- /dev/null +++ b/dashboards/netscaler/netscaler.json @@ -0,0 +1,137 @@ +{ + "name": "Netscaler", + "description": null, + "pages": [ + { + "name": "Netscaler", + "description": null, + "widgets": [ + { + "title": "", + "layout": { + "column": 1, + "row": 1, + "width": 6, + "height": 2 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.markdown" + }, + "rawConfiguration": { + "text": " ![NetScaler logo](https://www.layer8training.com/wp-content/uploads/2024/05/netscaler-logo-black.png)\n# Dashbaord" + } + }, + { + "title": "Unique Bot Types and their counts", + "layout": { + "column": 7, + "row": 1, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT uniqueCount(bot_type_desc), uniques(bot_type_desc) FROM Bot since 30 days ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Transaction Count", + "layout": { + "column": 1, + "row": 3, + "width": 6, + "height": 2 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT uniqueCount(transaction_id) from Bot since 30 days ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "App names seeing Bot Violations", + "layout": { + "column": 7, + "row": 4, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT uniques(appname) from Bot since 30 days ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Total Attacks", + "layout": { + "column": 1, + "row": 5, + "width": 6, + "height": 2 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(total_attacks) from Bot since 30 days ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + } + ] + } + ], + "variables": [] + } \ No newline at end of file diff --git a/dashboards/netscaler/netscaler01.png b/dashboards/netscaler/netscaler01.png new file mode 100644 index 0000000000..b1f4d97f40 Binary files /dev/null and b/dashboards/netscaler/netscaler01.png differ diff --git a/dashboards/nrm4sap-cockpit/sap_cockpit.json b/dashboards/nrm4sap-cockpit/sap_cockpit.json new file mode 100644 index 0000000000..edfe9e0731 --- /dev/null +++ b/dashboards/nrm4sap-cockpit/sap_cockpit.json @@ -0,0 +1,2728 @@ +{ + "name": "SAP Cockpit", + "description": null, + "pages": [ + { + "name": "Availability", + "description": null, + "widgets": [ + { + "title": "System Availability", + "layout": { + "column": 1, + "row": 1, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT latest(IF (DISPSTATUS = 'SAPControl-GREEN', '🟢', IF (DISPSTATUS = 'SAPControl-GRAY', '⬤', '🔴'))) AS 'STATUS' FROM NR_SAP_INSTANCE_AVAILABILITY WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) AND FEATURES LIKE '%MESSAGESERVER%' FACET SYS_ID SINCE 15 MINUTES AGO " + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Server Instance Summary", + "layout": { + "column": 3, + "row": 1, + "width": 3, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT percentage(count(*), WHERE Status = 'SAPControl-GREEN') AS '% Available', filter(count(*), WHERE Status = 'SAPControl-GREEN') AS 'Available', count(*) AS 'Total' FROM (SELECT latest(DISPSTATUS) AS Status FROM NR_SAP_INSTANCE_AVAILABILITY WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID, INSTANCE LIMIT MAX) FACET SYS_ID SINCE 15 minutes ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "% Available", + "from": 1, + "severity": "success", + "to": 1 + }, + { + "columnName": "% Available", + "from": 0, + "severity": "critical", + "to": 0.99 + } + ] + } + }, + { + "title": "Host Summary", + "layout": { + "column": 6, + "row": 1, + "width": 3, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT percentage(count(*), WHERE Status = 'SAPControl-GREEN') AS '% Available', filter(count(*), WHERE Status = 'SAPControl-GREEN') AS 'Available', count(*) AS 'Total' FROM (SELECT latest(DISPSTATUS) AS Status FROM NR_SAP_INSTANCE_AVAILABILITY WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID, Virtual_Host LIMIT MAX) FACET SYS_ID SINCE 15 minutes ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "% Available", + "from": 1, + "severity": "success", + "to": 1 + }, + { + "columnName": "% Available", + "from": 0, + "severity": "critical", + "to": 0.99 + } + ] + } + }, + { + "title": "HANA DB Availability", + "layout": { + "column": 9, + "row": 1, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT percentage(count(*), WHERE ACTIVE_STATUS = 'YES') AS Available FROM (SELECT latest(ACTIVE_STATUS) AS ACTIVE_STATUS FROM NR_SAP_HDB_SERVICES WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) FACET SYS_ID, SERVICE_NAME) FACET SYS_ID SINCE 15 MINUTES AGO" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Available", + "from": 1, + "severity": "success", + "to": 1 + }, + { + "from": 0, + "severity": "critical", + "to": 0.99 + } + ] + } + }, + { + "title": "DB(Non-Hana) Availability", + "layout": { + "column": 11, + "row": 1, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT latest(NR.SAP.DB.KPI.AVAILABLE) AS Available WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) FACET entity.name SINCE 15 minutes ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Available", + "from": 0, + "severity": "critical", + "to": 99 + }, + { + "columnName": "Available", + "from": 100, + "severity": "success", + "to": 100 + } + ] + } + }, + { + "title": "Server Instance Availability", + "layout": { + "column": 1, + "row": 4, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT latest(IF (DISPSTATUS = 'SAPControl-GREEN', '🟢', IF (DISPSTATUS = 'SAPControl-GRAY', '⬤', '🔴'))) AS 'STATUS' FROM NR_SAP_INSTANCE_AVAILABILITY WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID, INSTANCE SINCE 15 MINUTES AGO LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Host Availability", + "layout": { + "column": 5, + "row": 4, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT latest(IF(DISPSTATUS = 'SAPControl-GREEN', '🟢', IF(DISPSTATUS = 'SAPControl-GRAY', '⬤', '🔴'))) AS 'STATUS' FROM NR_SAP_INSTANCE_AVAILABILITY WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }} )) FACET SYS_ID, Virtual_Host SINCE 15 MINUTES AGO LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Processes Availability", + "layout": { + "column": 9, + "row": 4, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT latest(IF (DISPSTATUS = 'SAPControl-GREEN', '🟢', '🔴')) AS 'STATUS' FROM NR_SAP_INSTANCE_INFORMATION WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID, INSTANCE, DESCRIPTION AS Service SINCE 15 MINUTES AGO LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "HANA Services", + "layout": { + "column": 1, + "row": 7, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT IF (latest(ACTIVE_STATUS) = 'YES','🟢', '🔴') AS 'Available' FROM NR_SAP_HDB_SERVICES WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) FACET SYS_ID, SERVICE_NAME SINCE 15 MINUTES AGO" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "HTTP Destinations", + "layout": { + "column": 5, + "row": 7, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT IF (latest(NR.SAP.HTTP.CHECK) = 1, '🟢', '🔴') AS Available WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) FACET DESTINATION SINCE 20 minutes ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "RFC Destinations", + "layout": { + "column": 9, + "row": 7, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT IF (latest(NR.SAP.RFC.AVAILABILITY) = 1, '🟢', '🔴') AS Available WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) FACET DESTINATION SINCE 20 minutes ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Over All System Available", + "layout": { + "column": 1, + "row": 10, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT filter(count(*), WHERE status = 'SAPControl-GREEN') as Available, count(*) as 'Total', percentage(count(*), WHERE status = 'SAPControl-GREEN') as 'Percent' FROM (SELECT latest(DISPSTATUS) AS status FROM NR_SAP_INSTANCE_AVAILABILITY WHERE FEATURES = 'MESSAGESERVER|ENQUE' FACET SYS_ID) FACET SYS_ID SINCE 15 MINUTES AGO" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Percent", + "from": 0, + "severity": "critical", + "to": 0.95 + }, + { + "columnName": "Percent", + "from": 1, + "severity": "success", + "to": 1 + } + ] + } + } + ] + }, + { + "name": "Performace", + "description": null, + "widgets": [ + { + "title": "Dialog Response Time (seconds)", + "layout": { + "column": 1, + "row": 1, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT latest(NR.SAP.SYSTEM.PROCESS) / 1000 AS 'Response Time' FROM Metric WHERE metricName = 'NR.SAP.SYSTEM.PROCESS' AND TASKTYPE = 'DIALOG' AND KEY_FIGURE = 'Response Time' AND SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID SINCE 1 day ago LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Response Time", + "from": 0, + "severity": "success", + "to": 1000 + }, + { + "columnName": "Response Time", + "from": 1000, + "severity": "warning", + "to": 1500 + }, + { + "columnName": "Response Time", + "from": 1500, + "severity": "critical" + } + ] + } + }, + { + "title": "RFC Response Time (seconds)", + "layout": { + "column": 3, + "row": 1, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT latest(NR.SAP.SYSTEM.PROCESS) / 1000 AS 'Response Time' FROM Metric WHERE metricName = 'NR.SAP.SYSTEM.PROCESS' AND TASKTYPE = 'RFC' AND KEY_FIGURE = 'Response Time' AND SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID SINCE 1 day ago LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Response Time", + "from": 0, + "severity": "success", + "to": 1000 + }, + { + "columnName": "Response Time", + "from": 1000, + "severity": "warning", + "to": 1500 + }, + { + "columnName": "Response Time", + "from": 1500, + "severity": "critical" + } + ] + } + }, + { + "title": "HTTP Response Time (seconds)", + "layout": { + "column": 5, + "row": 1, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT latest(NR.SAP.SYSTEM.PROCESS) / 1000 AS 'Response Time' FROM Metric WHERE metricName = 'NR.SAP.SYSTEM.PROCESS' AND TASKTYPE IN ('HTTP', 'HTTPS') AND KEY_FIGURE = 'Response Time' AND SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID SINCE 1 day ago LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Response Time", + "from": 0, + "severity": "success", + "to": 1000 + }, + { + "columnName": "Response Time", + "from": 1000, + "severity": "warning", + "to": 1500 + }, + { + "columnName": "Response Time", + "from": 1500, + "severity": "critical" + } + ] + } + }, + { + "title": "Update Response Time (seconds)", + "layout": { + "column": 7, + "row": 1, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT average(NR.SAP.SYSTEM.UPDATE.RESPONSE_TIME) / 1000 AS 'Response Time' FROM Metric WHERE INSTANCE = 'TOTAL' AND SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID SINCE 1 day ago LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Response Time", + "from": 0, + "severity": "success", + "to": 1000 + }, + { + "columnName": "Response Time", + "from": 1000, + "severity": "warning", + "to": 1500 + }, + { + "columnName": "Response Time", + "from": 1500, + "severity": "critical" + } + ] + } + }, + { + "title": "OData Service Response Time (ms)", + "layout": { + "column": 9, + "row": 1, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT average(Processing_Time) as 'Response_Time' FROM NR_SAP_ODATA_SERVICE WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID SINCE 1 day ago LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Response_Time", + "from": 0, + "severity": "success", + "to": 20000 + }, + { + "columnName": "Response_Time", + "from": 20000, + "severity": "warning", + "to": 60000 + }, + { + "columnName": "Response_Time", + "from": 600000, + "severity": "critical" + } + ] + } + }, + { + "title": "DB Response Time (ms)", + "layout": { + "column": 11, + "row": 1, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(NR.SAP.SYSTEM.PROCESS) AS 'Response Time' WHERE metricName = 'NR.SAP.SYSTEM.PROCESS' and KEY_FIGURE = 'DB Time' AND SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) SINCE 15 minutes ago FACET SYS_ID" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Response Time", + "from": 0, + "severity": "success", + "to": 3000 + }, + { + "columnName": "Response Time", + "from": 3000, + "severity": "warning", + "to": 4000 + }, + { + "columnName": "Response Time", + "from": 4000, + "severity": "critical" + } + ] + } + }, + { + "title": "Dialog Work Process Available %", + "layout": { + "column": 1, + "row": 4, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT filter(sum(NR.SAP.SYSTEM.WP.INFORMATION), WHERE WP_STATUS = 'Free')/ filter(sum(NR.SAP.SYSTEM.WP.INFORMATION), WHERE WP_STATUS = 'All') * 100 AS '% Availabe' FROM Metric where metricName = 'NR.SAP.SYSTEM.WP.INFORMATION' AND WP_TYPE = 'DIA' AND SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) FACET SYS_ID since 15 minutes ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "% Availabe", + "from": 0, + "severity": "critical", + "to": 10 + }, + { + "columnName": "% Availabe", + "from": 10, + "severity": "warning", + "to": 20 + }, + { + "columnName": "% Availabe", + "from": 20, + "severity": "success", + "to": 100 + } + ] + } + }, + { + "title": "Background Work Process Available %", + "layout": { + "column": 3, + "row": 4, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT filter(sum(NR.SAP.SYSTEM.WP.INFORMATION), WHERE WP_STATUS = 'Free')/ filter(sum(NR.SAP.SYSTEM.WP.INFORMATION), WHERE WP_STATUS = 'All') * 100 AS '% Availabe' FROM Metric where metricName = 'NR.SAP.SYSTEM.WP.INFORMATION' AND WP_TYPE = 'BTC' AND SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) FACET SYS_ID since 15 minutes ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "% Availabe", + "from": 0, + "severity": "critical", + "to": 10 + }, + { + "columnName": "% Availabe", + "from": 10, + "severity": "warning", + "to": 20 + }, + { + "columnName": "% Availabe", + "from": 20, + "severity": "success", + "to": 100 + } + ] + } + }, + { + "title": "Average CPU Usage %", + "layout": { + "column": 5, + "row": 4, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(NR.SAP.SYSTEM.CPU_UTILIZATION) as Avg, max(NR.SAP.SYSTEM.CPU_UTILIZATION) as Max WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) SINCE 15 minutes ago FACET SYS_ID" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Avg", + "from": 95, + "severity": "critical", + "to": 100 + }, + { + "columnName": "Avg", + "from": 0, + "severity": "success", + "to": 70 + }, + { + "columnName": "Max", + "from": 95, + "severity": "warning", + "to": 100 + }, + { + "columnName": "Max", + "from": 0, + "severity": "success", + "to": 90 + }, + { + "columnName": "Max", + "from": 90, + "severity": "warning", + "to": 95 + } + ] + } + }, + { + "title": "Extended Memory Usage %", + "layout": { + "column": 7, + "row": 4, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(`NR.SAP.SYSTEM.MEMORY.EXTENDED_USAGE%`) as Avg, max(`NR.SAP.SYSTEM.MEMORY.EXTENDED_USAGE%`) as Max WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) SINCE 1 day ago FACET SYS_ID" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Avg", + "from": 0, + "severity": "success", + "to": 80 + }, + { + "columnName": "Avg", + "from": 80, + "severity": "warning", + "to": 90 + }, + { + "columnName": "Avg", + "from": 90, + "severity": "critical", + "to": 100 + }, + { + "columnName": "Max", + "from": 0, + "severity": "success", + "to": 90 + }, + { + "columnName": "Max", + "from": 90, + "severity": "warning", + "to": 100 + } + ] + } + }, + { + "title": "Heap Memory Usage %", + "layout": { + "column": 9, + "row": 4, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(`NR.SAP.SYSTEM.MEMORY.HEAP_USAGE%`) as Avg, max(`NR.SAP.SYSTEM.MEMORY.HEAP_USAGE%`) as Max WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) SINCE 1 day ago FACET SYS_ID" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Avg", + "from": 0, + "severity": "success", + "to": 80 + }, + { + "columnName": "Avg", + "from": 80, + "severity": "warning", + "to": 90 + }, + { + "columnName": "Avg", + "from": 90, + "severity": "critical", + "to": 100 + }, + { + "columnName": "Max", + "from": 0, + "severity": "success", + "to": 90 + }, + { + "columnName": "Max", + "from": 90, + "severity": "warning", + "to": 100 + } + ] + } + }, + { + "title": "Queue Entries %", + "layout": { + "column": 11, + "row": 4, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM NR_SAP_QRFC_STATUS SELECT average(numeric(ENTRIES)) as Avg, max(numeric(ENTRIES)) as Max WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) FACET SYS_ID SINCE 15 days ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Avg", + "from": 0, + "severity": "success", + "to": 80 + }, + { + "columnName": "Avg", + "from": 80, + "severity": "warning", + "to": 90 + }, + { + "columnName": "Avg", + "from": 90, + "severity": "critical", + "to": 100 + }, + { + "columnName": "Max", + "from": 0, + "severity": "success", + "to": 90 + }, + { + "columnName": "Max", + "from": 90, + "severity": "warning", + "to": 100 + } + ] + } + }, + { + "title": "Work Processes Running Long", + "layout": { + "column": 1, + "row": 7, + "width": 3, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT filter(count(*), WHERE etime > 300000) AS 'Count' FROM (SELECT latest(numeric(WP_ELTIME)) AS etime FROM NR_SAP_WORK_PROCESS WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) FACET SYS_ID, WP_PID) FACET SYS_ID SINCE 15 minutes ago LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Count", + "from": 0, + "severity": "success", + "to": 1 + }, + { + "columnName": "Count", + "from": 1, + "severity": "warning", + "to": 5 + }, + { + "columnName": "Count", + "from": 5, + "severity": "critical" + } + ] + } + }, + { + "title": "Long holding locks", + "layout": { + "column": 4, + "row": 7, + "width": 3, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) AS 'Count' FROM NR_SAP_LOCK_ENTRIES WHERE timestamp in (SELECT latest(timestamp) FROM NR_SAP_LOCK_ENTRIES WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}))) WHERE `Locking_period(S)` > 60000 AND SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) FACET SYS_ID SINCE 15 minutes ago LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Count", + "from": 0, + "severity": "success", + "to": 1 + }, + { + "columnName": "Count", + "from": 1, + "severity": "warning", + "to": 5 + }, + { + "columnName": "Count", + "from": 5, + "severity": "critical" + }, + { + "columnName": "Count" + } + ] + } + }, + { + "title": "Unique Active User #", + "layout": { + "column": 7, + "row": 7, + "width": 3, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT uniqueCount(User_ID) AS Count FROM NR_SAP_SYSTEM_USER_SESSION WHERE timestamp in (SELECT latest(timestamp) FROM NR_SAP_SYSTEM_USER_SESSION WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) FACET SYS_ID) SINCE 15 minutes ago FACET SYS_ID LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Count", + "from": 0, + "severity": "success", + "to": 100 + }, + { + "columnName": "Count", + "from": 100, + "severity": "warning", + "to": 150 + }, + { + "columnName": "Count", + "from": 150, + "severity": "critical" + } + ] + } + }, + { + "title": "Active User Sessions", + "layout": { + "column": 10, + "row": 7, + "width": 3, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT filter(count(*), WHERE Session_Type = 'GUI') AS 'GUI', filter(count(*), WHERE Session_Type = 'BATCH') AS 'BATCH' FROM NR_SAP_SYSTEM_USER_SESSION WHERE timestamp in (SELECT latest(timestamp) FROM NR_SAP_SYSTEM_USER_SESSION FACET SYS_ID) AND SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) SINCE 15 minutes ago FACET SYS_ID LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "GUI", + "from": 0, + "severity": "success", + "to": 100 + }, + { + "columnName": "GUI", + "from": 100, + "severity": "warning", + "to": 150 + }, + { + "columnName": "GUI", + "from": 150, + "severity": "critical" + }, + { + "columnName": "BATCH", + "from": 0, + "severity": "success", + "to": 100 + }, + { + "columnName": "BATCH", + "from": 100, + "severity": "warning", + "to": 150 + }, + { + "columnName": "BATCH", + "from": 150, + "severity": "critical" + } + ] + } + } + ] + }, + { + "name": "Perfomance Trends", + "description": null, + "widgets": [ + { + "title": "Dialog Response Time", + "layout": { + "column": 1, + "row": 1, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(NR.SAP.SYSTEM.PROCESS) / 1000 as 'RESPONSE TIME' WHERE metricName = 'NR.SAP.SYSTEM.PROCESS' AND TASKTYPE = 'DIALOG' AND KEY_FIGURE = 'Response Time' AND SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) SINCE 1 day ago TIMESERIES AUTO FACET SYS_ID" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true, + "thresholds": [ + { + "from": 2, + "name": "Slow", + "severity": "critical" + } + ] + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "RFC Response Time", + "layout": { + "column": 5, + "row": 1, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(NR.SAP.SYSTEM.PROCESS) / 1000 as 'RESPONSE TIME' WHERE metricName = 'NR.SAP.SYSTEM.PROCESS' AND TASKTYPE = 'RFC' AND KEY_FIGURE = 'Response Time' AND SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) SINCE 1 day ago TIMESERIES AUTO FACET SYS_ID" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true, + "thresholds": [ + { + "from": 1000, + "name": "T1", + "severity": "warning" + } + ] + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "HTTP Response Time", + "layout": { + "column": 9, + "row": 1, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(NR.SAP.SYSTEM.PROCESS) as 'RESPONSE TIME' WHERE metricName = 'NR.SAP.SYSTEM.PROCESS' AND TASKTYPE IN ('HTTP', 'HTTPS') AND KEY_FIGURE = 'Response Time' AND SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) SINCE 1 day ago TIMESERIES AUTO FACET SYS_ID" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true, + "thresholds": [ + { + "from": 3000, + "name": "Critical", + "severity": "critical" + } + ] + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Update Response Time", + "layout": { + "column": 1, + "row": 4, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(NR.SAP.SYSTEM.UPDATE.RESPONSE_TIME) / 1000 as 'RESPONSE TIME' WHERE metricName = 'NR.SAP.SYSTEM.UPDATE.RESPONSE_TIME' AND SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) SINCE 1 day ago TIMESERIES AUTO FACET SYS_ID" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "OData Service Response Time", + "layout": { + "column": 5, + "row": 4, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT average(Processing_Time) as 'Response_Time' FROM NR_SAP_ODATA_SERVICE WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID SINCE 1 day ago TIMESERIES 1 hour LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "DB 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": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(NR.SAP.SYSTEM.PROCESS) AS 'DB Response Time' WHERE metricName = 'NR.SAP.SYSTEM.PROCESS' and KEY_FIGURE = 'DB Time' AND SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) SINCE 1 day ago FACET SYS_ID TIMESERIES AUTO" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Trend of Average CPU Usage %", + "layout": { + "column": 1, + "row": 7, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(NR.SAP.SYSTEM.CPU_UTILIZATION) as CPU WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) SINCE 1 day ago FACET SYS_ID TIMESERIES AUTO" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Trend - Extended Memory Usage %", + "layout": { + "column": 5, + "row": 7, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(`NR.SAP.SYSTEM.MEMORY.EXTENDED_USAGE%`) as Extended WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) SINCE 1 day ago FACET SYS_ID TIMESERIES AUTO" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Trend - Heap Memory Usage %", + "layout": { + "column": 9, + "row": 7, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT average(`NR.SAP.SYSTEM.MEMORY.HEAP_USAGE%`) as Heap WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) SINCE 1 day ago FACET SYS_ID TIMESERIES AUTO" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Trend - Dialog Work Process Available %", + "layout": { + "column": 1, + "row": 10, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT filter(average(NR.SAP.SYSTEM.WP.INFORMATION), WHERE WP_STATUS = 'Free') / filter(average(NR.SAP.SYSTEM.WP.INFORMATION), WHERE WP_STATUS = 'All') * 100 AS '% Availabe' FROM Metric where metricName = 'NR.SAP.SYSTEM.WP.INFORMATION' AND WP_TYPE = 'DIA' AND SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) FACET SYS_ID since 1 day ago TIMESERIES AUTO" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Trend - Dialog Work Process Available %", + "layout": { + "column": 5, + "row": 10, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT filter(average(NR.SAP.SYSTEM.WP.INFORMATION), WHERE WP_STATUS = 'Free') / filter(average(NR.SAP.SYSTEM.WP.INFORMATION), WHERE WP_STATUS = 'All') * 100 AS '% Availabe' FROM Metric where metricName = 'NR.SAP.SYSTEM.WP.INFORMATION' AND WP_TYPE = 'DIA' AND SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) FACET SYS_ID since 1 day ago TIMESERIES AUTO" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Trend - Unique User Count", + "layout": { + "column": 9, + "row": 10, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT uniqueCount(User_ID) AS Count FROM NR_SAP_SYSTEM_USER_SESSION WHERE timestamp in (SELECT latest(timestamp) FROM NR_SAP_SYSTEM_USER_SESSION WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) FACET SYS_ID) SINCE 1 day ago FACET SYS_ID TIMESERIES AUTO LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Trend - Active User Sessions", + "layout": { + "column": 1, + "row": 13, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT filter(count(*), WHERE Session_Type = 'GUI') AS 'GUI', filter(count(*), WHERE Session_Type = 'BATCH') AS 'BATCH' FROM NR_SAP_SYSTEM_USER_SESSION WHERE timestamp in (SELECT latest(timestamp) FROM NR_SAP_SYSTEM_USER_SESSION FACET SYS_ID) AND SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }})) SINCE 15 day ago TIMESERIES AUTO FACET SYS_ID LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Dialog Response Time Stats", + "layout": { + "column": 5, + "row": 13, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT max(NR.SAP.SYSTEM.PROCESS) / 1000 AS 'Max', average(NR.SAP.SYSTEM.PROCESS)/1000 as 'Avg', min(NR.SAP.SYSTEM.PROCESS) / 1000 as 'Min' FROM Metric WHERE metricName = 'NR.SAP.SYSTEM.PROCESS' AND TASKTYPE = 'DIALOG' AND KEY_FIGURE = 'Response Time' AND SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID SINCE 1 day ago LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "alertSeverity": "CRITICAL", + "value": 3 + }, + { + "alertSeverity": "WARNING", + "value": 2 + } + ] + } + } + ] + }, + { + "name": "System Error", + "description": null, + "widgets": [ + { + "title": "Alerts Opened on New Relic", + "layout": { + "column": 1, + "row": 1, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM NrAiIncident SELECT filter(count(*), WHERE tags.type = 'NRQL Query') AS 'Threshold', filter(count(*), WHERE tags.type = 'NRQL Baseline') AS Baseline WHERE event = 'open' AND priority = 'critical' AND tags.sap.system IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET tags.sap.system AS System SINCE 1 day ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Threshold", + "from": 30, + "severity": "critical" + }, + { + "columnName": "Threshold", + "from": 5, + "severity": "warning", + "to": 30 + }, + { + "columnName": "Threshold", + "from": 0, + "severity": "success", + "to": 5 + }, + { + "columnName": "Baseline", + "from": 0, + "severity": "success", + "to": 5 + }, + { + "columnName": "Baseline", + "from": 5, + "severity": "warning", + "to": 30 + }, + { + "columnName": "Baseline", + "from": 30, + "severity": "critical" + } + ] + } + }, + { + "title": "Run Time Error", + "layout": { + "column": 5, + "row": 1, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Log SELECT count(*) AS 'Errors' WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID WHERE CATEGORY = 'ABAP Runtime Error' SINCE 1 day ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Errors", + "from": 30, + "severity": "critical" + } + ] + } + }, + { + "title": "System Error", + "layout": { + "column": 7, + "row": 1, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Log SELECT count(*) AS 'Errors' WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID WHERE CATEGORY = 'ABAP Syslog' SINCE 1 day ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Errors", + "from": 30, + "severity": "critical" + } + ] + } + }, + { + "title": "Application Error", + "layout": { + "column": 9, + "row": 1, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Log SELECT count(*) AS 'Errors' WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID WHERE CATEGORY = 'ABAP Application Log' SINCE 1 day ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Errors", + "from": 30, + "severity": "critical" + }, + { + "columnName": "Errors", + "from": 1, + "severity": "warning", + "to": 30 + }, + { + "columnName": "Errors", + "from": 0, + "severity": "success", + "to": 0 + } + ] + } + }, + { + "title": "Failed Jobs", + "layout": { + "column": 11, + "row": 1, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Log SELECT count(*) AS 'Errors' WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID WHERE CATEGORY = 'ABAP Aborted Jobs' SINCE 1 day ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Errors", + "from": 30, + "severity": "critical" + }, + { + "columnName": "Errors", + "from": 1, + "severity": "warning", + "to": 30 + }, + { + "columnName": "Errors", + "from": 0, + "severity": "success", + "to": 0 + } + ] + } + }, + { + "title": "Work Process Not Available", + "layout": { + "column": 1, + "row": 4, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT filter(count(*), WHERE free < 1) AS Count FROM (SELECT average(NR.SAP.SYSTEM.WP.INFORMATION) AS free FROM Metric WHERE WP_TYPE IN ('BTC', 'DIA') AND WP_STATUS = 'Free' TIMESERIES 5 minutes FACET SYS_ID, INSTANCE, WP_TYPE LIMIT MAX) WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID SINCE 1 day ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Count", + "from": 0, + "severity": "success", + "to": 0 + }, + { + "columnName": "Count", + "from": 1, + "severity": "critical" + } + ] + } + }, + { + "title": "CPU Busy Events", + "layout": { + "column": 3, + "row": 4, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT filter(count(*), WHERE cpu >= 99) AS 'CPU Busy' FROM (SELECT average(NR.SAP.SYSTEM.CPU_UTILIZATION) AS cpu FROM Metric WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) TIMESERIES 5 minutes FACET SYS_ID, INSTANCE LIMIT MAX) FACET SYS_ID SINCE 1 day ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "CPU Busy", + "from": 0, + "severity": "success", + "to": 0 + }, + { + "columnName": "CPU Busy", + "from": 1, + "severity": "critical" + } + ] + } + }, + { + "title": "Not Enough Ext Memory ", + "layout": { + "column": 5, + "row": 4, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT filter(count(*), WHERE MaxUsed > 98) AS Count FROM (FROM Metric SELECT max(NR.SAP.SYSTEM.MEMORY.EXTENDED_USAGE) as 'Extend Memory Usage' WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID, INSTANCE TIMESERIES AUTO LIMIT MAX) FACET SYS_ID SINCE 1 day ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Count", + "from": 0, + "severity": "success", + "to": 0 + }, + { + "columnName": "Count", + "from": 1, + "severity": "critical" + } + ] + } + }, + { + "title": "Not Enough Heap Memory ", + "layout": { + "column": 7, + "row": 4, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT filter(count(*), WHERE MaxUsed > 98) AS Count FROM (FROM Metric SELECT max(NR.SAP.SYSTEM.MEMORY.HEAP_USAGE) as 'HEAP Memory Usage' WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID TIMESERIES AUTO LIMIT MAX) FACET SYS_ID SINCE 1 day ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Count", + "from": 0, + "severity": "success", + "to": 0 + }, + { + "columnName": "Count", + "from": 1, + "severity": "critical" + } + ] + } + }, + { + "title": "File System Full ", + "layout": { + "column": 9, + "row": 4, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT filter(count(*), WHERE MaxUsed = 1) AS Count FROM (FROM Metric SELECT max(NR.SAP.SYSTEM.FILESYSTEM.USAGE) as 'MaxUsed' WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET HOST_NAME, OBJECT, SYS_ID TIMESERIES AUTO LIMIT MAX) FACET SYS_ID SINCE 1 day ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Count", + "from": 0, + "severity": "success", + "to": 0 + }, + { + "columnName": "Count", + "from": 1, + "severity": "warning", + "to": 100 + }, + { + "columnName": "Count", + "from": 100, + "severity": "critical" + } + ] + } + }, + { + "title": "Database Alerts", + "layout": { + "column": 11, + "row": 4, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM NR_SAP_HDB_ALERT SELECT count(*) AS 'DB Alerts' WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID SINCE 1 day ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "DB Alerts", + "from": 1, + "severity": "warning", + "to": 100 + } + ] + } + }, + { + "title": "Audit Errors", + "layout": { + "column": 1, + "row": 7, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Log SELECT count(*) AS 'Errors' WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID WHERE CATEGORY = 'ABAP Audit Log' SINCE 1 day ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Errors", + "from": 30, + "severity": "critical" + } + ] + } + }, + { + "title": "OData Service Error", + "layout": { + "column": 3, + "row": 7, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM NR_SAP_ODATA_SERVICE_ERROR SELECT count(*) AS 'Errors' WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID SINCE 1 day ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Errors", + "from": 10, + "severity": "warning", + "to": 100 + }, + { + "from": 100, + "severity": "critical" + } + ] + } + }, + { + "title": "Web Service Consumer", + "layout": { + "column": 5, + "row": 7, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Log SELECT count(*) AS 'Errors' WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID WHERE CATEGORY = 'Web Service Consumer' SINCE 1 day ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Errors", + "from": 30, + "severity": "critical" + }, + { + "columnName": "Errors", + "from": 1, + "severity": "warning", + "to": 30 + }, + { + "columnName": "Errors", + "from": 0, + "severity": "success", + "to": 0 + } + ] + } + }, + { + "title": "TRFC Error", + "layout": { + "column": 7, + "row": 7, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM NR_SAP_TRFC_STATUS SELECT filter(count(*), WHERE RFC_STATUS = 'SYSFAIL') AS SYSFAIL, filter(count(*), WHERE REC_STATUS = 'CPICERR') AS CPICERR WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID SINCE 1 day ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Errors", + "from": 0, + "severity": "success", + "to": 0 + }, + { + "from": 0, + "severity": "warning", + "to": 1000 + }, + { + "from": 1000, + "severity": "critical" + } + ] + } + }, + { + "title": "QRFC Error", + "layout": { + "column": 9, + "row": 7, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM NR_SAP_QRFC_STATUS SELECT filter(count(*), WHERE RFC_STATUS = 'SYSFAIL') AS SYSFAIL, filter(count(*), WHERE REC_STATUS = 'CPICERR') AS CPICERR WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID SINCE 1 day ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Errors", + "from": 0, + "severity": "success", + "to": 0 + }, + { + "from": 0, + "severity": "warning", + "to": 1000 + }, + { + "from": 1000, + "severity": "critical" + } + ] + } + }, + { + "title": "Oracle DB Locks Wait ", + "layout": { + "column": 11, + "row": 7, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM NR_SAP_ORACLE_DB_LOCK SELECT filter(count(*), WHERE STATUS in ('HOLD', '__WAIT')) AS 'DB Locks' WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID SINCE 24 hours ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "alertSeverity": "CRITICAL", + "value": 1 + } + ] + } + }, + { + "title": "Alerts ", + "layout": { + "column": 1, + "row": 10, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "colors": { + "seriesOverrides": [ + { + "color": "#0010f5", + "seriesName": "Slow processing background job" + }, + { + "seriesName": "Transaction is running slow" + }, + { + "color": "#dcf80d", + "seriesName": "ED3, vhed3ci_ED3_00, DIA" + } + ] + }, + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM NrAiIncident SELECT count(*) WHERE ('' = '' OR ('' != '' AND tags.sap.system = '')) AND event = 'open' AND priority = 'critical' FACET conditionName SINCE 1 day ago TIMESERIES 5 minutes" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Alerts Opened on New Relic", + "layout": { + "column": 7, + "row": 10, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM NrAiIncident SELECT openTime, conditionName, tags.entity.name, description, incidentId, incidentLink, nrqlQuery WHERE ('' = '' OR ('' != '' AND tags.sap.system = '')) AND event = 'open' AND priority = 'critical' SINCE 1 day ago LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "SAP Errors", + "layout": { + "column": 1, + "row": 13, + "width": 12, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "logger.log-table-widget" + }, + "rawConfiguration": { + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Log SELECT SYS_ID, CATEGORY,SUBCATEGORY, message, INSTANCE, HOST_NAME WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) SINCE 1 day ago LIMIT MAX" + } + ] + } + }, + { + "title": "ODATA Service Error", + "layout": { + "column": 1, + "row": 16, + "width": 12, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM NR_SAP_ODATA_SERVICE_ERROR SELECT * SINCE 1 day ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "IDOC Errors", + "layout": { + "column": 1, + "row": 19, + "width": 10, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM NR_SAP_IDOC SELECT DOCNUM, STATUS, STATUS_DESCRIPTION, STATUS_TEXT, DIRECTION, MESSAGE_TYPE, RECEIVER_PARTNER_NUMBER, SENDER_PARTNER_NUMBER, Create_Time_Stamp, Change_Time_Stamp WHERE STATUS_LIGHT = 'RED' SINCE 1 day ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "AIF Error", + "layout": { + "column": 11, + "row": 19, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM NR_SAP_AIF_ERROR SELECT count(*) AS 'Errors' WHERE SYS_ID IN (FROM lookup(NR_LKUP_SYSTEM) SELECT uniques(SYS_ID) WHERE Env IN ( {{ sel_env }}) ) FACET SYS_ID SINCE 1 day ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Errors", + "from": 30, + "severity": "critical" + } + ] + } + } + ] + } + ], + "variables": [ + { + "name": "sel_env", + "items": null, + "defaultValues": [ + { + "value": { + "string": "*" + } + }, + { + "value": { + "string": "PRD" + } + }, + { + "value": { + "string": "QA" + } + }, + { + "value": { + "string": "DEV" + } + } + ], + "nrqlQuery": { + "accountIds": [], + "query": "SELECT uniques(Env) FROM lookup(NR_LKUP_SYSTEM)" + }, + "options": { + "ignoreTimeRange": true + }, + "title": "Environment", + "type": "NRQL", + "isMultiSelection": true, + "replacementStrategy": "STRING" + } + ] +} diff --git a/dashboards/nrm4sap-cockpit/sap_cockpit.png b/dashboards/nrm4sap-cockpit/sap_cockpit.png new file mode 100644 index 0000000000..b6280483a1 Binary files /dev/null and b/dashboards/nrm4sap-cockpit/sap_cockpit.png differ diff --git a/dashboards/nrql-query-performance/nrql-query-performance.json b/dashboards/nrql-query-performance/nrql-query-performance.json new file mode 100644 index 0000000000..1335bf03d3 --- /dev/null +++ b/dashboards/nrql-query-performance/nrql-query-performance.json @@ -0,0 +1,793 @@ +{ + "name": "NRQL Query Performance", + "description": "This dashboard provides resources to better understand your NRQL query performance.", + "pages": [ + { + "name": "Overview", + "description": null, + "widgets": [ + { + "title": "Timeouts by Event Type", + "layout": { + "column": 1, + "row": 1, + "width": 5, + "height": 4 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM NrdbQuery WHERE status = 'timedout' FACET query.eventType limit 100" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Long Running (> 30 secs) By Event Type", + "layout": { + "column": 6, + "row": 1, + "width": 7, + "height": 4 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "dataFormatters": [ + { + "name": "Avg Duration in Secs", + "precision": 2, + "type": "decimal" + } + ], + "facet": { + "showOtherSeries": false + }, + "initialSorting": { + "direction": "desc", + "name": "Avg Duration in Secs" + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM NrdbQuery SELECT average(durationMs) / 1000 as 'Avg Duration in Secs' where durationMs > 30000 and status != 'timedout' FACET query.eventType LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Avg Duration in Secs", + "from": 30, + "severity": "warning", + "to": 39.999 + }, + { + "columnName": "Avg Duration in Secs", + "from": 40, + "severity": "severe", + "to": 49.999 + }, + { + "columnName": "Avg Duration in Secs", + "from": 50, + "severity": "critical", + "to": 80 + } + ] + } + }, + { + "title": "Long Running (> 30 secs) By Event Type & Time Window", + "layout": { + "column": 1, + "row": 5, + "width": 12, + "height": 4 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "dataFormatters": [ + { + "name": "Avg Duration in Secs", + "precision": 2, + "type": "decimal" + } + ], + "facet": { + "showOtherSeries": false + }, + "initialSorting": { + "direction": "desc", + "name": "Avg Duration in Secs" + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM NrdbQuery \n WITH timeWindowMinutes/86400 AS timeWindowDays\nSELECT average(durationMs) / 1000 as 'Avg Duration in Secs' where durationMs > 30000 WHERE status != 'timedout' FACET query.eventType, timeWindowMinutes, timeWindowDays LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Avg Duration in Secs", + "from": 30, + "severity": "warning", + "to": 39.999 + }, + { + "columnName": "Avg Duration in Secs", + "from": 40, + "severity": "severe", + "to": 49.999 + }, + { + "columnName": "Avg Duration in Secs", + "from": 50, + "severity": "critical", + "to": 80 + } + ] + } + }, + { + "title": "Long Running (> 30 secs) Queries Stats", + "layout": { + "column": 1, + "row": 9, + "width": 12, + "height": 5 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "dataFormatters": [ + { + "name": "Avg Duration in Secs", + "precision": 2, + "type": "decimal" + } + ], + "facet": { + "showOtherSeries": false + }, + "initialSorting": { + "direction": "desc", + "name": "Avg Duration in Secs" + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM NrdbQuery SELECT average(durationMs) / 1000 as 'Avg Duration in Secs' where durationMs > 30000 and status != 'timedout' FACET query LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Avg Duration in Secs", + "from": 30, + "severity": "warning", + "to": 39.999 + }, + { + "columnName": "Avg Duration in Secs", + "from": 40, + "severity": "severe", + "to": 49.999 + }, + { + "columnName": "Avg Duration in Secs", + "from": 50, + "severity": "critical", + "to": 80 + } + ] + } + }, + { + "title": "", + "layout": { + "column": 1, + "row": 14, + "width": 2, + "height": 5 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.markdown" + }, + "rawConfiguration": { + "text": "# Reference\n## Source Types:\n- apm: Application performance monitoring\n- dashboard: Dashboards displayed on the New Relic platform\n- Distributed tracing: Distributed tracing\n- nerdgraph: NerdGraph, our GraphQL API\n- New Relic user interface: A New Relic curated UI\n- query-api: Insights query API\n- query-builder: Query builder\n [more](https://docs.newrelic.com/attribute-dictionary/?event=NrdbQuery&attribute=source.name)\n---\n### Data Types —[data types](https://docs.newrelic.com/attribute-dictionary/).\nlet me know if you have question: srohatgi@newrelic.com" + } + }, + { + "title": "Queries That Timed Out Stats", + "layout": { + "column": 3, + "row": 14, + "width": 10, + "height": 5 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM NrdbQuery SELECT count(*) where status = 'timedout' FACET nr.source, query LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Successful Execuations", + "layout": { + "column": 1, + "row": 19, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM NrdbQuery SELECT ((count(query) - filter(count(query), WHERE status !='successful' AND status !='error')) / count(query)) * 100 AS '% Successful' FACET cases(WHERE query LIKE '%bytecountestimate()%' AS 'bytecountestimate()', WHERE query NOT LIKE '%bytecountestimate()%' AS 'Normal') TIMESERIES 30 minutes EXTRAPOLATE " + } + ], + "nullValues": { + "nullValue": "remove" + }, + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": false + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Timedout", + "layout": { + "column": 7, + "row": 19, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT filter(count(query), WHERE query LIKE '%bytecountestimate()%') AS bytecountestimate, filter(count(query), WHERE query NOT LIKE '%bytecountestimate()%' ) as 'Normal' FROM NrdbQuery WHERE status = 'timedout' TIMESERIES 30 minutes FACET status " + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Errors", + "layout": { + "column": 1, + "row": 22, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.stacked-bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT filter(count(query), WHERE query LIKE '%bytecountestimate()%') AS bytecountestimate, filter(count(query), WHERE query NOT LIKE '%bytecountestimate()%' ) as 'Normal' FROM NrdbQuery WHERE status = 'error' TIMESERIES 30 minutes FACET status " + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "NRDB query API requests per minute", + "layout": { + "column": 7, + "row": 22, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM Metric SELECT sum(newrelic.resourceConsumption.currentValue) AS 'Usage' WHERE limitName = 'NRDB query API requests per minute' TIMESERIES AUTO " + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + } + ] + }, + { + "name": "Detail Stats", + "description": null, + "widgets": [ + { + "title": "Log Query Performance MoM (Time Window >= 1 day)", + "layout": { + "column": 1, + "row": 1, + "width": 6, + "height": 5 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT FILTER(COUNT(*), WHERE timeWindowMinutes >= 1440 AND query.eventType LIKE '%') AS queries, FILTER(COUNT(*), WHERE status = 'timedout' AND timeWindowMinutes >= 1440 AND query.eventType LIKE '%') AS query_timedout, FILTER(COUNT(*), WHERE status = 'error' AND timeWindowMinutes >= 1440 AND query.eventType LIKE '%') AS query_error, FILTER(MEDIAN(durationMs) / 1000, WHERE timeWindowMinutes >= 1440 AND query.eventType LIKE '%') AS median_duration_sec, FILTER(MEDIAN(timeWindowMinutes) / 60, WHERE timeWindowMinutes >= 1440 AND query.eventType LIKE '%') AS median_window_hours, FILTER(MEDIAN(inspectedCount), WHERE timeWindowMinutes >= 1440 AND query.eventType LIKE '%') AS inspectedCounts, FILTER(MEDIAN((inspectedCount / 1000000) / (durationMs / 1000)), WHERE timeWindowMinutes >= 1440 AND query.eventType LIKE '%') AS meps FROM NrdbQuery LIMIT MAX since 1 month ago compare with 1 month ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Log Query Performance MoM (Time Window < 1 day)", + "layout": { + "column": 7, + "row": 1, + "width": 6, + "height": 5 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT FILTER(COUNT(*), WHERE timeWindowMinutes < 1440 AND query.eventType LIKE '%') AS queries, FILTER(COUNT(*), WHERE status = 'timedout' AND timeWindowMinutes < 1440 AND query.eventType LIKE '%') AS query_timedout, FILTER(COUNT(*), WHERE status = 'error' AND timeWindowMinutes < 1440 AND query.eventType LIKE '%') AS query_error, FILTER(MEDIAN(durationMs) / 1000, WHERE timeWindowMinutes < 1440 AND query.eventType LIKE '%') AS median_duration_sec, FILTER(MEDIAN(timeWindowMinutes) / 60, WHERE timeWindowMinutes < 1440 AND query.eventType LIKE '%') AS median_window_hours, FILTER(MEDIAN(inspectedCount), WHERE timeWindowMinutes < 1440 AND query.eventType LIKE '%') AS inspectedCounts, FILTER(MEDIAN((inspectedCount / 1000000) / (durationMs / 1000)), WHERE timeWindowMinutes < 1440 AND query.eventType LIKE '%') AS meps FROM NrdbQuery LIMIT MAX since 1 month ago compare with 1 month ago UNTIL now" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Timedout Queries (TimeWindow >= 1 day) Past 7 Days", + "layout": { + "column": 1, + "row": 6, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.stacked-bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM NrdbQuery WHERE status = 'timedout' AND timeWindowMinutes >= 1440 TIMESERIES auto FACET productCapability since 7 days ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Timedout Queries (TimeWindow < 1 day) Past 7 Days", + "layout": { + "column": 7, + "row": 6, + "width": 6, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.stacked-bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) FROM NrdbQuery WHERE status = 'timedout' AND timeWindowMinutes < 1440 TIMESERIES auto FACET productCapability since 7 days ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Long Running (> 10 secs) Log Queries Stats", + "layout": { + "column": 1, + "row": 9, + "width": 12, + "height": 5 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "dataFormatters": [ + { + "name": "Avg Duration in Secs", + "precision": 2, + "type": "decimal" + } + ], + "facet": { + "showOtherSeries": false + }, + "initialSorting": { + "direction": "desc", + "name": "Executions" + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM NrdbQuery SELECT average(durationMs) / 1000 as 'Avg Duration in Secs', average(inspectedCount) as 'Inspected Count', count(*) as 'Executions', average(timeWindowMinutes)/60/24 as 'Time Window (days)' where durationMs > 10000 and status != 'timedout' FACET query LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": [ + { + "columnName": "Avg Duration in Secs", + "from": 20, + "severity": "warning", + "to": 40 + }, + { + "columnName": "Avg Duration in Secs", + "from": 40, + "severity": "severe", + "to": 70 + }, + { + "columnName": "Avg Duration in Secs", + "from": 70, + "severity": "critical", + "to": 60000 + } + ] + } + }, + { + "title": "", + "layout": { + "column": 1, + "row": 14, + "width": 2, + "height": 5 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.markdown" + }, + "rawConfiguration": { + "text": "# Reference\n## Source Types:\n- apm: Application performance monitoring\n- dashboard: Dashboards displayed on the New Relic platform\n- Distributed tracing: Distributed tracing\n- nerdgraph: NerdGraph, our GraphQL API\n- New Relic user interface: A New Relic curated UI\n- query-api: Insights query API\n- query-builder: Query builder\n [more](https://docs.newrelic.com/attribute-dictionary/?event=NrdbQuery&attribute=source.name)\n---\n### Data Types —[data types](https://docs.newrelic.com/attribute-dictionary/).\nlet me know if you have question: srohatgi@newrelic.com" + } + }, + { + "title": "Queries That Timed Out Stats", + "layout": { + "column": 3, + "row": 14, + "width": 10, + "height": 5 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.bar" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM NrdbQuery SELECT count(*) where status = 'timedout' FACET nr.source, query LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Users with Slow Queries [Duration 20+ seconds & Time window 1+ days]", + "layout": { + "column": 1, + "row": 19, + "width": 12, + "height": 8 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.pie" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM NrdbQuery SELECT average(timeWindowMinutes)/60/24 as 'Time Window (days)' where durationMs > 20000 and status != 'timedout' and query LIKE '%from log%' and timeWindowMinutes > 1440 FACET user LIMIT 10" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + } + ] + }, + { + "name": "Scanned Events", + "description": null, + "widgets": [ + { + "title": "Scanned Events (estimate) By Query and Source URL", + "layout": { + "column": 1, + "row": 1, + "width": 12, + "height": 8 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "dataFormatters": [ + { + "name": "Duration in Secs", + "precision": 2, + "type": "decimal" + }, + { + "name": "Events Scanned", + "type": "humanized" + } + ], + "facet": { + "showOtherSeries": true + }, + "initialSorting": { + "direction": "desc", + "name": "Events Scanned" + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM NrComputeUsage SELECT sum((usage)*1.21*1000000000) as 'estimated avg. scanned events' facet dimension_productCapability, dimension_sourceUrl, dimension_query where (usage > 1.21) limit MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + } + ] + }, + { + "name": "Dashboard Usage (unsucsessful)", + "description": null, + "widgets": [ + { + "title": "Impacted Dashboards", + "layout": { + "column": 1, + "row": 1, + "width": 12, + "height": 6 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM NrdbQuery SELECT count(*) WHERE source.dashboardId IS NOT NULL and status != 'successful' FACET status, source.url, source.dashboardId, source.name LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Impacted Dashboard Users", + "layout": { + "column": 1, + "row": 7, + "width": 12, + "height": 6 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM NrdbQuery SELECT count(*) WHERE source.dashboardId IS NOT NULL and status != 'successful' FACET user, status LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Impacted Dashboard Queries (By User)", + "layout": { + "column": 1, + "row": 13, + "width": 12, + "height": 6 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "FROM NrdbQuery SELECT count(*) WHERE source.dashboardId IS NOT NULL and status != 'successful' FACET user, status, source.url, source.dashboardId, source.name, query, query.eventType LIMIT MAX" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + } + ] + } + ], + "variables": [] +} diff --git a/dashboards/nrql-query-performance/nrql-query-performance.png b/dashboards/nrql-query-performance/nrql-query-performance.png new file mode 100644 index 0000000000..1d94bdc886 Binary files /dev/null and b/dashboards/nrql-query-performance/nrql-query-performance.png differ diff --git a/dashboards/ocsf/ocsf.json b/dashboards/ocsf/ocsf.json new file mode 100644 index 0000000000..125a776656 --- /dev/null +++ b/dashboards/ocsf/ocsf.json @@ -0,0 +1,671 @@ +{ + "name": "OCSF", + "description": null, + "pages": [ + { + "name": "Security Findings", + "description": null, + "widgets": [ + { + "title": "", + "layout": { + "column": 1, + "row": 1, + "width": 12, + "height": 1 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.markdown" + }, + "rawConfiguration": { + "text": "# Security Findings" + } + }, + { + "title": "OCSF Security Findings", + "layout": { + "column": 1, + "row": 2, + "width": 2, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) as SecurityFindings from ocsfSecurityFinding" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Findings over time", + "layout": { + "column": 3, + "row": 2, + "width": 10, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.area" + }, + "rawConfiguration": { + "colors": { + "seriesOverrides": [ + { + "color": "#1f11df" + } + ] + }, + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count('Finding/Uid') as findings from ocsfSecurityFinding TIMESERIES 1 minute" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "units": { + "unit": "COUNT" + } + } + }, + { + "title": "", + "layout": { + "column": 1, + "row": 5, + "width": 6, + "height": 1 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.markdown" + }, + "rawConfiguration": { + "text": "# Security Risks" + } + }, + { + "title": "", + "layout": { + "column": 7, + "row": 5, + "width": 6, + "height": 1 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.markdown" + }, + "rawConfiguration": { + "text": "# Affected Regions" + } + }, + { + "title": "Critical Risk", + "layout": { + "column": 1, + "row": 6, + "width": 1, + "height": 1 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) as CriticalCount from ocsfSecurityFinding WHERE risk_level='Critical'" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "", + "layout": { + "column": 2, + "row": 6, + "width": 5, + "height": 4 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.pie" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": true + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) as 'RISK TYPE' from ocsfSecurityFinding facet risk_level" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Number of Critical Vulnerabilities by Product Name", + "layout": { + "column": 7, + "row": 6, + "width": 6, + "height": 4 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*)\nFROM ocsfSecurityFinding\nFACET timestamp, severity, awsRegion, metadata.product.name as ProductName " + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "High Risk", + "layout": { + "column": 1, + "row": 7, + "width": 1, + "height": 1 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) as HighRisk from ocsfSecurityFinding WHERE risk_level='High'\n" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Medium Risk", + "layout": { + "column": 1, + "row": 8, + "width": 1, + "height": 1 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) as MediumRisk from ocsfSecurityFinding WHERE risk_level='Medium'\n" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Low Risk", + "layout": { + "column": 1, + "row": 9, + "width": 1, + "height": 1 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) as LowRisk from ocsfSecurityFinding WHERE risk_level='Low'" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Average Risk Score", + "layout": { + "column": 1, + "row": 10, + "width": 6, + "height": 4 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT average(`risk_score`)\nFROM ocsfSecurityFinding\nTIMESERIES 1 hour" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Finding Details", + "layout": { + "column": 7, + "row": 10, + "width": 6, + "height": 4 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT timestamp, finding.title as 'Finding Title', entityName, status, severity, impact_score as 'Impract Score(0-100)'\nFROM ocsfSecurityFinding" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + } + ] + }, + { + "name": "Data Security Findings", + "description": null, + "widgets": [ + { + "title": "", + "layout": { + "column": 1, + "row": 1, + "width": 12, + "height": 1 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.markdown" + }, + "rawConfiguration": { + "text": "# Data Security Findings" + } + }, + { + "title": "Data Security Findings", + "layout": { + "column": 1, + "row": 2, + "width": 4, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) as DataSecurityFindings from ocsfDataSecurityFinding" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Data Security Findings OverTime", + "layout": { + "column": 5, + "row": 2, + "width": 8, + "height": 3 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.line" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count('finding_info.uid') as findings from ocsfDataSecurityFinding TIMESERIES 1 hour" + } + ], + "platformOptions": { + "ignoreTimeRange": false + }, + "thresholds": { + "isLabelVisible": true + }, + "yAxisLeft": { + "zero": true + }, + "yAxisRight": { + "zero": true + } + } + }, + { + "title": "Data Security Risks", + "layout": { + "column": 1, + "row": 5, + "width": 6, + "height": 1 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.markdown" + }, + "rawConfiguration": { + "text": "# Security Risks" + } + }, + { + "title": "Affected Region - Data Security", + "layout": { + "column": 7, + "row": 5, + "width": 6, + "height": 1 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.markdown" + }, + "rawConfiguration": { + "text": "# Affected Regions" + } + }, + { + "title": "Critical Data Security Finding Count", + "layout": { + "column": 1, + "row": 6, + "width": 1, + "height": 1 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) as CriticalRisk from ocsfDataSecurityFinding WHERE risk_level='Critical'" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Data Security Findings by Risk Type", + "layout": { + "column": 2, + "row": 6, + "width": 5, + "height": 4 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.pie" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": true + }, + "legend": { + "enabled": true + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) as 'RISK TYPE' from ocsfDataSecurityFinding facet risk_level" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Data Security FIndings Table", + "layout": { + "column": 7, + "row": 6, + "width": 6, + "height": 4 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*)\nFROM ocsfDataSecurityFinding\nSINCE 7 days ago\nFACET timestamp, severity, awsRegion, metadata.product.name as ProductName " + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "High Risk Data Security FIndings", + "layout": { + "column": 1, + "row": 7, + "width": 1, + "height": 1 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) as HighRisk from ocsfDataSecurityFinding WHERE risk_level='High'\nsince 6 days ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Medium Data Security Findings", + "layout": { + "column": 1, + "row": 8, + "width": 1, + "height": 1 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) as MediumRisk from ocsfDataSecurityFinding WHERE risk_level='Medium'\nsince 6 days ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Low Data Security Findings", + "layout": { + "column": 1, + "row": 9, + "width": 1, + "height": 1 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.billboard" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT count(*) as LowRisk from ocsfDataSecurityFinding WHERE risk_level='Low'" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + }, + { + "title": "Data Security Findings Detail", + "layout": { + "column": 1, + "row": 10, + "width": 12, + "height": 4 + }, + "linkedEntityGuids": null, + "visualization": { + "id": "viz.table" + }, + "rawConfiguration": { + "facet": { + "showOtherSeries": false + }, + "nrqlQueries": [ + { + "accountIds": [], + "query": "SELECT timestamp, finding_info.title as 'Finding Title', entityName, status, severity, impact_score as 'Impract Score(0-100)'\nFROM ocsfDataSecurityFinding\nSINCE 7 days ago" + } + ], + "platformOptions": { + "ignoreTimeRange": false + } + } + } + ] + } + ], + "variables": [] +} \ No newline at end of file diff --git a/dashboards/ocsf/ocsf01.png b/dashboards/ocsf/ocsf01.png new file mode 100644 index 0000000000..ee2366219e Binary files /dev/null and b/dashboards/ocsf/ocsf01.png differ diff --git a/dashboards/ocsf/ocsf02.png b/dashboards/ocsf/ocsf02.png new file mode 100644 index 0000000000..6d242e3954 Binary files /dev/null and b/dashboards/ocsf/ocsf02.png differ diff --git a/dashboards/ocsf/ocsf03.png b/dashboards/ocsf/ocsf03.png new file mode 100644 index 0000000000..1b845d6ebf Binary files /dev/null and b/dashboards/ocsf/ocsf03.png differ diff --git a/dashboards/ocsf/ocsf04.png b/dashboards/ocsf/ocsf04.png new file mode 100644 index 0000000000..dfc04a0f91 Binary files /dev/null and b/dashboards/ocsf/ocsf04.png differ diff --git a/dashboards/temporal-cloud/temporal-cloud.json b/dashboards/temporal-cloud/temporal-cloud.json index af5352c627..7bc4500cb2 100644 --- a/dashboards/temporal-cloud/temporal-cloud.json +++ b/dashboards/temporal-cloud/temporal-cloud.json @@ -718,5 +718,28 @@ ] } ], - "variables": [] + "variables": [ + { + "name": "namespace", + "items": null, + "defaultValues": [ + { + "value": { + "string": "*" + } + } + ], + "nrqlQuery": { + "accountIds": [], + "query": "SELECT uniques(`data.result-metric-temporal_namespace`) FROM temporalCloudServiceLatencyCount SINCE 6 weeks ago" + }, + "options": { + "ignoreTimeRange": true + }, + "title": "Namespace", + "type": "NRQL", + "isMultiSelection": true, + "replacementStrategy": "STRING" + } + ] } \ No newline at end of file diff --git a/data-sources/aerospike/config.yml b/data-sources/aerospike/config.yml index ae4f8f7eb6..6d8415d564 100644 --- a/data-sources/aerospike/config.yml +++ b/data-sources/aerospike/config.yml @@ -4,8 +4,12 @@ description: | Instrument and monitor your Aerospike with the New Relic infrastructure agent. Analyze your performance data using our pre-built dashboards and alert conditions. install: primary: - link: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/aerospike-integration/ + nerdlet: + nerdletId: marketplace.install-data-source + nerdletState: + dataSourceId: aerospike + frameworkConfigId: aerospike + requiresAccount: false icon: logo.png keywords: diff --git a/data-sources/apache-traffic-server/config.yml b/data-sources/apache-traffic-server/config.yml index 7b25269a6c..27826f028c 100644 --- a/data-sources/apache-traffic-server/config.yml +++ b/data-sources/apache-traffic-server/config.yml @@ -5,8 +5,12 @@ description: | icon: logo.png install: primary: - link: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/apache-traffic-server-monitoring-integration/ + nerdlet: + nerdletId: marketplace.install-data-source + nerdletState: + dataSourceId: apache-traffic-server + frameworkConfigId: apache-traffic-server + requiresAccount: false keywords: - apache-traffic-server - apache diff --git a/data-sources/bitmovin/config.yml b/data-sources/bitmovin/config.yml new file mode 100644 index 0000000000..161979876a --- /dev/null +++ b/data-sources/bitmovin/config.yml @@ -0,0 +1,21 @@ +id: bitmovin-video +displayName: Bitmovin +description: | + Bitmovin empowers businesses to expand their viewer reach and stream video globally with unmatched reliability, scalability, and the highest quality across the broadest range of devices. +icon: logo.svg +install: + primary: + link: + url: https://github.com/newrelic/newrelic-bitmovin-analytics +keywords: + - bitmovin + - video quality + - video experience + - quality of experience + - video streaming + - video metrics + - featured + - newrelic partner + - NR1_addData +categoryTerms: + - newrelic partner diff --git a/data-sources/bitmovin/logo.svg b/data-sources/bitmovin/logo.svg new file mode 100644 index 0000000000..64d8424410 --- /dev/null +++ b/data-sources/bitmovin/logo.svg @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/data-sources/cacti/config.yml b/data-sources/cacti/config.yml index 8e0f4adae5..2b984b5902 100644 --- a/data-sources/cacti/config.yml +++ b/data-sources/cacti/config.yml @@ -5,8 +5,12 @@ description: | icon: logo.png install: primary: - link: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/cacti-integration/ + nerdlet: + nerdletId: marketplace.install-data-source + nerdletState: + dataSourceId: cacti + frameworkConfigId: cacti + requiresAccount: false keywords: - Cacti - logs \ No newline at end of file diff --git a/data-sources/catchpoint-quickstart/config.yml b/data-sources/catchpoint-quickstart/config.yml index 6a1e1a8caa..449fdfb351 100644 --- a/data-sources/catchpoint-quickstart/config.yml +++ b/data-sources/catchpoint-quickstart/config.yml @@ -1,6 +1,6 @@ id: catchpoint-quickstart displayName: Catchpoint -description: This quickstart uses Catchpoint Test Data Webhook to send data to the New Relic Platform, this is accomplished by using New Relic’s Metrics API. You can visualize Catchpoint's digital experience data with New Relic’s Application Performance Monitoring (APM) data together. +description: This quickstart uses Catchpoint Test Data Webhook to send data to the New Relic Platform, this is accomplished by using New Relic’s Metrics API. install: primary: link: diff --git a/data-sources/confluent-cloud/config.yml b/data-sources/confluent-cloud/config.yml deleted file mode 100644 index e67c3b91fa..0000000000 --- a/data-sources/confluent-cloud/config.yml +++ /dev/null @@ -1,22 +0,0 @@ -id: confluent-cloud -displayName: Confluent Cloud -description: Observability for Confluent Cloud's fully managed service for Apache Kafka delivered using an OpenTelemetry Collector. -icon: logo.png -install: - primary: - link: - url: https://github.com/newrelic/newrelic-opentelemetry-examples/tree/main/other-examples/collector/confluentcloud -keywords: - - Confluent - - Confluent Cloud - - Metrics - - OTel - - OpenTelemetry - - open telemetry - - OTelCol - - OpenTelemetry Collector - - open telemetry collector - - Collector - - Kafka -categoryTerms: - - infrastructure diff --git a/data-sources/confluent-cloud/logo.png b/data-sources/confluent-cloud/logo.png deleted file mode 100644 index 92ce822d5d..0000000000 Binary files a/data-sources/confluent-cloud/logo.png and /dev/null differ diff --git a/data-sources/databricks/config.yml b/data-sources/databricks/config.yml index 0280273bd0..ab70d2bbc8 100644 --- a/data-sources/databricks/config.yml +++ b/data-sources/databricks/config.yml @@ -1,14 +1,12 @@ id: databricks displayName: Databricks Integration - description: | - Databricks is an orchestration platform for Apache Spark. Instantly monitor Databricks Spark applications with our New Relic Spark integration quickstart. Our integration provides a script run in a notebook to generate an installation script, which you can attach to a cluster and populate Spark metrics to New relic Insights events. Easily track the health of your Databricks clusters, fine-tune your Spark jobs for peak performance, and troubleshoot problems with this quickstart. + This integration collects Spark telemetry, Workflow telemetry, and Cost and Billing information from Databricks. icon: logo.png install: primary: link: - url: https://github.com/newrelic-experimental/nri-spark#databricks-init-script-creator-notebook - + url: https://github.com/newrelic-experimental/newrelic-databricks-integration keywords: - nrlabs - nrlabs-data diff --git a/data-sources/datazoom/config.yml b/data-sources/datazoom/config.yml index 26960f7064..073da21330 100644 --- a/data-sources/datazoom/config.yml +++ b/data-sources/datazoom/config.yml @@ -1,7 +1,7 @@ id: datazoom displayName: Datazoom description: | - The Datazoom quickstart provides a fast and easy launching point into video metrics built on top of New Relic One dashboards, allowing you to gain insights about your viewers, content, ads and your platform's performance. Customize the dashboard to use only the metrics that fit your goals and easily edit metric calculations and tailor them to your needs. + The Datazoom quickstart provides a fast and easy launching point into video metrics built on top of New Relic One dashboards, allowing you to gain insights about your viewers, content, ads and your platform's performance. icon: logo.png install: primary: diff --git a/data-sources/dbt-cloud/config.yml b/data-sources/dbt-cloud/config.yml index c7221b5673..475f67c415 100644 --- a/data-sources/dbt-cloud/config.yml +++ b/data-sources/dbt-cloud/config.yml @@ -1,5 +1,5 @@ -id: dbt-cloud -displayName: dbt Cloud +id: dbt-cloud +displayName: dbt Cloud description: | Integrates dbt Cloud with New Relic using an Airflow DAG. Our dashboard and alerts help you find issues with dbt Cloud runs and resources. icon: logo.png @@ -8,17 +8,9 @@ install: nerdlet: nerdletId: marketplace.install-data-source nerdletState: - dataSourceId: dbt-cloud - frameworkConfigId: dbt-cloud + dataSourceId: dbt-cloud + frameworkConfigId: dbt-cloud requiresAccount: false keywords: - dbt cloud - dbt - -documentation: - - name: Github Repository - description: | - Github repository with the Airflow DAG and related documentation. - url: >- - https://github.com/newrelic-experimental/newrelic-dbt-cloud-integration/ - diff --git a/data-sources/envoy/config.yml b/data-sources/envoy/config.yml index b55767a321..06e545d061 100644 --- a/data-sources/envoy/config.yml +++ b/data-sources/envoy/config.yml @@ -5,8 +5,12 @@ description: | icon: logo.png install: primary: - link: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/envoy-integration + nerdlet: + nerdletId: marketplace.install-data-source + nerdletState: + dataSourceId: envoy + frameworkConfigId: envoy + requiresAccount: false keywords: - envoy - envoy proxy diff --git a/data-sources/fastly/config.yml b/data-sources/fastly/config.yml index d32ede9cbe..e58e4d38a6 100644 --- a/data-sources/fastly/config.yml +++ b/data-sources/fastly/config.yml @@ -1,9 +1,7 @@ id: fastly displayName: Fastly CDN description: | - Fastly helps people stay better connected with the things they love. Fastly's edge cloud platform enables customers to create great digital experiences quickly, securely, and reliably by processing, serving, and securing our customers' applications as close to their end-users as possible — at the edge of the internet. Fastly's platform is designed to take advantage of the modern internet, to be programmable, and to support agile software development with unmatched visibility and minimal latency, empowering developers to innovate with both performance and security. Fastly's customers include many of the world's most prominent companies, including Pinterest, The New York Times, and GitHub. - - For more information or support, please go to https://support.fastly.com/ + Fastly's edge cloud platform enables customers to create great digital experiences quickly, securely, and reliably by processing, serving, and securing our customers' applications as close to their end-users as possible. icon: logo.png install: primary: diff --git a/data-sources/flutter-android/config.yml b/data-sources/flutter-android/config.yml index 378648bb10..d0116a4387 100644 --- a/data-sources/flutter-android/config.yml +++ b/data-sources/flutter-android/config.yml @@ -9,10 +9,11 @@ install: nerdletId: marketplace.install-data-source nerdletState: dataSourceId: flutter-android - frameworkConfigId: flutter + frameworkConfigId: flutter-android requiresAccount: false keywords: - flutter - flutter android application - android agent - - flutter agent \ No newline at end of file + - flutter agent + - android \ No newline at end of file diff --git a/data-sources/flutter-ios/config.yml b/data-sources/flutter-ios/config.yml index af7039dbb6..cf5b333591 100644 --- a/data-sources/flutter-ios/config.yml +++ b/data-sources/flutter-ios/config.yml @@ -9,10 +9,11 @@ install: nerdletId: marketplace.install-data-source nerdletState: dataSourceId: flutter-ios - frameworkConfigId: flutter + frameworkConfigId: flutter-ios requiresAccount: false keywords: - flutter - flutter ios application - ios agent - - flutter agent \ No newline at end of file + - flutter agent + - ios \ No newline at end of file diff --git a/data-sources/gcp-pubsub/config.yml b/data-sources/gcp-pubsub/config.yml index 4f5e6660a3..6f7f84cb4a 100644 --- a/data-sources/gcp-pubsub/config.yml +++ b/data-sources/gcp-pubsub/config.yml @@ -2,7 +2,6 @@ id: gcp-pubsub displayName: Google Cloud Pub/Sub Java Agent Extension description: | Java agent extension to monitor Google Cloud Pub/Sub with New Relic. Once installed, the instrumentation will monitor both the publish and the subscribe of messages sent via the PubSub framework. - In addition, the instrumentation will take care of distributed tracing so that the publish will provide the distributed tracing headers on the message and the subscribe will read the headers and process them appropriately. install: primary: link: diff --git a/data-sources/jfrog-platform-cloud/config.yml b/data-sources/jfrog-platform-cloud/config.yml new file mode 100644 index 0000000000..cc66c57f7c --- /dev/null +++ b/data-sources/jfrog-platform-cloud/config.yml @@ -0,0 +1,8 @@ +id: jfrog-platform-cloud +displayName: JFrog Platform Cloud +description: Observe JFrog Platform Cloud and gain insights using New Relic Observability platform +install: + primary: + link: + url: https://jfrog.com/help/r/jfrog-hosting-models-documentation/jfrog-cloud-log-streaming +icon: icon.svg diff --git a/data-sources/jfrog-platform-cloud/icon.svg b/data-sources/jfrog-platform-cloud/icon.svg new file mode 100644 index 0000000000..3dd38ec59a --- /dev/null +++ b/data-sources/jfrog-platform-cloud/icon.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + diff --git a/data-sources/kong/config.yml b/data-sources/kong/config.yml new file mode 100644 index 0000000000..525746a9d9 --- /dev/null +++ b/data-sources/kong/config.yml @@ -0,0 +1,18 @@ +id: kong-gateway-logs +displayName: Kong Gateway Logs +description: | + Collect Kong Gateway logs to New Relic to monitor API gateway performance, health, security, and usage. +icon: logo.svg +install: + primary: + link: + url: https://docs.newrelic.com/docs/logs/forward-logs/kong-gateway/ +keywords: + - logs + - logging + - kong + - gateway + - newrelic partner +categoryTerms: + - newrelic partner + - network diff --git a/data-sources/kong/logo.svg b/data-sources/kong/logo.svg new file mode 100644 index 0000000000..0092c89433 --- /dev/null +++ b/data-sources/kong/logo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data-sources/kubernetes-opentelemetry/config.yml b/data-sources/kubernetes-opentelemetry/config.yml new file mode 100644 index 0000000000..371748f75a --- /dev/null +++ b/data-sources/kubernetes-opentelemetry/config.yml @@ -0,0 +1,9 @@ +id: kubernetes-opentelemetry +displayName: Kubernetes (OpenTelemetry) +description: | + Manage telemetry data coming into New Relic. +install: + primary: + link: + url: https://docs.newrelic.com/docs/kubernetes-pixie/kubernetes-integration/installation/k8s-otel/#install +icon: logo.svg diff --git a/data-sources/kubernetes-opentelemetry/logo.svg b/data-sources/kubernetes-opentelemetry/logo.svg new file mode 100644 index 0000000000..e33c0ab527 --- /dev/null +++ b/data-sources/kubernetes-opentelemetry/logo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/data-sources/mongodb-prometheus-integration-docs/config.yml b/data-sources/mongodb-prometheus-integration-docs/config.yml index 3e1cb8e478..4e8ccc8216 100644 --- a/data-sources/mongodb-prometheus-integration-docs/config.yml +++ b/data-sources/mongodb-prometheus-integration-docs/config.yml @@ -1,7 +1,7 @@ id: mongodb-prometheus-integration-docs displayName: MongoDB monitoring integration description: | - Our MongoDB integration collects and sends inventory and metrics from your MongoDB cluster to our platform, where you can aggregate and visualize key performance metrics. We collect data on mongos, mongod, and config servers, as well as on databases and collections to help pinpoint performance bottlenecks. + Our MongoDB integration collects and sends inventory and metrics from your MongoDB cluster to our platform, where you can aggregate and visualize key performance metrics. install: primary: nerdlet: diff --git a/data-sources/netlify-builds/config.yml b/data-sources/netlify-builds/config.yml index 39e5a4479d..647e8f7fe8 100644 --- a/data-sources/netlify-builds/config.yml +++ b/data-sources/netlify-builds/config.yml @@ -1,7 +1,7 @@ id: netlify-builds displayName: Netlify Builds description: | - Netlify is an all-in-one platform for automating modern web projects. Replace your hosting infrastructure, continuous integration, and deployment pipeline with a single workflow. Integrate dynamic functionality like serverless functions, user authentication, and form handling as your projects grow. + Netlify is an all-in-one platform for automating modern web projects. Replace your hosting infrastructure, continuous integration, and deployment pipeline with a single workflow. icon: logo.png install: primary: diff --git a/data-sources/netlify-logs/config.yml b/data-sources/netlify-logs/config.yml index 26111f5f74..e9d3565308 100644 --- a/data-sources/netlify-logs/config.yml +++ b/data-sources/netlify-logs/config.yml @@ -1,7 +1,7 @@ id: netlify-logs displayName: Netlify Logs description: | - Netlify is an all-in-one platform for automating modern web projects. Replace your hosting infrastructure, continuous integration, and deployment pipeline with a single workflow. Use this quickstart to quickly parse traffic and function logs from Netlify into meaningful metrics in New Relic. + Netlify is an all-in-one platform for automating modern web projects. Replace your hosting infrastructure, continuous integration, and deployment pipeline with a single workflow. icon: logo.png install: primary: diff --git a/data-sources/netscaler/config.yml b/data-sources/netscaler/config.yml new file mode 100644 index 0000000000..d989d048fe --- /dev/null +++ b/data-sources/netscaler/config.yml @@ -0,0 +1,17 @@ +id: netscaler +displayName: NetScaler +description: | + NetScaler is a networking product and application delivery controller (ADC) that improves the delivery of applications to end users. +icon: logo.png +install: + primary: + link: + url: https://docs.netscaler.com/en-us/netscaler-application-delivery-management-software/current-release/analytics/security/new-relic-integration.html +keywords: + - netscaler + - events + - networking + - newrelic partner + - NR1_addData +categoryTerms: + - newrelic partner \ No newline at end of file diff --git a/data-sources/netscaler/logo.png b/data-sources/netscaler/logo.png new file mode 100644 index 0000000000..69461df386 Binary files /dev/null and b/data-sources/netscaler/logo.png differ diff --git a/data-sources/network-routers-and-switches/config.yml b/data-sources/network-routers-and-switches/config.yml index ba6da5edf4..76a25491d6 100644 --- a/data-sources/network-routers-and-switches/config.yml +++ b/data-sources/network-routers-and-switches/config.yml @@ -2,7 +2,6 @@ id: network-routers-and-switches displayName: Network Routers and Switches description: | The Network Routers and Switches datasource provides a dashboard that gives you a holistic view of the interface traffic across all of the routers and switches in your network. - Use this datasource together with New Relic's Network Performance Monitoring (NPM) feature to visualize anomalies and/or bottlenecks in your network. icon: logo.svg install: primary: diff --git a/data-sources/newrelic-cli/config.yml b/data-sources/newrelic-cli/config.yml index f06b23c181..550ccba85f 100644 --- a/data-sources/newrelic-cli/config.yml +++ b/data-sources/newrelic-cli/config.yml @@ -1,7 +1,7 @@ id: newrelic-cli displayName: New Relic CLI description: | - Access the New Relic platform from the comfort of your terminal. You can use the New Relic CLI to manage entity tags, define workloads, record deployment markers, and much more. In short, you can use the CLI to automate common tasks in your DevOps workflow. + Access the New Relic platform from the comfort of your terminal. You can use the New Relic CLI to manage entity tags, define workloads, record deployment markers, and much more. install: primary: link: diff --git a/data-sources/nuxtjs/config.yml b/data-sources/nuxtjs/config.yml index 18e10fb8e1..afe8039143 100644 --- a/data-sources/nuxtjs/config.yml +++ b/data-sources/nuxtjs/config.yml @@ -8,6 +8,6 @@ install: nerdletId: marketplace.install-data-source nerdletState: dataSourceId: nuxtjs - frameworkConfigId: nuxtjs + frameworkConfigId: new-relic-browser requiresAccount: false icon: logo.png diff --git a/data-sources/ocsf/config.yml b/data-sources/ocsf/config.yml new file mode 100644 index 0000000000..32a08c0d09 --- /dev/null +++ b/data-sources/ocsf/config.yml @@ -0,0 +1,13 @@ +id: ocsf +displayName: ocsf +description: | + Monitor and instrument your OCSF with New Relic to gain deep insights into your performance. +install: + primary: + nerdlet: + nerdletId: marketplace.install-data-source + nerdletState: + dataSourceId: ocsf + frameworkConfigId: ocsf + requiresAccount: false +icon: logo.png \ No newline at end of file diff --git a/data-sources/ocsf/logo.png b/data-sources/ocsf/logo.png new file mode 100644 index 0000000000..f3d0dff317 Binary files /dev/null and b/data-sources/ocsf/logo.png differ diff --git a/data-sources/openstack-controller/config.yml b/data-sources/openstack-controller/config.yml index 77f8da0b02..807e4d552d 100644 --- a/data-sources/openstack-controller/config.yml +++ b/data-sources/openstack-controller/config.yml @@ -4,8 +4,12 @@ description: | Monitor and analyze your Openstack Controller infrastructure with New Relic. install: primary: - link: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/openstack-controller-integration/ + nerdlet: + nerdletId: marketplace.install-data-source + nerdletState: + dataSourceId: openstack-controller + frameworkConfigId: openstack-controller + requiresAccount: false icon: logo.png keywords: - openstack controller diff --git a/data-sources/pihole/config.yml b/data-sources/pihole/config.yml index 4824dfbe6d..1c0e74ea49 100644 --- a/data-sources/pihole/config.yml +++ b/data-sources/pihole/config.yml @@ -1,9 +1,7 @@ id: pihole displayName: PiHole description: | - A PiHole is a free DNS server utility that runs on a Raspberry Pi (or other inexpensive device) and captures DNS requests before they're sent out of the network, filtering discrete elements that are spam, harmful, or wasteful. The result is a faster and safer network. - - This quickstart monitors the PiHole by leveraging it's built-in API to display information about the type and quantify of network requests being handled. + A PiHole is a free DNS server utility that runs on a Raspberry Pi (or other inexpensive device) and captures DNS requests before they're sent out of the network, filtering discrete elements that are spam, harmful, or wasteful. icon: logo.svg install: diff --git a/data-sources/ray/config.yml b/data-sources/ray/config.yml index 8646851e09..aa13581f40 100644 --- a/data-sources/ray/config.yml +++ b/data-sources/ray/config.yml @@ -3,8 +3,12 @@ displayName: Ray description: Monitor the performance of Ray using New Relic monitoring. install: primary: - link: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/ray-integration/ + nerdlet: + nerdletId: marketplace.install-data-source + nerdletState: + dataSourceId: ray + frameworkConfigId: ray + requiresAccount: false icon: logo.svg keywords: - ray diff --git a/data-sources/sendgrid-integration/config.yml b/data-sources/sendgrid-integration/config.yml index 94011fad0a..393ca73d1f 100644 --- a/data-sources/sendgrid-integration/config.yml +++ b/data-sources/sendgrid-integration/config.yml @@ -1,7 +1,7 @@ id: sendgrid-integration displayName: SendGrid Events Webhook description: | - SendGrid provides a cloud-based service that assists businesses with email delivery. In order to integrate SendGrid Events with New Relic, you will need to send SendGrid events by using the SendGrid Event Webhook. If you are already sending events to AWS S3 using the SendGrid Event Webhook, these events can be transferred to New Relic by using NewRelic-log-ingestion-s3. + SendGrid provides a cloud-based service that assists businesses with email delivery. In order to integrate SendGrid Events with New Relic, you will need to send SendGrid events by using the SendGrid Event Webhook. install: primary: link: diff --git a/data-sources/stripe/config.yml b/data-sources/stripe/config.yml index 4f2f07a40c..df2e9d3b9e 100644 --- a/data-sources/stripe/config.yml +++ b/data-sources/stripe/config.yml @@ -4,8 +4,12 @@ description: | Get insights into your Stripe observability data to improve your business. install: primary: - link: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/stripe-integration/ + nerdlet: + nerdletId: marketplace.install-data-source + nerdletState: + dataSourceId: stripe + frameworkConfigId: stripe + requiresAccount: false icon: logo.png keywords: - stripe diff --git a/data-sources/temporal/config.yml b/data-sources/temporal/config.yml index bb50e23205..2c1ce0dfd2 100644 --- a/data-sources/temporal/config.yml +++ b/data-sources/temporal/config.yml @@ -5,8 +5,12 @@ description: | icon: logo.svg install: primary: - link: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/temporal-monitoring-integration/ + nerdlet: + nerdletId: marketplace.install-data-source + nerdletState: + dataSourceId: temporal + frameworkConfigId: temporal + requiresAccount: false keywords: - temporal - temporal web host diff --git a/data-sources/traceloop/config.yml b/data-sources/traceloop/config.yml index 4a217b5ce7..ed58d8856a 100644 --- a/data-sources/traceloop/config.yml +++ b/data-sources/traceloop/config.yml @@ -5,8 +5,12 @@ description: | icon: logo.png install: primary: - link: - url: https://docs.newrelic.com/docs/opentelemetry/get-started/traceloop-llm-observability/traceloop-llm-observability-intro/ + nerdlet: + nerdletId: marketplace.install-data-source + nerdletState: + dataSourceId: traceloop + frameworkConfigId: traceloop + requiresAccount: false keywords: - traceloop - traceloop llm observability diff --git a/data-sources/vantage/config.yml b/data-sources/vantage/config.yml new file mode 100644 index 0000000000..7c424a8d6c --- /dev/null +++ b/data-sources/vantage/config.yml @@ -0,0 +1,18 @@ +id: vantage +displayName: Vantage +description: | + Monitor your full cloud cost from New Relic alongside cloud spend like AWS, Azure, or GCP. +icon: logo.png +install: + primary: + link: + url: https://docs.vantage.sh/connecting_new_relic + fallback: + link: + url: https://docs.vantage.sh/ +keywords: + - NR1_addData + - NR1_sys + - vantage + - cost + - spend diff --git a/data-sources/vantage/logo.png b/data-sources/vantage/logo.png new file mode 100644 index 0000000000..68c677783a Binary files /dev/null and b/data-sources/vantage/logo.png differ diff --git a/data-sources/vertica/config.yml b/data-sources/vertica/config.yml index c08c173613..20ce58bc3f 100644 --- a/data-sources/vertica/config.yml +++ b/data-sources/vertica/config.yml @@ -4,6 +4,12 @@ description: | Monitor the performance metrics of your Vertica database in real-time with New Relic Vertica. install: primary: - link: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/vertica-monitoring-integration + nerdlet: + nerdletId: marketplace.install-data-source + nerdletState: + dataSourceId: vertica + frameworkConfigId: vertica + requiresAccount: false icon: logo.png +keywords: + - vertica diff --git a/data-sources/vertx-eventbus/config.yml b/data-sources/vertx-eventbus/config.yml index 891128e42d..12f63de951 100644 --- a/data-sources/vertx-eventbus/config.yml +++ b/data-sources/vertx-eventbus/config.yml @@ -2,8 +2,7 @@ id: newrelic-java-vertx displayName: New Relic Java Instrumentation for Vert.x Event Bus description: | Provides instrumentation code for monitoring the Vert.x Event Bus. Tracks flow across the event bus. - Vertx-Verticles provides instrumentation for classes extends AbstractVerticle. It does this by - instrumenting each class that is deployed. + Specifically designed for Vert.x Verticles that extend AbstractVerticle. install: primary: link: @@ -17,4 +16,4 @@ keywords: - vertx - vert.x - eventbus - - NR1_addData \ No newline at end of file + - NR1_addData diff --git a/data-sources/vertx-extensions/config.yml b/data-sources/vertx-extensions/config.yml index 61c5047d54..3eb0c156af 100644 --- a/data-sources/vertx-extensions/config.yml +++ b/data-sources/vertx-extensions/config.yml @@ -29,4 +29,3 @@ keywords: - mongodb - reactive - coroutines - - NR1_addData diff --git a/data-sources/windows-certs/config.yml b/data-sources/windows-certs/config.yml index f02f63ed57..eabdf89357 100644 --- a/data-sources/windows-certs/config.yml +++ b/data-sources/windows-certs/config.yml @@ -1,14 +1,7 @@ id: windows-certs displayName: Flex Windows Cert Expiration Monitoring Install Plan description: | - ## Windows Certs via Flex Using the infrastructure agent and a flex integration you can pull certification expiration using powershell and send the information to new relic to be used in dashboards or alerts. - - Follow the regular flex installation process to add this flex integration to your agents, study the data to confirm if it matches your needs. - - ## What is Flex - New Relic Flex is an application-agnostic, all-in-one tool that allows you to collect metric data from a wide variety of services. It comes bundled with our infrastructure agent. You can instrument any app that exposes metrics over a standard protocol (HTTP, file, shell) in a standard format (for example, JSON or plain text): you create a YAML config file, start the Infrastructure agent, and your data is reported to New Relic. - icon: logo.png # Searchable words or phrases keywords: @@ -23,4 +16,4 @@ install: url: https://github.com/newrelic/nri-flex/tree/master/examples/windows/WindowsExpCertSample categoryTerms: - - infrastructure \ No newline at end of file + - infrastructure diff --git a/docs/README.md b/docs/README.md index 37983770a5..cb685ad5fb 100644 --- a/docs/README.md +++ b/docs/README.md @@ -1,3 +1,10 @@ # Documentation Each file in this directory (minus this readme) is generated from New Relic NerdGraph GraphQL schema. + +## Validation + +Every quickstart, datasource, alert, and dashboard is bundled into a single artifact and validated against our [schema](../utils/schema/artifact.json) for correctness. + +> [!IMPORTANT] +> Please ensure that _all_ feature flags are removed from a datasource before it is referenced in a quickstart. Otherwise, the datasource will not be properly associated. diff --git a/docs/graphql-schema-docs.md b/docs/graphql-schema-docs.md index 0320413894..5f2074549f 100644 --- a/docs/graphql-schema-docs.md +++ b/docs/graphql-schema-docs.md @@ -6,9 +6,6 @@ * [Objects](#objects) * [Nr1CatalogInstallAlertPolicyTemplateResult](#nr1cataloginstallalertpolicytemplateresult) * [Nr1CatalogInstallDashboardTemplateResult](#nr1cataloginstalldashboardtemplateresult) - * [Nr1CatalogInstallPlan](#nr1cataloginstallplan) - * [Nr1CatalogInstallPlanStep](#nr1cataloginstallplanstep) - * [Nr1CatalogInstallPlanTarget](#nr1cataloginstallplantarget) * [Nr1CatalogQuickstart](#nr1catalogquickstart) * [Nr1CatalogQuickstartAlert](#nr1catalogquickstartalert) * [Nr1CatalogQuickstartAlertCondition](#nr1catalogquickstartalertcondition) @@ -18,28 +15,18 @@ * [Nr1CatalogQuickstartDashboardMetadata](#nr1catalogquickstartdashboardmetadata) * [Nr1CatalogQuickstartDocumentation](#nr1catalogquickstartdocumentation) * [Nr1CatalogQuickstartDocumentationMetadata](#nr1catalogquickstartdocumentationmetadata) - * [Nr1CatalogQuickstartInstallPlan](#nr1catalogquickstartinstallplan) - * [Nr1CatalogQuickstartInstallPlanMetadata](#nr1catalogquickstartinstallplanmetadata) * [Nr1CatalogQuickstartMetadata](#nr1catalogquickstartmetadata) * [Nr1CatalogQuickstartsListing](#nr1catalogquickstartslisting) * [Inputs](#inputs) * [Nr1CatalogInstallDirectiveInput](#nr1cataloginstalldirectiveinput) - * [Nr1CatalogInstallPlanDirectiveInput](#nr1cataloginstallplandirectiveinput) - * [Nr1CatalogInstallPlanStepInput](#nr1cataloginstallplanstepinput) - * [Nr1CatalogInstallPlanTargetInput](#nr1cataloginstallplantargetinput) * [Nr1CatalogQuickstartMetadataAlertConditionInput](#nr1catalogquickstartmetadataalertconditioninput) * [Nr1CatalogQuickstartMetadataDashboardInput](#nr1catalogquickstartmetadatadashboardinput) * [Nr1CatalogQuickstartMetadataDocumentationInput](#nr1catalogquickstartmetadatadocumentationinput) * [Nr1CatalogQuickstartMetadataInput](#nr1catalogquickstartmetadatainput) * [Enums](#enums) - * [Nr1CatalogInstallPlanDestination](#nr1cataloginstallplandestination) - * [Nr1CatalogInstallPlanDirectiveMode](#nr1cataloginstallplandirectivemode) - * [Nr1CatalogInstallPlanOperatingSystem](#nr1cataloginstallplanoperatingsystem) - * [Nr1CatalogInstallPlanTargetType](#nr1cataloginstallplantargettype) * [Nr1CatalogInstallerType](#nr1cataloginstallertype) * [Nr1CatalogQuickstartAlertConditionType](#nr1catalogquickstartalertconditiontype) * [Interfaces](#interfaces) - * [Nr1CatalogInstallPlanDirective](#nr1cataloginstallplandirective) * [Nr1CatalogInstaller](#nr1cataloginstaller) * [Nr1CatalogQuickstartComponent](#nr1catalogquickstartcomponent) * [Nr1CatalogQuickstartComponentMetadata](#nr1catalogquickstartcomponentmetadata) @@ -174,9 +161,9 @@ The template that was used for the installation * [#help-nr1-dev-experience](htt -### Nr1CatalogInstallPlan +### Nr1CatalogQuickstart -An installer that uses install plan steps * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Information about the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -199,11 +186,11 @@ An installer that uses install plan steps * [#help-nr1-dev-experience](https://n -steps -[Nr1CatalogInstallPlanStep!]! +featured +Boolean! -The list of install plan steps necessary to execute the installation of the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Determines if this is a featured quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -217,11 +204,11 @@ The list of install plan steps necessary to execute the installation of the quic -type -Nr1CatalogInstallerType! +id +ID! -The type of installer * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The unique identifier for the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -234,39 +221,12 @@ The type of installer * [#help-nr1-dev-experience](https://newrelic.slack.com/ar - - - -### Nr1CatalogInstallPlanStep - -Information pertaining to a specific step in the installation plan * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(customer) - - - - - - - - - - - - - - - - + + - - + + - - + + - - - - +
FieldArgumentTypeDescription
descriptionStringmetadataNr1CatalogQuickstartMetadata -A short form description for the install plan step * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Metadata associated with the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -280,11 +240,11 @@ A short form description for the install plan step * [#help-nr1-dev-experience](
displayNameString!sourceUrlString -The human-readable name for the install plan step * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Specifies the URL where the source definition for the quickstart can be found * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -298,11 +258,11 @@ The human-readable name for the install plan step * [#help-nr1-dev-experience](h
fallbackNr1CatalogInstallPlanDirectivesupportLevelNr1CatalogSupportLevel! -Provides context about how the fallback install plan step should proceed * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Level of support expected for the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -315,12 +275,12 @@ Provides context about how the fallback install plan step should proceed * [#hel
headingString! +
+ +### Nr1CatalogQuickstartAlert -Used as a heading for the install plan step * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Information about an alert in a quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -331,14 +291,23 @@ Used as a heading for the install plan step * [#help-nr1-dev-experience](https:/ - + + + + + + + + + + - + - - - - - - - + +
FieldArgumentTypeDescription
idid ⚠️ ID! -The unique identifier for the install plan step * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The unique identifier for the alert * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -349,32 +318,20 @@ The unique identifier for the install plan step * [#help-nr1-dev-experience](htt -
primaryNr1CatalogInstallPlanDirective! - -Provides context about how the primary install plan step should proceed * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(customer) - +

⚠️ DEPRECATED

+
+This field is no longer supported. Please use Nr1CatalogQuickstartAlertCondition instead. +
targetNr1CatalogInstallPlanTarget!metadata ⚠️Nr1CatalogQuickstartAlertMetadata! -Provides context about where the install will occur * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Metadata associated with the alert * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -385,14 +342,20 @@ Provides context about where the install will occur * [#help-nr1-dev-experience] +

⚠️ DEPRECATED

+
+ +This field is no longer supported. Please use Nr1CatalogQuickstartAlertCondition instead. + +
-### Nr1CatalogInstallPlanTarget +### Nr1CatalogQuickstartAlertCondition -Represents the location of an install * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Information about an alert condition in a quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -415,29 +378,11 @@ Represents the location of an install * [#help-nr1-dev-experience](https://newre -destination -Nr1CatalogInstallPlanDestination! - - -Provides context on the location the install will take place * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(customer) - - - - - - -os -[Nr1CatalogInstallPlanOperatingSystem!]! +id +ID! -Provides context for the operating system that will be targeted * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The unique identifier for the alert condition * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -451,11 +396,11 @@ Provides context for the operating system that will be targeted * [#help-nr1-dev -type -Nr1CatalogInstallPlanTargetType! +metadata +Nr1CatalogQuickstartAlertConditionMetadata! -Provides context for the type of installation that will take place * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Metadata associated with the alert condition * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -471,9 +416,9 @@ Provides context for the type of installation that will take place * [#help-nr1- -### Nr1CatalogQuickstart +### Nr1CatalogQuickstartAlertConditionMetadata -Information about the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Metadata associated with the alert condition in a quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -496,47 +441,11 @@ Information about the quickstart * [#help-nr1-dev-experience](https://newrelic.s -featured -Boolean! - - -Determines if this is a featured quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(customer) - - - - - - -id -ID! - - -The unique identifier for the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(customer) - - - - - - -metadata -Nr1CatalogQuickstartMetadata +description +String -Metadata associated with the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +A short form description for the alert condition * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -550,11 +459,11 @@ Metadata associated with the quickstart * [#help-nr1-dev-experience](https://new -sourceUrl +displayName String -Specifies the URL where the source definition for the quickstart can be found * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The human-readable name for the alert condition * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -568,11 +477,11 @@ Specifies the URL where the source definition for the quickstart can be found * -supportLevel -Nr1CatalogSupportLevel! +type +Nr1CatalogQuickstartAlertConditionType! -Level of support expected for the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Determines the type of alert condition that will be created * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -588,9 +497,9 @@ Level of support expected for the quickstart * [#help-nr1-dev-experience](https: -### Nr1CatalogQuickstartAlert +### Nr1CatalogQuickstartAlertMetadata -Information about an alert in a quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Metadata associated with the alert in a quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -613,11 +522,11 @@ Information about an alert in a quickstart * [#help-nr1-dev-experience](https:// -id ⚠️ -ID! +description ⚠️ +String -The unique identifier for the alert * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +A short form description for the alert. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -637,11 +546,11 @@ This field is no longer supported. Please use Nr1CatalogQuickstartAlertCondition -metadata ⚠️ -Nr1CatalogQuickstartAlertMetadata! +displayName ⚠️ +String -Metadata associated with the alert * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The human-readable name for the alert. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -663,9 +572,9 @@ This field is no longer supported. Please use Nr1CatalogQuickstartAlertCondition -### Nr1CatalogQuickstartAlertCondition +### Nr1CatalogQuickstartDashboard -Information about an alert condition in a quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Information about a dashboard in a quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -692,7 +601,7 @@ Information about an alert condition in a quickstart * [#help-nr1-dev-experience ID! -The unique identifier for the alert condition * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The unique identifier for the dashboard * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -707,10 +616,10 @@ The unique identifier for the alert condition * [#help-nr1-dev-experience](https metadata -Nr1CatalogQuickstartAlertConditionMetadata! +Nr1CatalogQuickstartDashboardMetadata! -Metadata associated with the alert condition * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Metadata associated with the dashboard * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -726,9 +635,9 @@ Metadata associated with the alert condition * [#help-nr1-dev-experience](https: -### Nr1CatalogQuickstartAlertConditionMetadata +### Nr1CatalogQuickstartDashboardMetadata -Metadata associated with the alert condition in a quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Metadata associated with the dashboard in a quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -755,7 +664,7 @@ Metadata associated with the alert condition in a quickstart * [#help-nr1-dev-ex String -A short form description for the alert condition * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +A short form description for the dashboard. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -773,7 +682,7 @@ A short form description for the alert condition * [#help-nr1-dev-experience](ht String -The human-readable name for the alert condition * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The human-readable name for the dashboard. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -787,11 +696,11 @@ The human-readable name for the alert condition * [#help-nr1-dev-experience](htt -type -Nr1CatalogQuickstartAlertConditionType! +previews +[Nr1CatalogPreview!]! -Determines the type of alert condition that will be created * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +A list of previews for the dashboard, such as screenshots. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -807,9 +716,9 @@ Determines the type of alert condition that will be created * [#help-nr1-dev-exp -### Nr1CatalogQuickstartAlertMetadata +### Nr1CatalogQuickstartDocumentation -Metadata associated with the alert in a quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Information about a documentation component in a quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -832,11 +741,11 @@ Metadata associated with the alert in a quickstart * [#help-nr1-dev-experience]( -description ⚠️ -String +metadata +Nr1CatalogQuickstartDocumentationMetadata! -A short form description for the alert. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Metadata associated with the dashboard * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -847,20 +756,14 @@ A short form description for the alert. * [#help-nr1-dev-experience](https://new -

⚠️ DEPRECATED

-
- -This field is no longer supported. Please use Nr1CatalogQuickstartAlertCondition instead. - -
- -displayName ⚠️ -String - + + -The human-readable name for the alert. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +### Nr1CatalogQuickstartDocumentationMetadata + +Metadata associated with the documentation component in a quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -871,20 +774,23 @@ The human-readable name for the alert. * [#help-nr1-dev-experience](https://newr -

⚠️ DEPRECATED

-
- -This field is no longer supported. Please use Nr1CatalogQuickstartAlertCondition instead. -
- + + + + + + + - -
FieldArgumentTypeDescription
- -### Nr1CatalogQuickstartDashboard + + + +description +String + -Information about a dashboard in a quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +A short form description for the documentation component. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -895,23 +801,14 @@ Information about a dashboard in a quickstart * [#help-nr1-dev-experience](https - - - - - - - - + - - - - + + - - + +
FieldArgumentTypeDescription
idID!displayNameString -The unique identifier for the dashboard * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The human-readable name for the documentation component. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -925,11 +822,11 @@ The unique identifier for the dashboard * [#help-nr1-dev-experience](https://new
metadataNr1CatalogQuickstartDashboardMetadata!urlString! -Metadata associated with the dashboard * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The documentation URL * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -945,9 +842,9 @@ Metadata associated with the dashboard * [#help-nr1-dev-experience](https://newr
-### Nr1CatalogQuickstartDashboardMetadata +### Nr1CatalogQuickstartMetadata -Metadata associated with the dashboard in a quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Metadata associated with the quickstart that is available in New Relic I/O * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -970,11 +867,11 @@ Metadata associated with the dashboard in a quickstart * [#help-nr1-dev-experien -description -String +authors +[Nr1CatalogAuthor!]! -A short form description for the dashboard. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Authors for the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -988,11 +885,11 @@ A short form description for the dashboard. * [#help-nr1-dev-experience](https:/ -displayName -String +categories +[Nr1CatalogCategory!]! -The human-readable name for the dashboard. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The list of categories for filtering, searching, and grouping associated with the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1006,11 +903,11 @@ The human-readable name for the dashboard. * [#help-nr1-dev-experience](https:// -previews -[Nr1CatalogPreview!]! +categoryTerms +[String!]! -A list of previews for the dashboard, such as screenshots. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The list of category terms associated with the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1023,39 +920,12 @@ A list of previews for the dashboard, such as screenshots. * [#help-nr1-dev-expe - - - -### Nr1CatalogQuickstartDocumentation - -Information about a documentation component in a quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(customer) - - - - - - - - - - - - - - - - + + - -
FieldArgumentTypeDescription
metadataNr1CatalogQuickstartDocumentationMetadata!dataSources[Nr1CatalogDataSource!]! -Metadata associated with the dashboard * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The list of data sources associated with the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1068,39 +938,12 @@ Metadata associated with the dashboard * [#help-nr1-dev-experience](https://newr
- -### Nr1CatalogQuickstartDocumentationMetadata - -Metadata associated with the documentation component in a quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(customer) - - - - - - - - - - - - - - - - + + - -
FieldArgumentTypeDescription
description String -A short form description for the documentation component. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +A short form description for the quickstart. Used throughout the platform when displaying the quickstart. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1118,7 +961,7 @@ A short form description for the documentation component. * [#help-nr1-dev-exper String -The human-readable name for the documentation component. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The human-readable name for the quickstart. Used throughout the New Relic One platform when displaying the quickstart. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1132,11 +975,11 @@ The human-readable name for the documentation component. * [#help-nr1-dev-experi
urlString!iconNr1CatalogIcon -The documentation URL * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The corresponding icon for the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1149,12 +992,12 @@ The documentation URL * [#help-nr1-dev-experience](https://newrelic.slack.com/ar
- -### Nr1CatalogQuickstartInstallPlan + +installer ⚠️ +Nr1CatalogInstaller + -Information about an install plan component in a quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Information about how a quickstart is installed * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1165,23 +1008,20 @@ Information about an install plan component in a quickstart * [#help-nr1-dev-exp +

⚠️ DEPRECATED

+
- - - - - - - +This field is in a deprecation period. Please refer to `dataSources` for how a quickstart is installed. + + + - - - - + + - -
FieldArgumentTypeDescription
metadata ⚠️Nr1CatalogQuickstartInstallPlanMetadata!keywords[String!]! -Metadata associated with the install plan * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +A list of keywords for filtering and searching * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1192,20 +1032,14 @@ Metadata associated with the install plan * [#help-nr1-dev-experience](https://n -

⚠️ DEPRECATED

-
- -This field is no longer supported. Please use installer instead. - -
- -### Nr1CatalogQuickstartInstallPlanMetadata + +quickstartComponents +[Nr1CatalogQuickstartComponent!]! + -Metadata associated with the install plan in a quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +List of components in a quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1216,23 +1050,14 @@ Metadata associated with the install plan in a quickstart * [#help-nr1-dev-exper - - - - - - - - + - - - - + + - +
FieldArgumentTypeDescription
description ⚠️StringslugString! -A short form description for the documentation component. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The URL friendly name of the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1243,20 +1068,14 @@ A short form description for the documentation component. * [#help-nr1-dev-exper -

⚠️ DEPRECATED

-
- -This field is no longer supported. Please use installer instead. - -
displayName ⚠️summary String -The human-readable name for the install plan component. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +A short summary detailing the functionality of the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1267,20 +1086,14 @@ The human-readable name for the install plan component. * [#help-nr1-dev-experie -

⚠️ DEPRECATED

-
- -This field is no longer supported. Please use installer instead. - -
-### Nr1CatalogQuickstartMetadata +### Nr1CatalogQuickstartsListing -Metadata associated with the quickstart that is available in New Relic I/O * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Paginated information about Quickstarts * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1303,11 +1116,11 @@ Metadata associated with the quickstart that is available in New Relic I/O * [#h -authors -[Nr1CatalogAuthor!]! +nextCursor +String -Authors for the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Cursor used to fetch the next set of results * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1321,11 +1134,11 @@ Authors for the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.c -categories -[Nr1CatalogCategory!]! +results +[Nr1CatalogQuickstart!]! -The list of categories for filtering, searching, and grouping associated with the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The list of quickstart results * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1339,11 +1152,11 @@ The list of categories for filtering, searching, and grouping associated with th -categoryTerms -[String!]! +totalCount +Int! -The list of category terms associated with the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The total number of quickstart results * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1356,169 +1169,181 @@ The list of category terms associated with the quickstart * [#help-nr1-dev-exper - -dataSources -[Nr1CatalogDataSource!]! - + + -The list of data sources associated with the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +## Inputs + +### Nr1CatalogInstallDirectiveInput + +Set of attributes which represent how an install takes place * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) * No additional info link provided - * visibility(customer) + * visibility(flag:`DevEx/nrio_mutations`) - + + + + + + + + + - - + + - - + + - - - - +
FieldTypeDescription
descriptionStringlinkNr1CatalogLinkInstallDirectiveInput -A short form description for the quickstart. Used throughout the platform when displaying the quickstart. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Link information for this directive. Cannot be used with a nerdlet directive. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) * No additional info link provided - * visibility(customer) + * visibility(flag:`DevEx/nrio_mutations`)
displayNameStringnerdletNr1CatalogNerdletInstallDirectiveInput -The human-readable name for the quickstart. Used throughout the New Relic One platform when displaying the quickstart. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Nerdlet information for this directive. Cannot be used with a link directive. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) * No additional info link provided - * visibility(customer) + * visibility(flag:`DevEx/nrio_mutations`)
iconNr1CatalogIcon +
-The corresponding icon for the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +### Nr1CatalogQuickstartMetadataAlertConditionInput + +Metadata associated with the alert condition in this quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) * No additional info link provided - * visibility(customer) + * visibility(flag:`DevEx/nrio_mutations`) - + + + + + + + + + - - + + - - + + - - + + - - + + - - + +
FieldTypeDescription
installer ⚠️Nr1CatalogInstallerdescriptionString -Information about how a quickstart is installed * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +A short form description for the alert condition. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) * No additional info link provided - * visibility(customer) - - + * visibility(flag:`DevEx/nrio_mutations`) -

⚠️ DEPRECATED

-
-This field is in a deprecation period. Please refer to `dataSources` for how a quickstart is installed. -
keywords[String!]!displayNameString! -A list of keywords for filtering and searching * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The human-readable name for the alert condition. Used throughout the New Relic One platform when displaying the alert condition. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) * No additional info link provided - * visibility(customer) + * visibility(flag:`DevEx/nrio_mutations`)
quickstartComponents[Nr1CatalogQuickstartComponent!]!rawConfigurationNr1CatalogRawConfiguration! -List of components in a quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The raw JSON configuration for the alert condition * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) * No additional info link provided - * visibility(customer) + * visibility(flag:`DevEx/nrio_mutations`)
slugString!sourceUrlString -The URL friendly name of the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The source of the alert configuration * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) * No additional info link provided - * visibility(customer) + * visibility(flag:`DevEx/nrio_mutations`)
summaryStringtypeNr1CatalogQuickstartAlertConditionType! -A short summary detailing the functionality of the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Determines the type of alert condition that will be created * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) * No additional info link provided - * visibility(customer) + * visibility(flag:`DevEx/nrio_mutations`) @@ -1527,16 +1352,16 @@ A short summary detailing the functionality of the quickstart * [#help-nr1-dev-e
-### Nr1CatalogQuickstartsListing +### Nr1CatalogQuickstartMetadataDashboardInput -Paginated information about Quickstarts * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Metadata associated with the dashboard in this quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) * No additional info link provided - * visibility(customer) + * visibility(flag:`DevEx/nrio_mutations`) @@ -1544,75 +1369,54 @@ Paginated information about Quickstarts * [#help-nr1-dev-experience](https://new - - + - + - - + + - - + + - - -
FieldArgumentField Type Description
nextCursordescription String -Cursor used to fetch the next set of results * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +A short form description for the dashboard. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) * No additional info link provided - * visibility(customer) + * visibility(flag:`DevEx/nrio_mutations`)
results[Nr1CatalogQuickstart!]!displayNameString! -The list of quickstart results * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The human-readable name for the dashboard. Used throughout the New Relic One platform when displaying the dashboard. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) * No additional info link provided - * visibility(customer) + * visibility(flag:`DevEx/nrio_mutations`)
totalCountInt!rawConfigurationNr1CatalogRawConfiguration! -The total number of quickstart results * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(customer) - - - -
- -## Inputs - -### Nr1CatalogInstallDirectiveInput - -Set of attributes which represent how an install takes place * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The raw JSON configuration for the dashboard * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1623,22 +1427,14 @@ Set of attributes which represent how an install takes place * [#help-nr1-dev-ex - - - - - - - + - - - - + + - - + +
FieldTypeDescription
linkNr1CatalogLinkInstallDirectiveInputscreenshots[Nr1CatalogScreenshotInput!] -Link information for this directive. Cannot be used with a nerdlet directive. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +A list of previews for the dashboard, such as screenshots. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1652,11 +1448,11 @@ Link information for this directive. Cannot be used with a nerdlet directive. *
nerdletNr1CatalogNerdletInstallDirectiveInputsourceUrlString -Nerdlet information for this directive. Cannot be used with a link directive. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The source of the dashboard configuration * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1672,9 +1468,9 @@ Nerdlet information for this directive. Cannot be used with a link directive. *
-### Nr1CatalogInstallPlanDirectiveInput +### Nr1CatalogQuickstartMetadataDocumentationInput -Set of attributes which represent how an install takes place * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Metadata associated with the documentation in this quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1696,11 +1492,11 @@ Set of attributes which represent how an install takes place * [#help-nr1-dev-ex -destination -String +description +String! -Value that pairs with the mode to enable the installation step. Supported values are a recipe_name, nerdlet_id, or a link * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +A short form description for the documentation component. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1714,11 +1510,11 @@ Value that pairs with the mode to enable the installation step. Supported values -link -Nr1CatalogLinkDirectiveInput +displayName +String! -Link information for this directive. Cannot be used with nerdlet or targeted directives. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The human-readable name for the documentation component. Used throughout the New Relic One platform when displaying the documentation component. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1732,11 +1528,11 @@ Link information for this directive. Cannot be used with nerdlet or targeted dir -mode -Nr1CatalogInstallPlanDirectiveMode +url +String! -The type of installation that will take place * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The documentation URL * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1749,12 +1545,12 @@ The type of installation that will take place * [#help-nr1-dev-experience](https - -nerdlet -Nr1CatalogNerdletDirectiveInput - + + + +### Nr1CatalogQuickstartMetadataInput -Nerdlet information for this directive. Cannot be used with link or targeted directives. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Metadata associated with the quickstart that will be available in New Relic Instant Observability * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1765,14 +1561,22 @@ Nerdlet information for this directive. Cannot be used with link or targeted dir - + + + + + + + + + - - + + - -
FieldTypeDescription
targetedNr1CatalogTargetedDirectiveInputalertConditions[Nr1CatalogQuickstartMetadataAlertConditionInput!] -Targeted information for this directive. Cannot be used with link or nerdlet directives. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +A list of alert condition components that are included in the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1785,12 +1589,12 @@ Targeted information for this directive. Cannot be used with link or nerdlet dir
- -### Nr1CatalogInstallPlanStepInput + +authors +[Nr1CatalogAuthorInput!]! + -Metadata associated with a specific step in the install plan * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Authors for the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1801,22 +1605,14 @@ Metadata associated with a specific step in the install plan * [#help-nr1-dev-ex - - - - - - - + - - - - + + - - + + - - + + - + - - + + - - + + - - + + - -
FieldTypeDescription
descriptionString!categoryTerms[String!] -A short form description for the install plan step * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The list of category terms associated with the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1830,11 +1626,11 @@ A short form description for the install plan step * [#help-nr1-dev-experience](
displayNameString!dashboards[Nr1CatalogQuickstartMetadataDashboardInput!] -The human-readable name for the install plan step * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +A list of dashboard components that are included in the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1848,11 +1644,11 @@ The human-readable name for the install plan step * [#help-nr1-dev-experience](h
fallbackNr1CatalogInstallPlanDirectiveInputdataSourceIds[ID!] -Provides context about how the fallback install plan step should proceed * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +A list of data source ids corresponding to the data sources associated with this quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1866,11 +1662,11 @@ Provides context about how the fallback install plan step should proceed * [#hel
headingdescription String! -Used as a heading for the install plan step * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +A short form description for the quickstart. Used throughout the platform when displaying the quickstart. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1884,11 +1680,11 @@ Used as a heading for the install plan step * [#help-nr1-dev-experience](https:/
idID!displayNameString! -The unique identifier for the install plan step * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The human-readable name for the quickstart. Used throughout the New Relic One platform when displaying the quickstart. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1902,11 +1698,11 @@ The unique identifier for the install plan step * [#help-nr1-dev-experience](htt
primaryNr1CatalogInstallPlanDirectiveInput!documentation[Nr1CatalogQuickstartMetadataDocumentationInput!] -Provides context about how the primary install plan step should proceed * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +A list of documentation components that are included in the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1920,11 +1716,11 @@ Provides context about how the primary install plan step should proceed * [#help
targetNr1CatalogInstallPlanTargetInput!iconString! -Provides context about where the install will occur * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The public url of an icon for the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1937,12 +1733,12 @@ Provides context about where the install will occur * [#help-nr1-dev-experience]
- -### Nr1CatalogInstallPlanTargetInput + +keywords +[String!] + -Represents the location of an install * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +A list of keywords for filtering and searching * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1953,22 +1749,14 @@ Represents the location of an install * [#help-nr1-dev-experience](https://newre - - - - - - - + - - - - + + - - + + - - + + - -
FieldTypeDescription
destinationNr1CatalogInstallPlanDestination!slugString -Provides context on the location the install will take place * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +The URL friendly name for the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -1982,11 +1770,11 @@ Provides context on the location the install will take place * [#help-nr1-dev-ex
os[Nr1CatalogInstallPlanOperatingSystem!]sourceUrlString -Operating system for the install * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +Specifies the URL where the source definition for the quickstart can be found * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -2000,11 +1788,11 @@ Operating system for the install * [#help-nr1-dev-experience](https://newrelic.s
typeNr1CatalogInstallPlanTargetType!summaryString! -Provides context for the type of installation that will take place * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) +A short summary detailing the functionality of the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided * [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) @@ -2017,600 +1805,10 @@ Provides context for the type of installation that will take place * [#help-nr1-
- -### Nr1CatalogQuickstartMetadataAlertConditionInput - -Metadata associated with the alert condition in this quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescription
descriptionString - -A short form description for the alert condition. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
displayNameString! - -The human-readable name for the alert condition. Used throughout the New Relic One platform when displaying the alert condition. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
rawConfigurationNr1CatalogRawConfiguration! - -The raw JSON configuration for the alert condition * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
sourceUrlString - -The source of the alert configuration * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
typeNr1CatalogQuickstartAlertConditionType! - -Determines the type of alert condition that will be created * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
- -### Nr1CatalogQuickstartMetadataDashboardInput - -Metadata associated with the dashboard in this quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescription
descriptionString - -A short form description for the dashboard. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
displayNameString! - -The human-readable name for the dashboard. Used throughout the New Relic One platform when displaying the dashboard. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
rawConfigurationNr1CatalogRawConfiguration! - -The raw JSON configuration for the dashboard * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
screenshots[Nr1CatalogScreenshotInput!] - -A list of previews for the dashboard, such as screenshots. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
sourceUrlString - -The source of the dashboard configuration * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
- -### Nr1CatalogQuickstartMetadataDocumentationInput - -Metadata associated with the documentation in this quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FieldTypeDescription
descriptionString! - -A short form description for the documentation component. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
displayNameString! - -The human-readable name for the documentation component. Used throughout the New Relic One platform when displaying the documentation component. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
urlString! - -The documentation URL * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
- -### Nr1CatalogQuickstartMetadataInput - -Metadata associated with the quickstart that will be available in New Relic Instant Observability * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + +
FieldTypeDescription
alertConditions[Nr1CatalogQuickstartMetadataAlertConditionInput!] - -A list of alert condition components that are included in the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
authors[Nr1CatalogAuthorInput!]! - -Authors for the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
categoryTerms[String!] - -The list of category terms associated with the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
dashboards[Nr1CatalogQuickstartMetadataDashboardInput!] - -A list of dashboard components that are included in the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
dataSourceIds[ID!] - -A list of data source ids corresponding to the data sources associated with this quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
descriptionString! - -A short form description for the quickstart. Used throughout the platform when displaying the quickstart. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
displayNameString! - -The human-readable name for the quickstart. Used throughout the New Relic One platform when displaying the quickstart. * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
documentation[Nr1CatalogQuickstartMetadataDocumentationInput!] - -A list of documentation components that are included in the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
iconString! - -The public url of an icon for the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
installPlanStepIds[ID!] - -A list of install plan step ids corresponding to the steps of the installation plan * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
keywords[String!] - -A list of keywords for filtering and searching * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
slugString - -The URL friendly name for the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
sourceUrlString - -Specifies the URL where the source definition for the quickstart can be found * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
summaryString! - -A short summary detailing the functionality of the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(flag:`DevEx/nrio_mutations`) - - - -
supportLevelNr1CatalogSupportLevel +
supportLevelNr1CatalogSupportLevel Level of support for the quickstart * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) * Team ID: No team ID provided @@ -2630,249 +1828,6 @@ Level of support for the quickstart * [#help-nr1-dev-experience](https://newreli ## Enums -### Nr1CatalogInstallPlanDestination - -Possible destinations for the install plan target * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(customer) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ValueDescription
APPLICATION - -Application (APM) install - -
CLOUD - -Cloud provider install - -
HOST - -Host install - -
KUBERNETES - -Kubernetes install - -
UNKNOWN - -Unknown install - special case when the target where the install takes place is unknown (such as guided install) - -
- -### Nr1CatalogInstallPlanDirectiveMode - -Possible modes for an install plan directive * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(customer) - - - - - - - - - - - - - - - - - - - - - - - -
ValueDescription
LINK - -Directs the installation toward an external link - -
NERDLET - -Directs the installation to open a stacked Nerdlet to perform the installation - -
TARGETED - -Directs the installation toward a specific target - -
- -### Nr1CatalogInstallPlanOperatingSystem - -Possible types for the install plan operating system * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(customer) - - - - - - - - - - - - - - - - - - - - - - - -
ValueDescription
DARWIN - -Mac operating system - -
LINUX - -Linux operating system - -
WINDOWS - -Windows operating system - -
- -### Nr1CatalogInstallPlanTargetType - -Possible types for the install plan target * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(customer) - - - - - - - - - - - - - - - - - - - - - - - - - - - -
ValueDescription
AGENT - -Agent install - -
INTEGRATION - -Integration install - -
ON_HOST_INTEGRATION - -On host integration install - -
UNKNOWN - -Unknown install - special case when the target where the install takes place is unknown (such as guided install) - -
- -### Nr1CatalogInstallerType - -Type of installer * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(customer) - - - - - - - - - - - - - - - -
ValueDescription
INSTALL_PLAN - -Install plan - -
- ### Nr1CatalogQuickstartAlertConditionType Possible types of configured alert conditions * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) @@ -2928,52 +1883,6 @@ A static alert condition ## Interfaces - -### Nr1CatalogInstallPlanDirective - -Information about an install plan directive * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(customer) - - - - - - - - - - - - - - - - - - - - -
FieldArgumentTypeDescription
modeNr1CatalogInstallPlanDirectiveMode! - -The mode of the install plan directive * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) - * Team ID: No team ID provided - -* [catalog-service-elixir repo](https://source.datanerd.us/nr1-dev-experience/catalog-service-elixir) - -* No additional info link provided - - * visibility(customer) - - - -
- ### Nr1CatalogInstaller Information about how a quickstart is installed * [#help-nr1-dev-experience](https://newrelic.slack.com/archives/CPE597DNY) diff --git a/images/install-plan.png b/images/install-plan.png deleted file mode 100644 index cb5cde5900..0000000000 Binary files a/images/install-plan.png and /dev/null differ diff --git a/install/apm/apm-logs/install.yml b/install/apm/apm-logs/install.yml deleted file mode 100644 index 0951f6b0f6..0000000000 --- a/install/apm/apm-logs/install.yml +++ /dev/null @@ -1,17 +0,0 @@ -id: apm-logs - -name: APM Logs Install - -title: New Relic curated dashboard for all (Full platform, core, and basic users) - -description: The purpose of this dashboard is being on the same page among full platform, core, and basic users. APM Logs provides similar dashboards of Infra, APM, Browser, Mobile, NPM, Alert, and usage for full platform users. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: >- - https://docs.newrelic.com/docs/query-your-data/explore-query-data/dashboards/introduction-dashboards/ diff --git a/install/apm/c/install.yml b/install/apm/c/install.yml deleted file mode 100644 index 52e6df31d5..0000000000 --- a/install/apm/c/install.yml +++ /dev/null @@ -1,18 +0,0 @@ -id: setup-c-agent -name: C SDK agent -title: C SDK agent installation -description: Start monitoring the performance of a C application or service by installing the New Relic C SDK agent. - -target: - type: agent - destination: application - -install: - mode: nerdlet - destination: - nerdletId: setup-nerdlets.setup-c-integration - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/agents/c-sdk/install-configure/install-c-sdk-compile-link-your-code/ diff --git a/install/apm/dotnet/multi-os/install.yml b/install/apm/dotnet/multi-os/install.yml deleted file mode 100644 index 2329ff4c2e..0000000000 --- a/install/apm/dotnet/multi-os/install.yml +++ /dev/null @@ -1,21 +0,0 @@ -id: dotnet-agent -name: .NET agent -title: .NET agent installation -description: Start monitoring the performance of a .NET application or service by installing the New Relic .NET agent. - -target: - type: agent - destination: application - os: - - linux - - windows - -install: - mode: targetedInstall - destination: - recipeName: dotnet-agent-installer - -fallback: - mode: nerdlet - destination: - nerdletId: setup-nerdlets.setup-dotnet-integration diff --git a/install/apm/dotnet/windows-only/install.yml b/install/apm/dotnet/windows-only/install.yml deleted file mode 100644 index c29b22736e..0000000000 --- a/install/apm/dotnet/windows-only/install.yml +++ /dev/null @@ -1,20 +0,0 @@ -id: dotnet-windows-agent -name: .NET agent -title: .NET agent installation -description: Start monitoring the performance of a .NET application or service by installing the New Relic .NET agent. - -target: - type: agent - destination: application - os: - - windows - -install: - mode: targetedInstall - destination: - recipeName: dotnet-agent-installer - -fallback: - mode: nerdlet - destination: - nerdletId: setup-nerdlets.setup-dotnet-integration diff --git a/install/apm/elixir/install.yml b/install/apm/elixir/install.yml deleted file mode 100644 index 5502c190ba..0000000000 --- a/install/apm/elixir/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: setup-elixir-agent -name: Elixir agent -title: Elixir agent installation -description: Start monitoring the performance of an Elixir application or service by installing the New Relic Elixir agent. - -target: - type: agent - destination: application - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/integrations/open-source-telemetry-integrations/elixir/elixir-open-source-agent \ No newline at end of file diff --git a/install/apm/go/install.yml b/install/apm/go/install.yml deleted file mode 100644 index 92a7ecba5c..0000000000 --- a/install/apm/go/install.yml +++ /dev/null @@ -1,18 +0,0 @@ -id: setup-go-agent -name: Go agent -title: Go agent installation -description: Start monitoring the performance of a Go application or service by installing the New Relic Go agent. - -target: - type: agent - destination: application - -install: - mode: nerdlet - destination: - nerdletId: setup-nerdlets.setup-go-integration - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/agents/go-agent/installation/install-new-relic-go/ diff --git a/install/apm/java/nerdlet-only/install.yml b/install/apm/java/nerdlet-only/install.yml deleted file mode 100644 index 167e25fcfd..0000000000 --- a/install/apm/java/nerdlet-only/install.yml +++ /dev/null @@ -1,18 +0,0 @@ -id: setup-java-agent -name: Java agent -title: Java agent installation -description: Start monitoring the performance of a Java application or service by installing the New Relic Java agent. - -target: - type: agent - destination: application - -install: - mode: nerdlet - destination: - nerdletId: setup-nerdlets.setup-java-integration - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/agents/java-agent/installation/install-java-agent/ diff --git a/install/apm/java/targeted-install/install.yml b/install/apm/java/targeted-install/install.yml deleted file mode 100644 index e700f4bc17..0000000000 --- a/install/apm/java/targeted-install/install.yml +++ /dev/null @@ -1,18 +0,0 @@ -id: setup-java-targeted-install -name: Java agent -title: Java agent installation -description: Start monitoring the performance of a Java application or service by installing the New Relic Java agent. - -target: - type: agent - destination: application - -install: - mode: targetedInstall - destination: - recipeName: java-agent-installer - -fallback: - mode: nerdlet - destination: - nerdletId: setup-nerdlets.setup-java-integration diff --git a/install/apm/node/install.yml b/install/apm/node/install.yml deleted file mode 100644 index 5ed55beb11..0000000000 --- a/install/apm/node/install.yml +++ /dev/null @@ -1,22 +0,0 @@ -id: node-agent -name: Node agent -title: Node agent installation -description: Start monitoring the performance of a Node application or service by installing the New Relic Node agent. - -target: - type: agent - destination: application - os: - - linux - -install: - mode: nerdlet - destination: - nerdletId: marketplace.install-data-source - nerdletState: - dataSourceId: node-js - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/apm/agents/nodejs-agent/getting-started/introduction-new-relic-nodejs/#install diff --git a/install/apm/php/nerdlet-only/install.yml b/install/apm/php/nerdlet-only/install.yml deleted file mode 100644 index cb7eb5391a..0000000000 --- a/install/apm/php/nerdlet-only/install.yml +++ /dev/null @@ -1,20 +0,0 @@ -id: php-agent -name: PHP agent -title: PHP agent installation -description: Start monitoring the performance of a PHP application or service by installing the New Relic PHP agent. - -target: - type: agent - destination: application - os: - - linux - -install: - mode: nerdlet - destination: - nerdletId: setup-nerdlets.setup-php-integration - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/apm/agents/php-agent/getting-started/introduction-new-relic-php/#installation \ No newline at end of file diff --git a/install/apm/php/targeted-install/install.yml b/install/apm/php/targeted-install/install.yml deleted file mode 100644 index ce145af4de..0000000000 --- a/install/apm/php/targeted-install/install.yml +++ /dev/null @@ -1,20 +0,0 @@ -id: php-targeted-install -name: PHP agent -title: PHP agent installation -description: Start monitoring the performance of a PHP application or service by installing the New Relic PHP agent. - -target: - type: agent - destination: application - os: - - linux - -install: - mode: targetedInstall - destination: - recipeName: php-agent-installer - -fallback: - mode: nerdlet - destination: - nerdletId: setup-nerdlets.setup-php-integration diff --git a/install/apm/python/install.yml b/install/apm/python/install.yml deleted file mode 100644 index 16f5e136ee..0000000000 --- a/install/apm/python/install.yml +++ /dev/null @@ -1,18 +0,0 @@ -id: setup-python-agent -name: Python agent -title: Python agent installation -description: Start monitoring the performance of a Python application or service by installing the New Relic Python agent. - -target: - type: agent - destination: application - -install: - mode: nerdlet - destination: - nerdletId: setup-nerdlets.setup-python-integration - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/agents/python-agent/installation/standard-python-agent-install/#install diff --git a/install/apm/ruby/install.yml b/install/apm/ruby/install.yml deleted file mode 100644 index 004e2aa88a..0000000000 --- a/install/apm/ruby/install.yml +++ /dev/null @@ -1,18 +0,0 @@ -id: setup-ruby-agent -name: Ruby agent -title: Ruby agent installation -description: Start monitoring the performance of a Ruby application or service by installing the New Relic Ruby agent. - -target: - type: agent - destination: application - -install: - mode: nerdlet - destination: - nerdletId: setup-nerdlets.setup-ruby-integration - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/agents/ruby-agent/getting-started/introduction-new-relic-ruby/#install diff --git a/install/aws/amazon-cloudfront-web-logs/install.yml b/install/aws/amazon-cloudfront-web-logs/install.yml deleted file mode 100644 index 57a9709e27..0000000000 --- a/install/aws/amazon-cloudfront-web-logs/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: amazon-cloudfront-web-logs -name: Amazon-Cloudfront-Web-Logs -title: Amazon Cloudfront Web Logs -description: | - Monitor Amazon Cloudfront Web Logs with the New Relic log forwarding solution. -target: - type: unknown - destination: cloud - -install: - mode: link - destination: - url: >- - https://docs.newrelic.com/docs/logs/forward-logs/cloudfront-web-logs/ diff --git a/install/aws/aws-apprunner/install.yml b/install/aws/aws-apprunner/install.yml deleted file mode 100644 index bafc7d592c..0000000000 --- a/install/aws/aws-apprunner/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: aws-apprunner -name: AWS-Apprunner -title: AWS Apprunner -description: | - AWS Apprunner Containerized Services -target: - type: unknown - destination: cloud - -install: - mode: link - destination: - url: >- - https://docs.newrelic.com/docs/infrastructure/amazon-integrations/aws-integrations-list/aws-apprunner diff --git a/install/aws/aws-cloudwatch-metric-streams/install.yml b/install/aws/aws-cloudwatch-metric-streams/install.yml deleted file mode 100644 index 3c0978aadc..0000000000 --- a/install/aws/aws-cloudwatch-metric-streams/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: aws-cloudwatch-metric-streams -name: AWS CloudWatch Metric Streams -title: AWS CloudWatch Metric Streams -description: | - AWS CloudWatch Metric Streams integration enables streaming of metrics from any AWS service (including custom namespaces) to New Relic. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: >- - https://docs.newrelic.com/docs/integrations/amazon-integrations/aws-integrations-list/aws-metric-stream/ \ No newline at end of file diff --git a/install/aws/aws-infrastructure-monitoring/install.yml b/install/aws/aws-infrastructure-monitoring/install.yml deleted file mode 100644 index 83314cb3d7..0000000000 --- a/install/aws/aws-infrastructure-monitoring/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: aws-infrastructure-monitoring -name: AWS-Infrastructure-Monitoring -title: AWS Infrastructure monitoring -description: | - AWS Infrastructure monitoring allows monitoring of various AWS services. -target: - type: unknown - destination: cloud - -install: - mode: link - destination: - url: >- - https://docs.newrelic.com/docs/infrastructure/amazon-integrations/get-started/connect-aws-new-relic-infrastructure-monitoring/ \ No newline at end of file diff --git a/install/aws/aws-lambda-telemetry-extension/install.yml b/install/aws/aws-lambda-telemetry-extension/install.yml deleted file mode 100644 index 628b5efe23..0000000000 --- a/install/aws/aws-lambda-telemetry-extension/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: aws-lambda-telemetry-extension -name: aws lambda telemetry extension -title: AWS Lambda Telemetry Extension -description: | - Send telemetry data straight from your lambda functions into New Relic. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: >- - https://docs.newrelic.com/docs/infrastructure/amazon-integrations/aws-integrations-list/aws-lambda-telemetry \ No newline at end of file diff --git a/install/aws/aws-log-ingestion-s3/install.yml b/install/aws/aws-log-ingestion-s3/install.yml deleted file mode 100644 index bb6a5d9ad7..0000000000 --- a/install/aws/aws-log-ingestion-s3/install.yml +++ /dev/null @@ -1,15 +0,0 @@ -id: aws-log-ingestion-s3 -name: AWS Lambda for sending logs from S3 -title: AWS Lambda for sending logs from S3 -description: | - You can send your Amazon S3 buckets to New Relic using our AWS Lambda function, NewRelic-log-ingestion-s3. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: >- - https://docs.newrelic.com/docs/logs/forward-logs/aws-lambda-sending-logs-s3/ - \ No newline at end of file diff --git a/install/aws/aws-security-hub/install.yml b/install/aws/aws-security-hub/install.yml deleted file mode 100644 index eaf24b2792..0000000000 --- a/install/aws/aws-security-hub/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: aws-security-hub-install -name: AWS Security Hub -title: Import AWS Security Hub Events -description: | - Set up automatic ingestion of your AWS Security Hub events using Event Bridge. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/vulnerability-management/integrations/aws diff --git a/install/aws/aws-security-lake/install.yml b/install/aws/aws-security-lake/install.yml deleted file mode 100644 index 0993650acf..0000000000 --- a/install/aws/aws-security-lake/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: aws-security-lake -name: Amazon-Security-Lake -title: Amazon Security Lake -description: | - Amazon Security Lake monitoring helps you reduce the friction of sending Security Lake logs to New Relic. With Security Lake logs, you can easily monitor your various security features accross multiple AWS accounts. -target: - type: integration - destination: cloud -install: - mode: link - destination: - url: >- - https://docs.newrelic.com/docs/infrastructure/amazon-integrations/aws-integrations-list/aws-security-lake-monitoring-integration/ diff --git a/install/aws/aws-verified-access/install.yml b/install/aws/aws-verified-access/install.yml deleted file mode 100644 index 89c5ee0479..0000000000 --- a/install/aws/aws-verified-access/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: aws-verified-access -name: AWS-Verified-Access -title: Amazon Verified Access Flow Logs via Kinesis Data Firehose -description: | - Amazon Verified Access Log monitoring via Kinesis Data Firehose helps you reduce the friction of sending logs to New Relic. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/amazon-integrations/aws-integrations-list/aws-verified-access-monitoring-integration/ diff --git a/install/aws/aws-vpc-flow-logs/install.yml b/install/aws/aws-vpc-flow-logs/install.yml deleted file mode 100644 index 2bc5520867..0000000000 --- a/install/aws/aws-vpc-flow-logs/install.yml +++ /dev/null @@ -1,19 +0,0 @@ -id: aws-vpc-flow-logs -name: AWS-VPC-Flow-Logs -title: Amazon VPC Flow Logs via Kinesis Data Firehose -description: | - Amazon VPC Flow Log monitoring via Kinesis Data Firehose helps you reduce the friction of sending logs to New Relic. With VPC flow logs from across your AWS estates, you can quickly understand key insights for performance analytics and troubleshooting network connectivity. -target: - type: integration - destination: cloud - -install: - mode: nerdlet - destination: - nerdletId: network-performance-monitoring.setup-vpc-flow - -fallback: - mode: link - destination: - url: >- - https://docs.newrelic.com/docs/network-performance-monitoring/setup-performance-monitoring/cloud-flow-logs/aws-vpc-flow-log-monitoring/ diff --git a/install/azure/azure-infrastructure-monitoring/install.yml b/install/azure/azure-infrastructure-monitoring/install.yml deleted file mode 100644 index 167a81306e..0000000000 --- a/install/azure/azure-infrastructure-monitoring/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: azure-infrastructure-monitoring -name: Azure Infrastructure monitoring -title: Azure Infrastructure monitoring -description: | - Azure Infrastructure monitoring allows monitoring of various Azure services. -target: - type: unknown - destination: cloud - -install: - mode: link - destination: - url: >- - https://docs.newrelic.com/docs/infrastructure/microsoft-azure-integrations/get-started/activate-azure-integrations/ \ No newline at end of file diff --git a/install/battlesnake/install.yml b/install/battlesnake/install.yml deleted file mode 100644 index a564ae9051..0000000000 --- a/install/battlesnake/install.yml +++ /dev/null @@ -1,17 +0,0 @@ -id: battlesnake - -name: Battlesnake - -title: Battlesnake custom events and attributes - -description: Observe your Battlesnake with New Relic custom attributes! - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: >- - https://docs.newrelic.com/docs/data-apis/custom-data/custom-events/apm-report-custom-events-attributes/ diff --git a/install/blazor-server/install.yml b/install/blazor-server/install.yml deleted file mode 100644 index 2c7a5873c1..0000000000 --- a/install/blazor-server/install.yml +++ /dev/null @@ -1,16 +0,0 @@ -id: blazor-server - -name: Blazor Server - -title: Blazor Server -description: Instrument and monitor your Blazor Server application with our .NET APM agent. Analyze your performance data right out of the box. - -target: - type: integration - destination: host - -install: - mode: link - destination: - url: >- - https://docs.newrelic.com/docs/apm/agents/net-agent/getting-started/net-agent-compatibility-requirements-net-framework/#technologies diff --git a/install/blazor-webassembly/install.yml b/install/blazor-webassembly/install.yml deleted file mode 100644 index 810c94b88b..0000000000 --- a/install/blazor-webassembly/install.yml +++ /dev/null @@ -1,16 +0,0 @@ -id: blazor-webassembly - -name: Blazor WebAssembly - -title: Blazor WebAssembly -description: Instrument and monitor your Blazor-built app with our Browser Monitoring agent. Analyze your performance data right out of the box. - -target: - type: integration - destination: host - -install: - mode: link - destination: - url: >- - https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/browser-monitoring-integrations/blazor-webassembly/ \ No newline at end of file diff --git a/install/browser/browser-docs/install.yml b/install/browser/browser-docs/install.yml deleted file mode 100644 index 896ea579ef..0000000000 --- a/install/browser/browser-docs/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: browser-docs -name: Browser -title: Browser monitoring -description: | - With New Relic One's browser monitoring solution, you get full visibility into the complete webpage life cycle of your application or website. Browser measures page load timing, also known as Real User Monitoring (RUM). - -target: - type: agent - destination: application - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/browser/browser-monitoring/installation/install-browser-monitoring-agent/ diff --git a/install/change-tracking/install.yml b/install/change-tracking/install.yml deleted file mode 100644 index dfc0dbaa35..0000000000 --- a/install/change-tracking/install.yml +++ /dev/null @@ -1,16 +0,0 @@ -id: change-tracking - -name: Change Tracking Install - -title: New Relic Change Tracking Markers - -description: New Relic Change Tracking allows you to record important changes to any entity in your system. Users will be able to mark changes on time-series charts and analyze the impact of those changes on golden signals, errors, logs, anomalies and incidents, and more. - -target: - type: unknown - destination: unknown - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/change-tracking/change-tracking-introduction/ diff --git a/install/gatsby/gatsby-build-newrelic/install.yml b/install/gatsby/gatsby-build-newrelic/install.yml deleted file mode 100644 index 16083280e9..0000000000 --- a/install/gatsby/gatsby-build-newrelic/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: gatsby-build-newrelic -name: Gatsby -title: Gatsby Build observability -description: | - Observe your Gatsby Builds -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://newrelic.com/blog/how-to-relic/optimize-gatsby-jamstack diff --git a/install/gcp/cloud-spanner/install.yml b/install/gcp/cloud-spanner/install.yml deleted file mode 100644 index ca36f9a734..0000000000 --- a/install/gcp/cloud-spanner/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: cloud-spanner -name: cloud-spanner -title: Google Cloud Spanner -description: | - Relational database metrics for your Google Cloud Spanner instance via prometheus exporter. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/prometheus-integrations/get-started/send-prometheus-metric-data-new-relic/ - diff --git a/install/gcp/gcp-infrastructure-monitoring/install.yml b/install/gcp/gcp-infrastructure-monitoring/install.yml deleted file mode 100644 index 23d66c9ef8..0000000000 --- a/install/gcp/gcp-infrastructure-monitoring/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: gcp-infrastructure-monitoring -name: GCP Infrastructure monitoring -title: GCP Infrastructure monitoring -description: | - GCP Infrastructure monitoring allows monitoring of various Google Cloud Platform services. -target: - type: unknown - destination: cloud - -install: - mode: link - destination: - url: >- - https://docs.newrelic.com/docs/infrastructure/google-cloud-platform-integrations/get-started/connect-google-cloud-platform-services-new-relic/ \ No newline at end of file diff --git a/install/guided-install/default/install.yml b/install/guided-install/default/install.yml deleted file mode 100644 index 7db0216447..0000000000 --- a/install/guided-install/default/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: guided-install -name: Guided install -title: Use guided install to automatically detect what New Relic can monitor in your environment -description: With one command, you'll get infrastructure and log data flowing in so you can start observing your system. We'll also discover and recommend integrations for greater visibility into your stack. - -target: - type: unknown - destination: unknown - -install: - mode: nerdlet - destination: - nerdletId: nr1-install-newrelic.nr1-install-newrelic diff --git a/install/guided-install/kubernetes/install.yml b/install/guided-install/kubernetes/install.yml deleted file mode 100644 index e0eb460702..0000000000 --- a/install/guided-install/kubernetes/install.yml +++ /dev/null @@ -1,18 +0,0 @@ -id: kubernetes-install -name: Kubernetes integration -title: Kubernetes integration -description: Use our automated installer for servers, VMs, and unprivileged environments. The automated installer can provide you either a Helm command with the required values filled, or a plain manifest if you do not wish to use Helm. It also features great customizability and full control over which features and dependencies are enabled. - -target: - type: integration - destination: kubernetes - -install: - mode: nerdlet - destination: - nerdletId: nr1-install-newrelic.nr1-install-newrelic - nerdletState: - path: guided - env: kubernetes - activeComponent: VTSOKubernetes - activeEnvironment: kubernetes diff --git a/install/infrastructure/infra-agent-targeted/install.yml b/install/infrastructure/infra-agent-targeted/install.yml deleted file mode 100644 index ccf616ae25..0000000000 --- a/install/infrastructure/infra-agent-targeted/install.yml +++ /dev/null @@ -1,22 +0,0 @@ -id: infra-agent-targeted -name: Infrastructure agent -title: Infrastructure agent install -description: | - New Relic's infrastructure monitoring agent is a lightweight executable file that collects data about your hosts. It also forwards data from infrastructure integrations to New Relic, as well as log data for log analytics. - -target: - type: agent - destination: host - os: - - linux - - windows - -install: - mode: targetedInstall - destination: - recipeName: infrastructure-agent-installer - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/install-infrastructure-agent/linux-installation/install-infrastructure-monitoring-agent-linux/#manual-install diff --git a/install/logs/default/install.yml b/install/logs/default/install.yml deleted file mode 100644 index 5f6c1dfec3..0000000000 --- a/install/logs/default/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: logs-default -name: New Relic Logs -title: Manage log collection for New Relic -description: | - Manage log collection for New Relic -target: - type: unknown - destination: unknown - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/logs/forward-logs/enable-log-management-new-relic/ diff --git a/install/logs/heroku/install.yml b/install/logs/heroku/install.yml deleted file mode 100644 index 7f7f899c48..0000000000 --- a/install/logs/heroku/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: logs-heroku -name: Heroku Logs -title: Ingest Heroku Logs -description: Stream your Heroku logs to New Relic using Heroku's built-in Logplex router - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/logs/enable-log-management-new-relic/enable-log-monitoring-new-relic/heroku-log-forwarding/ diff --git a/install/mlops/aporia/install.yml b/install/mlops/aporia/install.yml deleted file mode 100644 index 506930d723..0000000000 --- a/install/mlops/aporia/install.yml +++ /dev/null @@ -1,25 +0,0 @@ -id: aporia-mlops -name: Aporia - -title: Aporia Model Observability & Monitoring Platform - -description: | - Aporia’s integration with New Relic provides you with full access to a customized ML monitoring dashboard in New Relic. The dashboard contains six different charts: Most Active Models, Most Active Model Versions, Model Inferences, Average Numeric Inferences, Numeric Inferences Heatmaps, and Categorical Inferences for a comprehensive inferences investigation for all your models in production. - - This integration also supports monitoring for almost all model use cases, including: fraud detection, NLP, Recommendations, Sales Forecast, Churn Prediction, Lead Prioritization, and Tabular Data. - - By leveraging New Relic Alerts and Applied Intelligence, you will be able to monitor and manage alerts for all your operational needs. Find, troubleshoot, and resolve problems faster and automatically detect anomalies and combine related alerts and incidents to enable root cause analysis for any operational issues that may arise, even beyond the model itself. - -target: - type: integration - destination: cloud - -install: - mode: nerdlet - destination: - nerdletId: mlops.setup-aporia - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/alerts-applied-intelligence/applied-intelligence/mlops-integrations/aporia-mlops-integration/ diff --git a/install/mlops/comet/install.yml b/install/mlops/comet/install.yml deleted file mode 100644 index 8e97a17474..0000000000 --- a/install/mlops/comet/install.yml +++ /dev/null @@ -1,19 +0,0 @@ -id: comet-mlops -name: comet -title: Comet -description: | - Comet is a machine learning (ML) development platform built to meet the intense demands of enterprise teams deploying ML at scale. Comet’s integration with New Relic allows you to manage and optimize your ML models in production from your New Relic One dashboard. With Comet and New Relic, you can accelerate ML development and realize business value faster. - -target: - type: integration - destination: cloud - -install: - mode: nerdlet - destination: - nerdletId: mlops.setup-comet - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/alerts-applied-intelligence/applied-intelligence/mlops-integrations/comet-mlops-integration/ diff --git a/install/mlops/dagshub/install.yml b/install/mlops/dagshub/install.yml deleted file mode 100644 index 0ae9764ddc..0000000000 --- a/install/mlops/dagshub/install.yml +++ /dev/null @@ -1,18 +0,0 @@ -id: dagshub-mlops -name: DagsHub -title: DagsHub Machine Learning Training Monitoring -description: | - Integrating DagsHub and New Relic enables you to analyze and monitor machine learning training metrics in real-time. You can visualize your metrics in a New Relic dashboard, create custom metrics and set alerts to notify you of events and incidents happening during your training runs. -target: - type: integration - destination: cloud - -install: - mode: nerdlet - destination: - nerdletId: mlops.setup-dagshub - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/integrations/mlops-integrations/dagshub-mlops-integration/#integrate diff --git a/install/mlops/mona/install.yml b/install/mlops/mona/install.yml deleted file mode 100644 index 533c127d1c..0000000000 --- a/install/mlops/mona/install.yml +++ /dev/null @@ -1,23 +0,0 @@ -id: monalabs-mlops -name: Mona Labs - -title: Mona Labs Intelligent Monitoring for AI. - -description: | - Mona provides the best visibility into AI systems in order to reduce associated risks with production AI, optimize operational processes, and enable teams to plan better AI road maps. The Mona - New Relic integration provides users with the ability to automatically view Mona generated insights directly on their New Relic dashboard, explore production AI / ML data with NRQL, and connect specific Mona insight events to New Relic Incident Intelligence. - - Instantly get alerted on latency issues and automatically detect anomalies to ensure the best performance within production systems. - -target: - type: integration - destination: cloud - -install: - mode: nerdlet - destination: - nerdletId: mlops.setup-mona - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/alerts-applied-intelligence/applied-intelligence/mlops-integrations/mona-mlops-integration/ diff --git a/install/mlops/truera/install.yml b/install/mlops/truera/install.yml deleted file mode 100644 index a645385a53..0000000000 --- a/install/mlops/truera/install.yml +++ /dev/null @@ -1,16 +0,0 @@ -id: truera-mlops -name: Truera Diagnostics & Monitoring - -title: Truera Diagnostics & Monitoring solution for Trustworthy AI. - -description: | - TruEra provides best in class AI Quality diagnostics and monitoring solution. TruEra and New Relic users can go beyond standard accuracy, input and output drift monitoring by identifying consequential data drift, and other AI Quality diagnostics such as fairness, conceptual soundness and segment behavior. When combined with NewRelic’s comprehensive observability capabilities, MLOps teams can correlate signals throughout the ML lifecycle. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/alerts-applied-intelligence/applied-intelligence/mlops-integrations/truera-integration/ diff --git a/install/mobile-crash-analytics/install.yml b/install/mobile-crash-analytics/install.yml deleted file mode 100644 index 6e799f45c8..0000000000 --- a/install/mobile-crash-analytics/install.yml +++ /dev/null @@ -1,17 +0,0 @@ -id: mobile-crash-analytics-install -name: Mobile Crash Analytics Install Plan -title: Mobile Crash Analytics Install Plan -description: | - Installs the Mobile Crash Analytics Dashboard. - -target: - type: unknown - destination: unknown - os: - - linux - - windows - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/mobile-monitoring/new-relic-mobile/get-started/introduction-mobile-monitoring/ \ No newline at end of file diff --git a/install/mobile-dashboard/install.yml b/install/mobile-dashboard/install.yml deleted file mode 100644 index e5e86ecb6d..0000000000 --- a/install/mobile-dashboard/install.yml +++ /dev/null @@ -1,28 +0,0 @@ -# in install/example/install.yml - -# Defined by the author, must be unique -id: mobile-dashboard-install - -# A human readable name -name: Mobile Dashboard Install Plan - -# Used as a heading during the install process -title: Mobile Dashboard Install Plan - -description: | - Installs the Mobile Dashboard. - -target: - # type can be agent | integration | on_host_integration | unknown - type: unknown - # destination can be application | cloud | host | kubernetes | unknown - destination: unknown - # os can be darwin | linux | windows - os: - - linux - - windows - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/mobile-monitoring/new-relic-mobile/get-started/introduction-mobile-monitoring/ \ No newline at end of file diff --git a/install/mobile-network-performance/install.yml b/install/mobile-network-performance/install.yml deleted file mode 100644 index e9b6dc91d3..0000000000 --- a/install/mobile-network-performance/install.yml +++ /dev/null @@ -1,17 +0,0 @@ -id: mobile-network-performance-install -name: Mobile Network Performance Install Plan -title: Mobile Network Performance Install Plan -description: | - Installs the Mobile Network Performance Dashboard. - -target: - type: unknown - destination: unknown - os: - - linux - - windows - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/mobile-monitoring/new-relic-mobile/get-started/introduction-mobile-monitoring/ \ No newline at end of file diff --git a/install/mobile/android/install.yml b/install/mobile/android/install.yml deleted file mode 100644 index 977636e77a..0000000000 --- a/install/mobile/android/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: android-mobile -name: android -title: Android Monitoring -description: | - Mobile monitoring for Android monitors your app, giving you a comprehensive view of your app's performance - -target: - type: agent - destination: application - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/mobile-monitoring/new-relic-mobile-android/get-started/introduction-new-relic-mobile-android/ \ No newline at end of file diff --git a/install/mobile/ios/install.yml b/install/mobile/ios/install.yml deleted file mode 100644 index 6399578da0..0000000000 --- a/install/mobile/ios/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: ios-mobile -name: iOS -title: iOS Monitoring -description: | - New Relic's mobile monitoring for iOS gives you a comprehensive view of your app's performance. It works for iOS apps written using Objective-C, Swift, or both languages - -target: - type: agent - destination: application - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/mobile-monitoring/new-relic-mobile-ios/get-started/introduction-new-relic-mobile-ios/ \ No newline at end of file diff --git a/install/mobile/tvos/install.yml b/install/mobile/tvos/install.yml deleted file mode 100644 index 4d6adba31a..0000000000 --- a/install/mobile/tvos/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: tvos-mobile -name: tvOS -title: tvOS Monitoring -description: | - New Relic's mobile monitoring for tvOS gives you a comprehensive view of your app's performance. - -target: - type: agent - destination: application - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/mobile-monitoring/new-relic-mobile-ios/tvos/tvos-installation-configuration/ \ No newline at end of file diff --git a/install/network/ciscoHardware/install.yml b/install/network/ciscoHardware/install.yml deleted file mode 100644 index 3c3e32d148..0000000000 --- a/install/network/ciscoHardware/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: network-cisco-hardware -name: Cisco Hardware Sensor Dashboard -title: Cisco Hardware Sensor Dashboard -description: | - Easily install a dashboard to see the status of Cisco hardware sensors. -target: - type: unknown - destination: unknown - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/network-performance-monitoring/get-started/npm-introduction/ diff --git a/install/network/npm/install.yml b/install/network/npm/install.yml deleted file mode 100644 index d5ad729236..0000000000 --- a/install/network/npm/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: network-performance-monitoring -name: NPM -title: Network Performance Monitoring -description: | - Set up your network devices so they send network data to New Relic One. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/network-performance-monitoring/get-started/npm-introduction/ \ No newline at end of file diff --git a/install/network/snmp/install.yml b/install/network/snmp/install.yml deleted file mode 100644 index 21f1743570..0000000000 --- a/install/network/snmp/install.yml +++ /dev/null @@ -1,21 +0,0 @@ -id: network-snmp -name: SNMP -title: Network SNMP collection -description: | - Install NPM for SNMP data collection using a simple Docker container. - -target: - type: agent - destination: host - os: - - linux - -install: - mode: nerdlet - destination: - nerdletId: network-performance-monitoring.setup-snmp - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/network-performance-monitoring/setup-performance-monitoring/snmp-performance-monitoring \ No newline at end of file diff --git a/install/network/syslog/install.yml b/install/network/syslog/install.yml deleted file mode 100644 index cf0f28151d..0000000000 --- a/install/network/syslog/install.yml +++ /dev/null @@ -1,21 +0,0 @@ -id: network-syslog -name: Syslog -title: Network Syslog collection -description: | - Install NPM for syslog collection using a simple Docker container. - -target: - type: agent - destination: host - os: - - linux - -install: - mode: nerdlet - destination: - nerdletId: network-performance-monitoring.setup-syslog - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/network-performance-monitoring/setup-performance-monitoring/network-syslog-monitoring/ diff --git a/install/nextcloud/install.yml b/install/nextcloud/install.yml deleted file mode 100644 index 37133b618a..0000000000 --- a/install/nextcloud/install.yml +++ /dev/null @@ -1,15 +0,0 @@ -id: nextcloud -name: Nextcloud -title: Nextcloud -description: | - Use our infrastructure agent and the Prometheus open metric integration to monitor the performance of the processes on your Nextcloud server. -target: - type: integration - destination: host - os: - - linux - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/nextcloud-integration/ diff --git a/install/on-host-integration/apache/install.yml b/install/on-host-integration/apache/install.yml deleted file mode 100644 index a846786091..0000000000 --- a/install/on-host-integration/apache/install.yml +++ /dev/null @@ -1,21 +0,0 @@ -id: apache-integration -name: Apache -title: Apache monitoring integration -description: | - Our Apache integration sends performance metrics and inventory data from your Apache web server to the New Relic platform. You can view pre-built dashboards of your Apache metric data, create alert policies, and create your own custom queries and charts. - - As part of this integration we will install the New Relic Infrastructure agent. - -target: - type: on_host_integration - destination: host - -install: - mode: targetedInstall - destination: - recipeName: apache-open-source-integration - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/apache-monitoring-integration/ diff --git a/install/on-host-integration/cassandra/install.yml b/install/on-host-integration/cassandra/install.yml deleted file mode 100644 index 281f3e09c0..0000000000 --- a/install/on-host-integration/cassandra/install.yml +++ /dev/null @@ -1,16 +0,0 @@ -id: cassandra-integration -name: Cassandra -title: Cassandra monitoring integration -description: | - Our Cassandra integration sends performance metrics and inventory data from your Cassandra database to the New Relic platform. You can view pre-built dashboards of your Cassandra metric data, create alert policies, and create your own custom queries and charts. - - As part of this integration we will install the New Relic Infrastructure agent. - -target: - type: on_host_integration - destination: host - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/cassandra-monitoring-integration/#install diff --git a/install/on-host-integration/couchbase/install.yml b/install/on-host-integration/couchbase/install.yml deleted file mode 100644 index 88db9b6c91..0000000000 --- a/install/on-host-integration/couchbase/install.yml +++ /dev/null @@ -1,21 +0,0 @@ -id: couchbase-integration -name: Couchbase -title: Couchbase monitoring integration -description: | - Our Couchbase integration collects and sends inventory and metric data from your Couchbase cluster to the New Relic platform, where you can quickly see the health of your Couchbase environment. We collect data at the cluster, node, query engine, and bucket level so you can trace a problem to its source. - - As part of this integration we will install the New Relic Infrastructure agent. - -target: - type: on_host_integration - destination: host - -install: - mode: targetedInstall - destination: - recipeName: couchbase-open-source-integration - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/couchbase-monitoring-integration/ diff --git a/install/on-host-integration/elasticsearch/install.yml b/install/on-host-integration/elasticsearch/install.yml deleted file mode 100644 index 5f9aa97771..0000000000 --- a/install/on-host-integration/elasticsearch/install.yml +++ /dev/null @@ -1,16 +0,0 @@ -id: elasticsearch-integration -name: Elasticsearch -title: Elasticsearch monitoring integration -description: | - Our Elasticsearch integration collects and sends inventory and metrics from your Elasticsearch cluster to our platform, where you can see the health of your Elasticsearch environment. We collect metrics at the cluster, node, and index level so you can more easily find the source of any problems. - - As part of this integration we will install the New Relic Infrastructure agent. - -target: - type: on_host_integration - destination: host - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/elasticsearch-monitoring-integration/#install diff --git a/install/on-host-integration/haproxy/install.yml b/install/on-host-integration/haproxy/install.yml deleted file mode 100644 index 9794309eba..0000000000 --- a/install/on-host-integration/haproxy/install.yml +++ /dev/null @@ -1,16 +0,0 @@ -id: haproxy-integration -name: HAProxy -title: HAProxy monitoring integration -description: | - Our HAProxy integration collects and sends inventory and metrics from your HAProxy instance to the New Relic platform, where you can aggregate and visualize key performance metrics for the HAProxy server, frontends, and backends. - - As part of this integration we will install the New Relic Infrastructure agent. - -target: - type: on_host_integration - destination: host - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/haproxy-monitoring-integration/#install diff --git a/install/on-host-integration/hashicorp-consul/install.yml b/install/on-host-integration/hashicorp-consul/install.yml deleted file mode 100644 index d53398d3c7..0000000000 --- a/install/on-host-integration/hashicorp-consul/install.yml +++ /dev/null @@ -1,21 +0,0 @@ -id: hashicorp-consul-integration -name: HashiCorp Consul -title: HashiCorp Consul monitoring integration -description: | - The HashiCorp Consul on-host integration collects and sends inventory and metrics from your Consul environment to New Relic, where you can see the health of your Consul datacenter environment. We collect data on both the datacenter and agent/node levels. - - As part of this integration we will install the New Relic Infrastructure agent. - -target: - type: on_host_integration - destination: host - -install: - mode: targetedInstall - destination: - recipeName: hashicorp-consul-open-source-integration - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/hashicorp-consul-monitoring-integration/#install diff --git a/install/on-host-integration/hivemq/install.yml b/install/on-host-integration/hivemq/install.yml deleted file mode 100644 index b765b6ae61..0000000000 --- a/install/on-host-integration/hivemq/install.yml +++ /dev/null @@ -1,16 +0,0 @@ -id: hivemq-integration-docs -name: HiveMQ -title: HiveMQ monitoring integration -description: | - Our HiveMQ integration collects and metrics from your HiveMQ to our platform, where you can aggregate and visualize key metrics. We collect all the data from the HiveMQ metrics subsystem. - -level: New Relic - -target: - type: agent - destination: host - -install: - mode: link - destination: - url: https://github.com/newrelic/newrelic-opentelemetry-examples/tree/main/other-examples/collector/hivemq diff --git a/install/on-host-integration/ibm-mq/install.yml b/install/on-host-integration/ibm-mq/install.yml deleted file mode 100644 index 6c01962f7e..0000000000 --- a/install/on-host-integration/ibm-mq/install.yml +++ /dev/null @@ -1,16 +0,0 @@ -id: ibmmq-integration-docs -name: IBM MQ -title: IBM MQ integration -description: | - The New Relic IBM MQ monitor allows you to monitor the performance of MQ Objects like channels and queues. - -level: Community - -target: - type: agent - destination: host - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/ibmmq-monitoring-integration/#install diff --git a/install/on-host-integration/jmx/install.yml b/install/on-host-integration/jmx/install.yml deleted file mode 100644 index 876b781c44..0000000000 --- a/install/on-host-integration/jmx/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: jmx-integration-docs -name: JMX -title: JMX monitoring integration -description: | - The New Relic JMX integration allows users to monitor any application that exposes metrics with JMX. The integration includes a default collection file that automatically collects key metrics from the JVM. You can also customize your metric collection with YAML files to collect any subset of metrics. - -target: - type: on_host_integration - destination: host - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/jmx-monitoring-integration/ diff --git a/install/on-host-integration/kafka/install.yml b/install/on-host-integration/kafka/install.yml deleted file mode 100644 index bfdec86b03..0000000000 --- a/install/on-host-integration/kafka/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: kafka-integration-docs -name: Kafka -title: Kafka Monitoring integration -description: | - The New Relic Kafka on-host integration reports metrics and configuration data from your Kafka service. We instrument all the key elements of your cluster, including brokers (both ZooKeeper and Bootstrap), producers, consumers, and topics. - -target: - type: on_host_integration - destination: host - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/kafka-monitoring-integration/ diff --git a/install/on-host-integration/memcached/install.yml b/install/on-host-integration/memcached/install.yml deleted file mode 100644 index 74fbde8e9d..0000000000 --- a/install/on-host-integration/memcached/install.yml +++ /dev/null @@ -1,21 +0,0 @@ -id: memcached-integration -name: Memcached -title: Memcached monitoring integration -description: | - Our Memcached integration collects and sends inventory and metrics from your Memcached instance to our platform, where you can aggregate and visualize key performance metrics. We collect data at both instance and slab levels. - - As part of this integration we will install the New Relic Infrastructure agent. - -target: - type: on_host_integration - destination: host - -install: - mode: targetedInstall - destination: - recipeName: memcached-open-source-integration - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/memcached-monitoring-integration/ diff --git a/install/on-host-integration/mongodb/install.yml b/install/on-host-integration/mongodb/install.yml deleted file mode 100644 index 3981220d65..0000000000 --- a/install/on-host-integration/mongodb/install.yml +++ /dev/null @@ -1,21 +0,0 @@ -id: mongodb-integration -name: MongoDB -title: MongoDB monitoring integration -description: | - Our MongoDB integration collects and sends inventory and metrics from your MongoDB cluster to our platform, where you can aggregate and visualize key performance metrics. We collect data on mongos, mongods, and config servers, as well as on databases and collections to help pinpoint performance bottlenecks. - - As part of this integration we will install the New Relic Infrastructure agent. - -target: - type: on_host_integration - destination: host - -install: - mode: targetedInstall - destination: - recipeName: mongodb-open-source-integration - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/mongodb-monitoring-integration/#install diff --git a/install/on-host-integration/mssql/install.yml b/install/on-host-integration/mssql/install.yml deleted file mode 100644 index 31cdaf2494..0000000000 --- a/install/on-host-integration/mssql/install.yml +++ /dev/null @@ -1,21 +0,0 @@ -id: microsoft-sql-server-integration -name: Microsoft SQL Server -title: Microsoft SQL Server monitoring integration -description: | - Our Microsoft SQL Server integration collects and sends inventory and metrics from your MS SQL Server environment to our platform, where you can see the health of your MS SQL Server environment. We collect both database and instance-level metrics so that you can pinpoint the source of any problems. - - As part of this integration we will install the New Relic Infrastructure agent. - -target: - type: on_host_integration - destination: host - -install: - mode: targetedInstall - destination: - recipeName: mssql-server-integration-installer - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/microsoft-sql-server-monitoring-integration/ diff --git a/install/on-host-integration/mysql/install.yml b/install/on-host-integration/mysql/install.yml deleted file mode 100644 index 49cf4b2001..0000000000 --- a/install/on-host-integration/mysql/install.yml +++ /dev/null @@ -1,21 +0,0 @@ -id: mysql-integration -name: MySQL -title: MySQL open source integration -description: | - Our MySQL integration collects and sends inventory and metrics from your MySQL database to our platform, where you can see the health of your database server and analyze metric data so that you can easily find the source of any problems. - - As part of this integration we will install the New Relic Infrastructure agent. - -target: - type: on_host_integration - destination: host - -install: - mode: targetedInstall - destination: - recipeName: mysql-open-source-integration - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/mysql-monitoring-integration/ diff --git a/install/on-host-integration/nagios/install.yml b/install/on-host-integration/nagios/install.yml deleted file mode 100644 index d9edb18d49..0000000000 --- a/install/on-host-integration/nagios/install.yml +++ /dev/null @@ -1,16 +0,0 @@ -id: nagios-integration -name: Nagios -title: Nagios monitoring integration -description: | - Our Nagios integration lets you use your service checks directly, without the need to run a Nagios instance. - - As part of this integration we will install the New Relic Infrastructure agent. - -target: - type: on_host_integration - destination: host - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/nagios-monitoring-integration/#install diff --git a/install/on-host-integration/nginx/install.yml b/install/on-host-integration/nginx/install.yml deleted file mode 100644 index 27ba54ac31..0000000000 --- a/install/on-host-integration/nginx/install.yml +++ /dev/null @@ -1,21 +0,0 @@ -id: nginx-integration -name: Nginx -title: Nginx monitoring integration -description: | - Our NGINX integration collects and sends inventory and metrics from your NGINX server to our platform, where you can see data on connections and client requests so that you can find the source of any problems. - - As part of this integration we will install the New Relic Infrastructure agent. - -target: - type: on_host_integration - destination: host - -install: - mode: targetedInstall - destination: - recipeName: nginx-open-source-integration - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/nginx-monitoring-integration/ diff --git a/install/on-host-integration/postgres/install.yml b/install/on-host-integration/postgres/install.yml deleted file mode 100644 index 82423b57a1..0000000000 --- a/install/on-host-integration/postgres/install.yml +++ /dev/null @@ -1,21 +0,0 @@ -id: postgresql-integration -name: PostgreSQL -title: PostgreSQL monitoring integration -description: | - The New Relic PostgreSQL on-host integration receives and sends inventory metrics from your PostgreSQL instance to the New Relic platform, where you can aggregate and visualize key performance metrics. Data from instances, databases, and clusters helps you find the source of problems. - - As part of this integration we will install the New Relic Infrastructure agent. - -target: - type: on_host_integration - destination: host - -install: - mode: targetedInstall - destination: - recipeName: postgres-open-source-integration - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/postgresql-monitoring-integration/#install diff --git a/install/on-host-integration/rabbitmq/install.yml b/install/on-host-integration/rabbitmq/install.yml deleted file mode 100644 index 048cb1b2b0..0000000000 --- a/install/on-host-integration/rabbitmq/install.yml +++ /dev/null @@ -1,21 +0,0 @@ -id: rabbitmq-integration -name: RabbitMQ -title: RabbitMQ monitoring integration -description: | - The New Relic RabbitMQ on-host integration reports metrics and configuration data from your RabbitMQ service, including important metrics relating to the cluster, vhosts, queues, exchanges, and consumers. - - As part of this integration we will install the New Relic Infrastructure agent. - -target: - type: on_host_integration - destination: host - -install: - mode: targetedInstall - destination: - recipeName: rabbitmq-open-source-integration - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/rabbitmq-monitoring-integration/#install diff --git a/install/on-host-integration/redis/install.yml b/install/on-host-integration/redis/install.yml deleted file mode 100644 index c966599d09..0000000000 --- a/install/on-host-integration/redis/install.yml +++ /dev/null @@ -1,21 +0,0 @@ -id: redis-integration -name: Redis -title: Redis monitoring integration -description: | - Our Redis integration reports critical performance data from your Redis server to New Relic products. You can view this metric data and inventory data in pre-built dashboards, create alert policies, and create custom queries and charts. You can also specify keys that are important to your application and get information about their length. - - As part of this integration we will install the New Relic Infrastructure agent. - -target: - type: on_host_integration - destination: host - -install: - mode: targetedInstall - destination: - recipeName: redis-open-source-integration - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/redis-monitoring-integration/ diff --git a/install/on-host-integration/squid/install.yml b/install/on-host-integration/squid/install.yml deleted file mode 100644 index 21f5df8d2b..0000000000 --- a/install/on-host-integration/squid/install.yml +++ /dev/null @@ -1,16 +0,0 @@ -id: squid-prometheus-integration-docs -name: Squid -title: Squid prometheus monitoring integration -description: | - Our Squid prometheus integration collects metrics from your Squid cache manager to our platform, where you can aggregate and visualize key metrics. All the data is collected using the [Prometheus squid-exporter](https://github.com/boynux/squid-exporter). - -level: New Relic - -target: - type: agent - destination: host - -install: - mode: link - destination: - url: https://github.com/newrelic/newrelic-opentelemetry-examples/tree/main/other-examples/collector/squid diff --git a/install/on-host-integration/sybase/install.yml b/install/on-host-integration/sybase/install.yml deleted file mode 100644 index 8d25e60c93..0000000000 --- a/install/on-host-integration/sybase/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: sybase-integration -name: Sybase -title: Sybase monitoring integration -description: | - Monitor SAP Adaptive Server Enterprise (Sybase) integration - -target: - type: on_host_integration - destination: host - -install: - mode: link - destination: - url: https://github.com/newrelic-experimental/nri-db \ No newline at end of file diff --git a/install/on-host-integration/varnish/install.yml b/install/on-host-integration/varnish/install.yml deleted file mode 100644 index 41512d4695..0000000000 --- a/install/on-host-integration/varnish/install.yml +++ /dev/null @@ -1,16 +0,0 @@ -id: varnish-cache-integration -name: Varnish Cache -title: Varnish Cache monitoring integration -description: | - The Varnish Cache on-host integration collects and sends inventory and metrics from your Varnish Cache environment to New Relic so you can monitor its health. We collect metrics at the instance, lock, memory pool, storage, and backend levels. - - As part of this integration we will install the New Relic Infrastructure agent. - -target: - type: on_host_integration - destination: host - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/varnish-cache-monitoring-integration/#install diff --git a/install/on-host-integration/vsphere/install.yml b/install/on-host-integration/vsphere/install.yml deleted file mode 100644 index a3031985c7..0000000000 --- a/install/on-host-integration/vsphere/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: vsphere-integration -name: VMware vSphere -title: VMware vSphere integration -description: | - The VMware vSphere on-host integration collects and sends inventory and metrics from your VMware vSphere environment to New Relic so you can monitor its health. We collect metrics at the datacenter, cluster, host, datastore, and virtual machine levels. - As part of this integration we will install the New Relic Infrastructure agent. -target: - type: on_host_integration - destination: host - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/vmware-vsphere-monitoring-integration/#install diff --git a/install/on-host-integration/winservices/install.yml b/install/on-host-integration/winservices/install.yml deleted file mode 100644 index add25340b2..0000000000 --- a/install/on-host-integration/winservices/install.yml +++ /dev/null @@ -1,20 +0,0 @@ -id: winservices-integration-docs -name: winservices -title: Windows Services -description: | - New Relic's Windows services integration collects data about the services running on your Microsoft Windows hosts and sends it to our platform. - You can check the state and start mode of each service, find out which hosts are running a service, set up alerts for services, and more. - - Our integration is bundled with the Windows infrastructure agent. If you're monitoring Windows hosts on New Relic, you only need to enable the integration to get Windows services data into our platform. - - -level: New Relic - -target: - type: agent - destination: host - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/windows-services-integration/ diff --git a/install/open-source-monitoring/prometheus/install.yml b/install/open-source-monitoring/prometheus/install.yml deleted file mode 100644 index cc103c94c0..0000000000 --- a/install/open-source-monitoring/prometheus/install.yml +++ /dev/null @@ -1,18 +0,0 @@ -id: setup-prometheus -name: Prometheus remote write -title: Prometheus remote write integration -description: Using the Prometheus Remote Write integration, you can point your Prometheus servers at New Relic to store and visualize your data. - -target: - type: agent - destination: application - -install: - mode: nerdlet - destination: - nerdletId: prometheus-remote-write-integration.home - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/prometheus-integrations/get-started/send-prometheus-metric-data-new-relic/ diff --git a/install/prometheus-agent-mode/install.yml b/install/prometheus-agent-mode/install.yml deleted file mode 100644 index 8e08e0ae85..0000000000 --- a/install/prometheus-agent-mode/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: setup-prometheus-agent-mode -name: Prometheus Agent Mode -title: Prometheus Agent Mode -description: Use the Prometheus Agent to scrape Prometheus endpoints in your Kubernetes cluster and send metrics to New Relic using Prometheus remote write. - -target: - type: integration - destination: kubernetes - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/prometheus-integrations/install-configure-prometheus-agent/install-prometheus-agent/ diff --git a/install/redisenterprise/install.yml b/install/redisenterprise/install.yml deleted file mode 100644 index 82edc8d53f..0000000000 --- a/install/redisenterprise/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-redisenterprise -name: RedisEnterprise -title: Redis Enterprise -description: | - Provides deep insight into the Redis Enterprise Software offering detailed cluster, database and Active/Active metrics - -target: - type: integration - destination: host - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/redis/redis-enterprise-integration/ diff --git a/install/security/install.yml b/install/security/install.yml deleted file mode 100644 index cdae86b4df..0000000000 --- a/install/security/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: security-api-install -name: New Relic Security API -title: Import Security Scanner Events with New Relic Security API -description: | - Import scanner data on your schedule using New Relic's Security API - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/vulnerability-management/integrations/security-api diff --git a/install/solutions-hub/dashboards/install.yml b/install/solutions-hub/dashboards/install.yml deleted file mode 100644 index 3b7464db4c..0000000000 --- a/install/solutions-hub/dashboards/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: solutions-hub-dashboards -name: New Relic Solutions Hub -title: New Relic Solutions Hub -description: New Relic's solution framework offers a repeatable and proven approach to help you do just that. Using proven best practices and expert guidance, your organization can move faster, stay on course, and transform successfully. - - -target: - type: unknown - destination: unknown - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/new-relic-solutions/overview diff --git a/install/synthetics/private-locations/install.yml b/install/synthetics/private-locations/install.yml deleted file mode 100644 index bdc74f5a94..0000000000 --- a/install/synthetics/private-locations/install.yml +++ /dev/null @@ -1,17 +0,0 @@ -id: synthetics-private-locations - -name: Synthetics Private Locations - -title: Synthetics private locations dashboard example - -description: Get started monitoring your private locations with a best practices dashboard. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: >- - https://docs.newrelic.com/docs/synthetics/synthetic-monitoring/private-locations/monitor-private-locations/ diff --git a/install/telemetry-data-platform/install.yml b/install/telemetry-data-platform/install.yml deleted file mode 100644 index 30836e9c58..0000000000 --- a/install/telemetry-data-platform/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: telemetry-data-platform -name: New Relic Telemetry Data Platform -title: New Relic Telemetry Data Platform -description: | - Manage telemetry data coming into New Relic. -target: - type: unknown - destination: unknown - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/telemetry-data-platform/manage-data/manage-data-coming-new-relic/ diff --git a/install/third-party/Contentsquare/install.yml b/install/third-party/Contentsquare/install.yml deleted file mode 100644 index 2e79fbbe97..0000000000 --- a/install/third-party/Contentsquare/install.yml +++ /dev/null @@ -1,19 +0,0 @@ -id: third-party-contentsquare -name: Contentsquare -title: Contentsquare -description: | - Contentsquare is a powerful, yet easy-to-use, digital experience analytics - platform that collects and quantifies user behavior across all your digital - properties showing you what users like, what they don’t like, where they - struggle, and why they leave. - Contentsquare surfaces opportunities to improve your customer experience - automatically and easily so you can increase your conversion rates, improve - customer loyalty, reduce costs and drive revenue. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://uxanalyser.zendesk.com/hc/en-gb/articles/4408893503122-New-Relic \ No newline at end of file diff --git a/install/third-party/ads-web-gpt/install.yml b/install/third-party/ads-web-gpt/install.yml deleted file mode 100644 index 28d9a9a880..0000000000 --- a/install/third-party/ads-web-gpt/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: third-party-ads-web-gpt -name: Agent for Google Publisher Tags -title: Agent for Google Publisher Tags -description: | - Agent to monitor web applications using GPT. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://github.com/newrelic/tracker-google-publisher-tags-js diff --git a/install/third-party/ads-web-prebid/install.yml b/install/third-party/ads-web-prebid/install.yml deleted file mode 100644 index a4ac0813ae..0000000000 --- a/install/third-party/ads-web-prebid/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-ads-web-prebid -name: Agent for Prebid -title: Agent for Prebid -description: | - Agent to monitor web applications using Prebid. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://github.com/newrelic/tracker-prebid-js diff --git a/install/third-party/amazon-eks-on-aws-fargate/install.yml b/install/third-party/amazon-eks-on-aws-fargate/install.yml deleted file mode 100644 index 7d65cfac2c..0000000000 --- a/install/third-party/amazon-eks-on-aws-fargate/install.yml +++ /dev/null @@ -1,15 +0,0 @@ -id: third-party-amazon-eks-on-aws-fargate -name: Amazon EKS on AWS Fargate -title: Amazon EKS on AWS Fargate -description: - Telemetry from Kube State Metrics, Kubelet, and cAdvisor for full - observability of Kubernetes clusters running on EKS in Fargate. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/kubernetes-pixie/kubernetes-integration/installation/install-fargate-integration/ \ No newline at end of file diff --git a/install/third-party/ansible/install.yml b/install/third-party/ansible/install.yml deleted file mode 100644 index 1d4749ee72..0000000000 --- a/install/third-party/ansible/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-ansible -name: Ansible -title: Ansible -description: - New Relic Ansible playbook to deploy the New Relic Infrastructure agent and On Host Integrations throughout your environment. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/new-relic-infrastructure/config-management-tools/configure-new-relic-infrastructure-using-ansible \ No newline at end of file diff --git a/install/third-party/apigee-api/install.yml b/install/third-party/apigee-api/install.yml deleted file mode 100644 index 2383b0b930..0000000000 --- a/install/third-party/apigee-api/install.yml +++ /dev/null @@ -1,15 +0,0 @@ -id: third-party-apigee-api -name: Apigee API Distributed Tracing -title: Apigee API Distributed Tracing -description: | - Monitor Apigee API Flows with New Relic's Trace API. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://github.com/newrelic-experimental/apigee-distributed-tracing - diff --git a/install/third-party/atlassian-jira/install.yml b/install/third-party/atlassian-jira/install.yml deleted file mode 100644 index 2c2d7ce2d4..0000000000 --- a/install/third-party/atlassian-jira/install.yml +++ /dev/null @@ -1,15 +0,0 @@ -id: third-party-atlassian-jira -name: Atlassian JIRA -title: Atlassian JIRA -description: | - Jira is a proprietary issue tracking product developed by Atlassian that allows bug tracking and agile project management. You can Integrate New Relic with Atlassian Jira(Cloud) and automatically create and update Jira issues. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: >- - https://docs.newrelic.com/docs/alerts-applied-intelligence/notifications/notification-integrations/#jira - diff --git a/install/third-party/audit-events-analysis/install.yml b/install/third-party/audit-events-analysis/install.yml deleted file mode 100644 index 741a93add9..0000000000 --- a/install/third-party/audit-events-analysis/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-audit-events-analysis -name: New Relic Audit -title: New Relic Audit -description: - Dashboard to analyse the New Relic Audit events - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/data-apis/understand-data/event-data/query-account-audit-logs-nrauditevent/ diff --git a/install/third-party/aws-cloudwatch-plugin-for-logs/install.yml b/install/third-party/aws-cloudwatch-plugin-for-logs/install.yml deleted file mode 100644 index 4d3392972f..0000000000 --- a/install/third-party/aws-cloudwatch-plugin-for-logs/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-aws-cloudwatch-plugin-for-logs -name: AWS Cloudwatch plugin for Logs -title: AWS Cloudwatch plugin for Logs -description: - Collect and manage log data coming in from Amazon's Cloudwatch observability framework. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/logs/enable-log-management-new-relic/enable-log-monitoring-new-relic/aws-lambda-sending-cloudwatch-logs/ \ No newline at end of file diff --git a/install/third-party/aws-firelens-plugin-for-logs/install.yml b/install/third-party/aws-firelens-plugin-for-logs/install.yml deleted file mode 100644 index 5bfebb927e..0000000000 --- a/install/third-party/aws-firelens-plugin-for-logs/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-aws-firelens-plugin-for-logs -name: AWS FireLens plugin for Logs -title: AWS FireLens plugin for Logs -description: - Collect log data and export to AWS or other services for analysis. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/logs/enable-logs/enable-logs/aws-firelens-plugin-logs \ No newline at end of file diff --git a/install/third-party/azure-virtual-machines/install.yml b/install/third-party/azure-virtual-machines/install.yml deleted file mode 100644 index 4c9d504263..0000000000 --- a/install/third-party/azure-virtual-machines/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: third-party-azure-virtual-machines -name: Azure Virtual Machines -title: Azure Virtual Machines -description: | - Monitor Azure Virtual Machines by connecting Azure to New Relic. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://one.newrelic.com/infra/azure?account=1&state=7ce24172-040d-d896-09ea-00f926561d6e \ No newline at end of file diff --git a/install/third-party/bitbucket/install.yml b/install/third-party/bitbucket/install.yml deleted file mode 100644 index 168be4ea6e..0000000000 --- a/install/third-party/bitbucket/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-bitbucket -name: Bitbucket -title: Bitbucket -description: | - With best-in-class Jira integration, and built-in CI/CD, Bitbucket Cloud is the native Git tool in Atlassian’s Open DevOps solution. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://bitbucket.org/product/features/pipelines/integrations?p=jcountsnr/newrelic_observability_event - diff --git a/install/third-party/biztalk360/install.yml b/install/third-party/biztalk360/install.yml deleted file mode 100644 index 5a39ab7c7e..0000000000 --- a/install/third-party/biztalk360/install.yml +++ /dev/null @@ -1,15 +0,0 @@ -id: third-party-biztalk360 -name: BizTalk360 -title: BizTalk360 -description: | - With BizTalk360 quickstart, you get some of the important performance metrics of BizTalk environments in your New Relic dashboard. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: >- - https://docs.biztalk360.com/docs/new-relic-integration - diff --git a/install/third-party/blameless/install.yml b/install/third-party/blameless/install.yml deleted file mode 100644 index e7aaf9d065..0000000000 --- a/install/third-party/blameless/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-blameless -name: Blameless -title: Blameless -description: - Site reliability engineering (SRE) platform with AI-driven incident resolution, SLOs/Error budgets, and reliability insights. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docsend.com/view/29zr6uk9ktuz9ctv \ No newline at end of file diff --git a/install/third-party/bring-your-own/install.yml b/install/third-party/bring-your-own/install.yml deleted file mode 100644 index 25a36fdea9..0000000000 --- a/install/third-party/bring-your-own/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-mlops-bring-your-own -name: Build your own ML Integration -title: Build your own ML Integration -description: | - Bring your own data from any kind of ML stack with this flexible integration framework to keep your data-science projects on track. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://github.com/newrelic-experimental/ml-performance-monitoring - diff --git a/install/third-party/browser-segment-investigation/install.yml b/install/third-party/browser-segment-investigation/install.yml deleted file mode 100644 index b364ec29d4..0000000000 --- a/install/third-party/browser-segment-investigation/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: third-party-browser-segment-investigation -name: Browser Segment Investigation Quickstart -title: Browser Segment Investigation Quickstart -description: | - Review the extent of crushed urls so you know which urls you need to add segments for in the browser segment allow list. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/new-relic-solutions/observability-maturity/customer-experience/quality-foundation-implementation-guide#validate-browser-url-grouping \ No newline at end of file diff --git a/install/third-party/camel/install.yml b/install/third-party/camel/install.yml deleted file mode 100644 index 1fa058efb6..0000000000 --- a/install/third-party/camel/install.yml +++ /dev/null @@ -1,15 +0,0 @@ -id: third-party-camel -name: Apache Camel Java Agent Extension -title: Apache Camel Java Agent Extension -description: | - Java agent extension to monitor instrumentation for the Apache Camel framework. - Once installed, the instrumentation will enable visibility parts of your Camel flows up in transaction traces. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://github.com/newrelic-experimental/newrelic-java-camel diff --git a/install/third-party/catchpoint/install.yml b/install/third-party/catchpoint/install.yml deleted file mode 100644 index 81b4fd64c6..0000000000 --- a/install/third-party/catchpoint/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-catchpoint-quickstart -name: Catchpoint -title: Catchpoint -description: - This quickstart uses Catchpoint Test Data Webhook to send data to the New Relic Platform, this is accomplished by using New Relic’s Metrics API. You can visualize Catchpoint's digital experience data with New Relic’s Application Performance Monitoring (APM) data together. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://github.com/catchpoint/Integrations.NewRelic \ No newline at end of file diff --git a/install/third-party/chef/install.yml b/install/third-party/chef/install.yml deleted file mode 100644 index e7070fd862..0000000000 --- a/install/third-party/chef/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-chef -name: Chef -title: Chef -description: - New Relic Chef recipe to deploy the New Relic Infrastructure agent and On Host Integrations throughout your environment. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/new-relic-infrastructure/config-management-tools/configure-new-relic-infrastructure-using-chef diff --git a/install/third-party/circleci/install.yml b/install/third-party/circleci/install.yml deleted file mode 100644 index fd28852f7d..0000000000 --- a/install/third-party/circleci/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-circleci -name: CircleCi -title: CircleCI -description: - Provides views to track the performance and health of your continuous integration and deployment pipelines. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/logs/forward-logs/circleci-logs/ diff --git a/install/third-party/cli/install.yml b/install/third-party/cli/install.yml deleted file mode 100644 index 0db5062cfb..0000000000 --- a/install/third-party/cli/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-newrelic-cli -name: New Relic CLI -title: New Relic CLI -description: | - Access the New Relic platform from the comfort of your terminal. You can use the New Relic CLI to manage entity tags, define workloads, record deployment markers, and much more. In short, you can use the CLI to automate common tasks in your DevOps workflow. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://developer.newrelic.com/automate-workflows/get-started-new-relic-cli/ \ No newline at end of file diff --git a/install/third-party/cloudflare/install.yml b/install/third-party/cloudflare/install.yml deleted file mode 100644 index 3a3d8d289c..0000000000 --- a/install/third-party/cloudflare/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: third-party-cloudflare -name: Cloudflare -title: Cloudflare network logs -description: | - The Cloudflare quickstart will enable you to monitor and analyze web traffic metrics. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/logs/forward-logs/cloudflare-logpush-forwarding diff --git a/install/third-party/confluent-cloud/install.yml b/install/third-party/confluent-cloud/install.yml deleted file mode 100644 index 893582ae70..0000000000 --- a/install/third-party/confluent-cloud/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-confluent-cloud -name: ConfluentCloud -title: Confluent Cloud Managed Kafka -description: | - Observability for Confluent Cloud's fully managed service for Apache Kafka on New Relic delivered using the OpenTelemetry Collector -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: >- - https://github.com/newrelic/newrelic-opentelemetry-examples/tree/main/other-examples/collector/confluentcloud \ No newline at end of file diff --git a/install/third-party/cordova/install.yml b/install/third-party/cordova/install.yml deleted file mode 100644 index d51f742418..0000000000 --- a/install/third-party/cordova/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-cordova -name: Cordova -title: Cordova -description: - Use New Relic Mobile monitoring to monitor your Cordova apps. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/mobile-monitoring/new-relic-mobile-cordova-phonegap/get-started/introduction-new-relic-cordova diff --git a/install/third-party/coredns/install.yml b/install/third-party/coredns/install.yml deleted file mode 100644 index a2f78fe289..0000000000 --- a/install/third-party/coredns/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-coredns -name: CoreDNS -title: CoreDNS Prometheus Monitoring -description: | - Visualize CoreDNS performance and alert on potential errors. CoreDNS is a critical Kubernetes cluster component and can be difficult to troubleshoot in an error scenario. Download New Relic CoreDNS quickstart to increase cluster visibility. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://coredns.io/plugins/metrics/ diff --git a/install/third-party/cribl-stream/install.yml b/install/third-party/cribl-stream/install.yml deleted file mode 100644 index de5493661b..0000000000 --- a/install/third-party/cribl-stream/install.yml +++ /dev/null @@ -1,19 +0,0 @@ -id: third-party-cribl-stream -name: Cribl Stream -title: Cribl Stream -description: | - Cribl Stream helps you process machine data – logs, instrumentation data, application data, metrics, etc. – in real time, and deliver them to your analysis platform of choice. - - It allows you to: - Add context to your data, by enriching it with information from external data sources. - Help secure your data, by redacting, obfuscating, or encrypting sensitive fields. - Optimize your data, per your performance and cost requirements. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.cribl.io/docs/destinations-newrelic diff --git a/install/third-party/dapr/install.yml b/install/third-party/dapr/install.yml deleted file mode 100644 index 3f9601cdb3..0000000000 --- a/install/third-party/dapr/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: third-party-dapr -name: Dapr -title: Dapr -description: | - Dapr is a portable, event-driven runtime that makes it easy for any developer to build resilient, stateless and stateful applications that run on the cloud and edge and embraces the diversity of languages and developer frameworks. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.dapr.io/operations/monitoring/tracing/newrelic/ diff --git a/install/third-party/databricks/install.yml b/install/third-party/databricks/install.yml deleted file mode 100644 index 312b21f1f7..0000000000 --- a/install/third-party/databricks/install.yml +++ /dev/null @@ -1,16 +0,0 @@ -id: third-party-databricks -name: Databricks -title: Databricks integration -description: | - Databricks is an orchestration platform for Apache Spark. Instantly monitor Databricks Spark applications with our New Relic Spark integration quickstart. Our integration provides a script run in a notebook to generate an installation script, which you can attach to a cluster and populate Spark metrics to New relic Insights events. Easily track the health of your Databricks clusters, fine-tune your Spark jobs for peak performance, and troubleshoot problems with this quickstart. - -target: - type: integration - destination: cloud - -level: Community - -install: - mode: link - destination: - url: https://github.com/newrelic-experimental/nri-spark#databricks-init-script-creator-notebook diff --git a/install/third-party/datastream2-akamai/install.yml b/install/third-party/datastream2-akamai/install.yml deleted file mode 100644 index 5336de932a..0000000000 --- a/install/third-party/datastream2-akamai/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-datastream2-akamai -name: DataStream 2 -title: Akamai DataStream 2 -description: - DataStream 2 captures performance and security logs from your delivery properties and streams them in real-time to provide complete monitoring. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://techdocs.akamai.com/datastream2/docs/stream-new-relic diff --git a/install/third-party/datazoom/install.yml b/install/third-party/datazoom/install.yml deleted file mode 100644 index afdc6ef980..0000000000 --- a/install/third-party/datazoom/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-datazoom -name: Datazoom -title: Datazoom -description: | - The Datazoom quickstart will help you gain insights into your viewers streaming video experience. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://help.datazoom.io/hc/en-us/articles/360022667532-New-Relic-One diff --git a/install/third-party/dbmarlin/install.yml b/install/third-party/dbmarlin/install.yml deleted file mode 100644 index 9e0af8c7f3..0000000000 --- a/install/third-party/dbmarlin/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: third-party-dbmarlin -name: dbmarlin -title: DBmarlin -description: | - View database performance from within New Relic with this integration with DBmarlin. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.dbmarlin.com/docs/integrations/newrelic diff --git a/install/third-party/deeper-network/install.yml b/install/third-party/deeper-network/install.yml deleted file mode 100644 index 47d2001306..0000000000 --- a/install/third-party/deeper-network/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-deeper-network -name: Deeper Network -title: Deeper Network monitoring guide -description: | - This guide details how to use and install the `deeper-cli` to integrate and monitor your Deeper Connect devices with New Relic. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://github.com/Kav91/deeper-connect-monitoring diff --git a/install/third-party/delphix/install.yml b/install/third-party/delphix/install.yml deleted file mode 100644 index 82820969b8..0000000000 --- a/install/third-party/delphix/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-delphix -name: Delphix -title: Delphix Integration -description: | - The Delphix integration allows users to import data from the Delphix Platform to monitor usage and trigger the creation of RCA environments. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://github.com/delphix/dct-newrelic-integration diff --git a/install/third-party/docker/install.yml b/install/third-party/docker/install.yml deleted file mode 100644 index 0b3584ff20..0000000000 --- a/install/third-party/docker/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-docker -name: Docker -title: Docker -description: - Monitoring Docker is critical to get instant performance metrics for containerized applications across your entire environment. Install New Relic Docker monitoring quickstart to proactively instrument Docker with New Relic integration. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/new-relic-infrastructure/data-instrumentation/docker-instrumentation-infrastructure \ No newline at end of file diff --git a/install/third-party/dropwizard/install.yml b/install/third-party/dropwizard/install.yml deleted file mode 100644 index 6e74e1ae17..0000000000 --- a/install/third-party/dropwizard/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: third-party-dropwizard -name: Dropwizard -title: Dropwizard -description: - Send your Dropwizard telemetry to New Relic. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/integrations/open-source-telemetry-integrations/open-source-telemetry-integration-list/new-relics-dropwizard-integration \ No newline at end of file diff --git a/install/third-party/ejb-session-beans/install.yml b/install/third-party/ejb-session-beans/install.yml deleted file mode 100644 index 68a1430ef9..0000000000 --- a/install/third-party/ejb-session-beans/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: third-party-ejb-session-beans -name: EJB Session Beans -title: EJB Session Beans -description: Monitor EJB session beans with New Relic's Java agent - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/apm/agents/java-agent/getting-started/compatibility-requirements-java-agent/ \ No newline at end of file diff --git a/install/third-party/elasticsearch-query/install.yml b/install/third-party/elasticsearch-query/install.yml deleted file mode 100644 index 139b62cab6..0000000000 --- a/install/third-party/elasticsearch-query/install.yml +++ /dev/null @@ -1,15 +0,0 @@ -id: third-party-elasticsearch-query -name: Elasticsearch query Java Agent Extension -title: Elasticsearch query Java Agent Extension -description: | - Java agent extension to monitor elasticsearch queries as dataStore queries with New Relic. - Once deployed elasticsearch queries begin to show up in the New Relic UI under Databases for the application using elasticsearch queries. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://github.com/newrelic-experimental/newrelic-java-elasticsearch diff --git a/install/third-party/event-api/install.yml b/install/third-party/event-api/install.yml deleted file mode 100644 index 3e2f38646c..0000000000 --- a/install/third-party/event-api/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-event-api -name: Event API -title: Event API -description: - The New Relic Event API is one way to report custom events to New Relic. The Event API lets you send custom event data to your New Relic account with a POST command. These events are then queryable and chartable using NRQL. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/telemetry-data-platform/ingest-apis/introduction-event-api/ \ No newline at end of file diff --git a/install/third-party/f5/install.yml b/install/third-party/f5/install.yml deleted file mode 100644 index df1ac9a279..0000000000 --- a/install/third-party/f5/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-f5 -name: f5 -title: F5 -description: | - F5 is a family of software and hardware products designed around application availability, access control, and security. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/f5-monitoring-integration/ \ No newline at end of file diff --git a/install/third-party/fastly/install.yml b/install/third-party/fastly/install.yml deleted file mode 100644 index 4702ac573c..0000000000 --- a/install/third-party/fastly/install.yml +++ /dev/null @@ -1,16 +0,0 @@ -id: third-party-fastly -name: Fastly -title: Fastly CDN logs -description: | - With Fastly’s powerful edge cloud platform, developers get the tools they need to build the most groundbreaking apps — all optimized for speed, security, and scale — so businesses can effectively transform to compete in today’s markets. Together, we’re building the future of the web. - - To help you tune the performance of your Fastly services, we support real-time log streaming of data that passes through Fastly. We support a number of protocols that allow you to stream logs to New Relic Logs. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.fastly.com/en/guides/log-streaming-newrelic-logs diff --git a/install/third-party/fluent-bit-plugin-for-logs/install.yml b/install/third-party/fluent-bit-plugin-for-logs/install.yml deleted file mode 100644 index 78ba33e4bb..0000000000 --- a/install/third-party/fluent-bit-plugin-for-logs/install.yml +++ /dev/null @@ -1,15 +0,0 @@ -id: third-party-fluent-bit-plugin-for-logs -name: Fluent Bit plugin for Logs -title: Fluent Bit plugin for Logs -description: | - Open source and multi-platform Log Processor and Forwarder which allows you to - collect data/logs from different sources. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/logs/forward-logs/fluent-bit-plugin-log-forwarding/ diff --git a/install/third-party/fluentd-plugin-for-logs/install.yml b/install/third-party/fluentd-plugin-for-logs/install.yml deleted file mode 100644 index 00636c652d..0000000000 --- a/install/third-party/fluentd-plugin-for-logs/install.yml +++ /dev/null @@ -1,20 +0,0 @@ -id: third-party-fluentd-plugin-for-logs -name: Fluentd plugin for Logs -title: Fluentd plugin for Logs -description: | - Open source data collector, which lets you unify the data collection and - consumption for a better use and understanding of data. - -target: - type: integration - destination: cloud - -install: - mode: nerdlet - destination: - nerdletId: instrument-everything-logs.setup-fluentd - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/logs/forward-logs/fluentd-plugin-log-forwarding/ diff --git a/install/third-party/full-story/install.yml b/install/third-party/full-story/install.yml deleted file mode 100644 index b01ee97b2d..0000000000 --- a/install/third-party/full-story/install.yml +++ /dev/null @@ -1,15 +0,0 @@ -id: third-party-full-story -name: Full Story -title: Full Story -description: | - FullStory’s URL session replay. See users’ views of errors and performance - issues alongside essential details flowing through New Relic. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://partners.fullstory.com/integrations/solution/925/new-relic# diff --git a/install/third-party/gcp-pubsub/install.yml b/install/third-party/gcp-pubsub/install.yml deleted file mode 100644 index 0e50b125f3..0000000000 --- a/install/third-party/gcp-pubsub/install.yml +++ /dev/null @@ -1,15 +0,0 @@ -id: third-party-gcp-pubsub -name: Google Cloud Pub/Sub Java Agent Extension -title: Google Cloud Pub/Sub Java Agent Extension -description: | - Java agent extension to monitor Google Cloud Pub/Sub with New Relic. Once installed, the instrumentation will monitor both the publish and the subscribe of messages sent via the PubSub framework. - In addition, the instrumentation will take care of distributed tracing so that the publish will provide the distributed tracing headers on the message and the subscribe will read the headers and process them appropriately. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://github.com/newrelic-experimental/newrelic-java-gcp-pubsub \ No newline at end of file diff --git a/install/third-party/gigamon-appinsights/install.yml b/install/third-party/gigamon-appinsights/install.yml deleted file mode 100644 index e9a157ebeb..0000000000 --- a/install/third-party/gigamon-appinsights/install.yml +++ /dev/null @@ -1,18 +0,0 @@ -id: third-party-gigamon-appinsights - -name: Gigamon Application Insights - -title: Gigamon Application Insights - -description: | - Application intelligence is the power to identify, filter, and enrich application data coming from your hybrid cloud. - It directs precise application and metadata flows to security and observability tools for insight into New Relic. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://www.gigamon.com/partners/technology-partners.html#new-relic diff --git a/install/third-party/gigamon/install.yml b/install/third-party/gigamon/install.yml deleted file mode 100644 index 358b786322..0000000000 --- a/install/third-party/gigamon/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-gigamon -name: Gigamon Cloud Observability -title: Gigamon Cloud Observability -description: | - Gigamon helps the world’s leading organizations run fast, stay secure and innovate. We provide the industry’s first elastic visibility and analytics fabric, which closes the cloud visibility gap by enabling cloud tools to see the network and network tools to see the cloud. With visibility across their entire hybrid cloud network, organizations can improve customer experience, eliminate security blind spots, and reduce cost and complexity. Gigamon has been awarded over 90 technology patents and enjoys world-class customer satisfaction with more than 4,000 organizations, including over 80 percent of the Fortune 100 and hundreds of government and educational organizations worldwide. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://www.gigamon.com/lp/free-trial/request-live-cloud-demo.html \ No newline at end of file diff --git a/install/third-party/github/install.yml b/install/third-party/github/install.yml deleted file mode 100644 index 260f622aa4..0000000000 --- a/install/third-party/github/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: github-dependabot-install -name: GitHub Dependabot -title: Automatically Import GitHub Dependabot Events -description: | - Set up automatic ingestion of your GitHub Dependabot events by using webhook for ongoing ingestion and historical import for past data. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/vulnerability-management/integrations/dependabot diff --git a/install/third-party/gitlab/install.yml b/install/third-party/gitlab/install.yml deleted file mode 100644 index e876120d5f..0000000000 --- a/install/third-party/gitlab/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-gitlab-integration -name: gitlab -title: Gitlab OpenTelemetry integration -description: | - GitLab is a popular single application for the entire DevOps lifecycle, fulfilling all the fundamentals for CI/CD in one environment. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://github.com/newrelic-experimental/gitlab \ No newline at end of file diff --git a/install/third-party/glassbox/install.yml b/install/third-party/glassbox/install.yml deleted file mode 100644 index 4a570f12bb..0000000000 --- a/install/third-party/glassbox/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-glassbox -name: glassbox -title: Glassbox Digital -description: | - Glassbox empowers organizations to create frictionless digital journeys for their customers. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://support.glassbox.com/hc/en-gb/articles/4405777280401-How-to-Connect-New-Relic diff --git a/install/third-party/grafana-dashboard-migration/install.yml b/install/third-party/grafana-dashboard-migration/install.yml deleted file mode 100644 index 5a74ba60c1..0000000000 --- a/install/third-party/grafana-dashboard-migration/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-grafana-dashboard-migration -name: Grafana Dashboard Migration -title: Grafana Dashboard Migration -description: | - Convert Grafana Prometheus dashboards to New Relic dashboards. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://github.com/newrelic-experimental/nr-grafana-migration \ No newline at end of file diff --git a/install/third-party/grafana-prometheus-integration/install.yml b/install/third-party/grafana-prometheus-integration/install.yml deleted file mode 100644 index 3641853242..0000000000 --- a/install/third-party/grafana-prometheus-integration/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-grafana-prometheus-integration -name: Grafana Prometheus Integration -title: Grafana Prometheus Integration -description: - In Grafana, you can configure New Relic as a Prometheus data source. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/integrations/grafana-integrations/get-started/grafana-support-prometheus-promql/ diff --git a/install/third-party/hashicorp-hcp-consul/install.yml b/install/third-party/hashicorp-hcp-consul/install.yml deleted file mode 100644 index 44562cbc21..0000000000 --- a/install/third-party/hashicorp-hcp-consul/install.yml +++ /dev/null @@ -1,16 +0,0 @@ -id: third-party-hashicorp-hcp-consul -name: HCP Consul -title: HCP Consul Integration -description: | - This guide details how to deploy the HCP Consul integration, to monitor your Hashicorp HCP Consul environment with New Relic. - -target: - type: integration - destination: cloud - -level: Verified - -install: - mode: link - destination: - url: https://github.com/newrelic-experimental/hashicorp-quickstart-annex/tree/main/hcp-consul/ diff --git a/install/third-party/hcp-vault/install.yml b/install/third-party/hcp-vault/install.yml deleted file mode 100644 index ab8e83b27e..0000000000 --- a/install/third-party/hcp-vault/install.yml +++ /dev/null @@ -1,16 +0,0 @@ -id: third-party-hcp-vault -name: HCP Vault -title: HCP Vault Integration -description: | - This guide details how to deploy the HCP Vault integration, to monitor your Hashicorp HCP Vault environment with New Relic. - -target: - type: integration - destination: cloud - -level: Verified - -install: - mode: link - destination: - url: https://developer.hashicorp.com/vault/tutorials/cloud-monitoring/vault-metrics-guide diff --git a/install/third-party/inet-oracle-driver/install.yml b/install/third-party/inet-oracle-driver/install.yml deleted file mode 100644 index 4b0452fd64..0000000000 --- a/install/third-party/inet-oracle-driver/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-inet-oracle-driver -name: Inet Oracle Driver (oranxo) -title: Inet Oracle Driver (oranxo) -description: - Java driver built by Inet for managing Oracle database servers. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/agents/java-agent/getting-started/compatibility-requirements-java-agent diff --git a/install/third-party/jdbc-executebatch/install.yml b/install/third-party/jdbc-executebatch/install.yml deleted file mode 100644 index 1df050d03f..0000000000 --- a/install/third-party/jdbc-executebatch/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-jdbc-executebatch -name: JDBC-ExecuteBatch Java Agent Extension -title: JDBC-ExecuteBatch Java Agent Extension -description: | - Java agent extension to monitor the executeBatch method of the Statement, PreparedStatement and CallableStatement interfaces as a database call. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://github.com/newrelic-experimental/newrelic-java-JDBC-ExecuteBatch \ No newline at end of file diff --git a/install/third-party/jenkins/install.yml b/install/third-party/jenkins/install.yml deleted file mode 100644 index 154fbec6bf..0000000000 --- a/install/third-party/jenkins/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-jenkins-integration -name: Jenkins -title: Jenkins OpenTelemetry integration -description: | - Jenkins is an open source automation server which enables developers around the world to reliably build, test, and deploy their software. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/monitoring-jenkins-ot/ \ No newline at end of file diff --git a/install/third-party/jfrog-platform/install.yml b/install/third-party/jfrog-platform/install.yml deleted file mode 100644 index 44bda59007..0000000000 --- a/install/third-party/jfrog-platform/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-jfrog-platform -name: JFrog Platform -title: JFrog Platform -description: - Observe JFrog Platform and gain insights using New Relic Observability platform - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://jfrog.com/help/r/jfrog-platform-administration-documentation/new-relic \ No newline at end of file diff --git a/install/third-party/jira-errors/install.yml b/install/third-party/jira-errors/install.yml deleted file mode 100644 index 7f2ebb921f..0000000000 --- a/install/third-party/jira-errors/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-jira-errors-inbox -name: Atlassian Jira for Errors Inbox -title: Atlassian Jira for Errors Inbox -description: - Integrated errors inbox with Atlassian Jira (cloud) to easily create tickets for your errors. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/errors-inbox/errors-inbox/#jira \ No newline at end of file diff --git a/install/third-party/kamon/install.yml b/install/third-party/kamon/install.yml deleted file mode 100644 index 44619c95bc..0000000000 --- a/install/third-party/kamon/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-kamon -name: Kamon -title: Kamon -description: - Send telemetry data from your Kamon-instrumented applications to your New Relic account. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/integrations/open-source-telemetry-integrations/open-source-telemetry-integration-list/kamon-reporter diff --git a/install/third-party/kentik/install.yml b/install/third-party/kentik/install.yml deleted file mode 100644 index 89d1e1edf1..0000000000 --- a/install/third-party/kentik/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-kentik-firehose -name: Kentik Firehose -title: Kentik Firehose -description: | - Kentik is built around the Kentik Data Engine (KDE), which gathers flow records (e.g. NetFlow or sFlow) sent by your data sources (network devices, hosts, clouds) and enriches them with additional data (SNMP, GeoIP, BGP, threat feeds, etc.) before storing them (redundantly) in a time-series database. Kentik Firehose provides the ability to simultaneously send the same enriched flow records that are ingested by KDE to a location of your choice, which enables you to integrate the data into other (non-Kentik) analytics systems, either directly or through a data lake. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://kb.kentik.com/v0/Fc19.htm#Fc19-Firehose_Overview \ No newline at end of file diff --git a/install/third-party/lacework/install.yml b/install/third-party/lacework/install.yml deleted file mode 100644 index ee94e5561e..0000000000 --- a/install/third-party/lacework/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-lacework-integration -name: Lacework -title: Lacework integration -description: | - Lacework is a comprehensive cloud security platform. We aim to turn security into a data problem and replace the frictionful processes for things like breach investigations or achieving compliance standards with simple, contextualized workflows. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.lacework.net/onboarding/new-relic \ No newline at end of file diff --git a/install/third-party/launchdarkly/install.yml b/install/third-party/launchdarkly/install.yml deleted file mode 100644 index 1c12099dee..0000000000 --- a/install/third-party/launchdarkly/install.yml +++ /dev/null @@ -1,15 +0,0 @@ -id: third-party-launchdarkly -name: LaunchDarkly -title: LaunchDarkly -description: | - LaunchDarkly provides simple, scalable feature flag & toggle management - (feature management) for the modern enterprise. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.launchdarkly.com/integrations/new-relic \ No newline at end of file diff --git a/install/third-party/lighthouse/install.yml b/install/third-party/lighthouse/install.yml deleted file mode 100644 index 4875393df4..0000000000 --- a/install/third-party/lighthouse/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-lighthouse -name: Lighthouse -title: Lighthouse -description: - Lighthouse is a simple web-based issue-tracking application. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/using-new-relic/user-interface-functions/share-your-data/ticketing-integrations-lighthouse-pivotal-tracker \ No newline at end of file diff --git a/install/third-party/logs/install.yml b/install/third-party/logs/install.yml deleted file mode 100644 index 88d766dafc..0000000000 --- a/install/third-party/logs/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-logs-api -name: Logs API -title: Logs API -description: - If our logging solutions don't meet your needs, you can use our Log API to send log data directly to New Relic's Log management via an HTTP endpoint. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/logs/log-management/log-api/introduction-log-api/ diff --git a/install/third-party/logstash-plugin-for-logs/install.yml b/install/third-party/logstash-plugin-for-logs/install.yml deleted file mode 100644 index afaa55e65d..0000000000 --- a/install/third-party/logstash-plugin-for-logs/install.yml +++ /dev/null @@ -1,15 +0,0 @@ -id: third-party-logstash-plugin-for-logs -name: Logstash plugin for Logs -title: Logstash plugin for Logs -description: - Open source server-side data processing pipeline for condensing disparate data - sources. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/logs/enable-logs/enable-logs/logstash-plugin-logs diff --git a/install/third-party/metric/install.yml b/install/third-party/metric/install.yml deleted file mode 100644 index 26053af32a..0000000000 --- a/install/third-party/metric/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-metric-api -name: Metric API -title: Metric API -description: | - New Relic's Metric API can be used to send metric data to New Relic from a variety of sources. This API is how metrics from some of our integrations and exporters get into New Relic. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/telemetry-data-platform/ingest-apis/metric-api/introduction-metric-api/ diff --git a/install/third-party/micrometer/install.yml b/install/third-party/micrometer/install.yml deleted file mode 100644 index ea59e4b4d0..0000000000 --- a/install/third-party/micrometer/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-micrometer -name: Micrometer -title: Micrometer -description: - Library for viewing and managing instrumentation clients for popular services and applications. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/integrations/open-source-telemetry-integrations/open-source-telemetry-integration-list/new-relics-micrometer-integration \ No newline at end of file diff --git a/install/third-party/mssql-queryplan/install.yml b/install/third-party/mssql-queryplan/install.yml deleted file mode 100644 index 39cd5deadd..0000000000 --- a/install/third-party/mssql-queryplan/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-mssql-query-plans -name: Microsoft SQL Server Query Plans -title: Microsoft SQL Server Query Plans -description: | - Display MSSQL query plans on your dashboards. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://github.com/newrelic-experimental/nri-mssql-experimental \ No newline at end of file diff --git a/install/third-party/netlify-builds/install.yml b/install/third-party/netlify-builds/install.yml deleted file mode 100644 index dc5171bd4d..0000000000 --- a/install/third-party/netlify-builds/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-netlify -name: Netlify -title: Netlify Builds -description: | - Netlify is an all-in-one platform for automating modern web projects. Replace your hosting infrastructure, continuous integration, and deployment pipeline with a single workflow. Integrate dynamic functionality like serverless functions, user authentication, and form handling as your projects grow. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://www.npmjs.com/package/@newrelic/netlify-plugin#installation diff --git a/install/third-party/netlify-logs/install.yml b/install/third-party/netlify-logs/install.yml deleted file mode 100644 index 3641b25a9e..0000000000 --- a/install/third-party/netlify-logs/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-netlify-logs -name: netlify-logs -title: Netlify Logs -description: | - Netlify is an all-in-one platform for automating modern web projects. Replace your hosting infrastructure, continuous integration, and deployment pipeline with a single workflow. Use this quickstart to quickly parse traffic and function logs from Netlify into meaningful metrics in New Relic. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.netlify.com/monitor-sites/log-drains/ diff --git a/install/third-party/nginx-ingress/install.yml b/install/third-party/nginx-ingress/install.yml deleted file mode 100644 index 2281d25f4d..0000000000 --- a/install/third-party/nginx-ingress/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-nginx-ingress -name: NGINX Ingress Controller -title: NGINX Ingress Controller Prometheus Monitoring -description: | - Visualize NGINX ingress controller performance and alert on potential configuration errors. Download New Relic NGINX ingress controller quickstart to increase visibility into your ingress performance. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://kubernetes.github.io/ingress-nginx/user-guide/monitoring/#prometheus-and-grafana-installation-using-pod-annotations diff --git a/install/third-party/observability-as-code/puppet/install.yml b/install/third-party/observability-as-code/puppet/install.yml deleted file mode 100644 index d0c9cecf0e..0000000000 --- a/install/third-party/observability-as-code/puppet/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-puppet -name: puppet -title: Puppet -description: | - New Relic Puppet module to deploy the New Relic Infrastructure agent and On Host Integrations throughout your environment. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/install-infrastructure-agent/config-management-tools/configure-infrastructure-agent-puppet/ - \ No newline at end of file diff --git a/install/third-party/okhttp/install.yml b/install/third-party/okhttp/install.yml deleted file mode 100644 index 54b5736101..0000000000 --- a/install/third-party/okhttp/install.yml +++ /dev/null @@ -1,15 +0,0 @@ -id: third-party-okhttp -name: OKHTTP -title: OKHTTP -description: - OkHttp is a third-party library developed by Square for sending and receive - HTTP-based network requests. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/mobile-monitoring/new-relic-mobile-android/install-configure/configure-proguard-or-dexguard-android-apps diff --git a/install/third-party/oma-aqm/install.yml b/install/third-party/oma-aqm/install.yml deleted file mode 100644 index 15383ef7f1..0000000000 --- a/install/third-party/oma-aqm/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-alert-quality-management -name: Alert Quality Management -title: Alert Quality Management -description: | - Reduce the volume of nuisance incidents with the Alert Quality Management dashboard and process. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/new-relic-solutions/observability-maturity/uptime-performance-reliability/aqm-implementation-guide/ \ No newline at end of file diff --git a/install/third-party/oma-bofu/install.yml b/install/third-party/oma-bofu/install.yml deleted file mode 100644 index 71249b857c..0000000000 --- a/install/third-party/oma-bofu/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-customer-experience-bottom-funnel-analysis -name: Customer Experience Bottom of the funnel analysis -title: Customer Experience Bottom of the funnel analysis -description: | - Use cart abandonment reduction techniques to improve completion rates of any user journey - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/new-relic-solutions/observability-maturity/customer-experience/bottom-funnel-analysis-customer-journey-guide \ No newline at end of file diff --git a/install/third-party/oma-qf/install.yml b/install/third-party/oma-qf/install.yml deleted file mode 100644 index 8add9d22f7..0000000000 --- a/install/third-party/oma-qf/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-customer-experience-quality-foundation -name: Customer Experience Quality Foundation -title: Customer Experience Quality Foundation -description: | - Focus on the user's experience of performance so you can optimize your site for satisfaction, retention, and conversion - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/new-relic-solutions/observability-maturity/customer-experience/quality-foundation-implementation-guide \ No newline at end of file diff --git a/install/third-party/opencensus/install.yml b/install/third-party/opencensus/install.yml deleted file mode 100644 index 6f8b5542e8..0000000000 --- a/install/third-party/opencensus/install.yml +++ /dev/null @@ -1,15 +0,0 @@ -id: third-party-opencensus -name: OpenCensus -title: OpenCensus -description: - OpenCensus is a set of libraries that allow you to collect application metrics - and distributed traces. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/data-ingest-apis/get-data-new-relic/new-relic-sdks/telemetry-sdks-send-custom-telemetry-data-new-relic diff --git a/install/third-party/opentelemetry/install.yml b/install/third-party/opentelemetry/install.yml deleted file mode 100644 index 18e0420468..0000000000 --- a/install/third-party/opentelemetry/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-opentelemetry -name: OpenTelemetry -title: OpenTelemetry -description: | - OpenTelemetry provides a secure, vendor-neutral specification for service instrumentation so that you can export data to New Relic. OpenTelemetry offers a single set of APIs and libraries that standardize how you collect and transfer telemetry data for your services. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/integrations/open-source-telemetry-integrations/open-source-telemetry-integration-list/new-relics-opentelemetry-integration diff --git a/install/third-party/oracle-database/install.yml b/install/third-party/oracle-database/install.yml deleted file mode 100644 index c6c3193aa8..0000000000 --- a/install/third-party/oracle-database/install.yml +++ /dev/null @@ -1,15 +0,0 @@ -id: third-party-oracledb -name: Oracle Database -title: Oracle Database -description: - Traditional database management system for running online transaction - processing, data warehousing, and mixed database workloads. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/oracledatabase-monitoring-integration diff --git a/install/third-party/pagerduty/install.yml b/install/third-party/pagerduty/install.yml deleted file mode 100644 index c1d4229f5f..0000000000 --- a/install/third-party/pagerduty/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-pagerduty -name: Pagerduty -title: Pagerduty -description: | - PagerDuty provides a SaaS incident response platform for IT departments. Send your New Relic alerts to PagerDuty. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/alerts/new-relic-alerts/managing-notification-channels/notification-channels-control-where-send-alerts diff --git a/install/third-party/perfmon/install.yml b/install/third-party/perfmon/install.yml deleted file mode 100644 index a9b79ed9c4..0000000000 --- a/install/third-party/perfmon/install.yml +++ /dev/null @@ -1,15 +0,0 @@ -id: third-party-perfmon -name: PerfMon -title: PerfMon -description: | - Windows Performance Monitor is a toolkit that enables system performance data - and analytics. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/perfmon-open-source-integration \ No newline at end of file diff --git a/install/third-party/port-monitoring/install.yml b/install/third-party/port-monitoring/install.yml deleted file mode 100644 index adf9a6097f..0000000000 --- a/install/third-party/port-monitoring/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-port-monitoring -name: Port monitoring -title: Port monitoring -description: | - Efficient port monitoring is essential to understand context for status changes and respond quickly. Download the New Relic port monitoring quickstart to track your network port’s critical metrics and improve performance. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/port-monitoring-open-source-integration \ No newline at end of file diff --git a/install/third-party/postman/install.yml b/install/third-party/postman/install.yml deleted file mode 100644 index 5153ae4a39..0000000000 --- a/install/third-party/postman/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-postman -name: Postman -title: Postman -description: - Observe the performance of your APIs using Postman and New Relic - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://learning.postman.com/docs/integrations/available-integrations/new-relic/ diff --git a/install/third-party/pulumi/install.yml b/install/third-party/pulumi/install.yml deleted file mode 100644 index ca05ceb41a..0000000000 --- a/install/third-party/pulumi/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-pulumi -name: Pulumi -title: Pulumi -description: | - Pulumi is a popular infrastructure-as-code software tool. - You use it to provision all kinds of infrastructure and services, including New Relic entities, dashboard, alerts and synthetics. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://www.pulumi.com/registry/packages/newrelic/ \ No newline at end of file diff --git a/install/third-party/quantum-metric/install.yml b/install/third-party/quantum-metric/install.yml deleted file mode 100644 index 4accbf8a1d..0000000000 --- a/install/third-party/quantum-metric/install.yml +++ /dev/null @@ -1,15 +0,0 @@ -id: third-party-quantum-metric -name: Quantum Metric -title: Quantum Metric -description: - Quantum Metric is a platform for continuous product design. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://www.quantummetric.com/partners/integration-new-relic/ - \ No newline at end of file diff --git a/install/third-party/react-native/install.yml b/install/third-party/react-native/install.yml deleted file mode 100644 index ece7722ce0..0000000000 --- a/install/third-party/react-native/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-react-native -name: React Native -title: React Native -description: | - The React Native Quickstart is the ultimate performance monitoring solution for mobile applications. The included dashboards and alerts allow developers to optimize their application’s usability and understand how changes impact its performance. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/mobile-monitoring/new-relic-mobile/get-started/introduction-mobile-monitoring/ - \ No newline at end of file diff --git a/install/third-party/redhat/red-hat-openshift/install.yml b/install/third-party/redhat/red-hat-openshift/install.yml deleted file mode 100644 index 63ab4a70c6..0000000000 --- a/install/third-party/redhat/red-hat-openshift/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-red-hat-openshift -name: Red Hat OpenShift -title: Red Hat OpenShift -description: | - Red Hat OpenShift is a hybrid cloud, enterprise Kubernetes application - platform. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/kubernetes-pixie/kubernetes-integration/installation/kubernetes-integration-install-configure/ diff --git a/install/third-party/releaseiq/install.yml b/install/third-party/releaseiq/install.yml deleted file mode 100644 index 887815fec3..0000000000 --- a/install/third-party/releaseiq/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-releaseiq -name: ReleaseIQ -title: ReleaseIQ -description: | - With ReleaseIQ quickstart, you get application performance information from ReleaseIQ platform in your New Relic dashboard. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://www.releaseiq.io/use-cases/new-relic/ - diff --git a/install/third-party/roku-http-analytics/install.yml b/install/third-party/roku-http-analytics/install.yml deleted file mode 100644 index 782af22cd7..0000000000 --- a/install/third-party/roku-http-analytics/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: third-party-roku-http-analytics -name: Roku HTTP Analytics (optional) -title: Roku HTTP Analytics (optional) -description: | - An HTTP and HTTP Errors analytics experience for Roku to identify and fix networking issues -target: - type: unknown - destination: unknown - -install: - mode: link - destination: - url: https://one.newrelic.com/marketplace?state=cc2a568b-0d2b-8498-aec4-c4230bf4d2a0 diff --git a/install/third-party/roku/install.yml b/install/third-party/roku/install.yml deleted file mode 100644 index 554343daac..0000000000 --- a/install/third-party/roku/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: third-party-roku -name: roku -title: Roku -description: | - The New Relic Roku Agent tracks the behaviour of a Roku App. It contains two parts, one to monitor general system level events and one to monitor video related events, for apps that use a video player. -target: - type: integration - destination: agent - -install: - mode: link - destination: - url: https://github.com/newrelic/video-agent-roku#installation diff --git a/install/third-party/salesforce-eventlog-for-logs/install.yml b/install/third-party/salesforce-eventlog-for-logs/install.yml deleted file mode 100644 index b9b9b7be3b..0000000000 --- a/install/third-party/salesforce-eventlog-for-logs/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-salesforce-eventlog-for-logs -name: Salesforce Event Logs Monitoring -title: Salesforce Event Logs integration for New Relic Logs -description: | - Monitor Salesforce platform performace, security, and user activity using events generated in Salesforce - -target: - type: integration - destination: host - -install: - mode: link - destination: - url: https://github.com/newrelic-experimental/newrelic-logs-salesforce-eventlogfile diff --git a/install/third-party/sendgrid/install.yml b/install/third-party/sendgrid/install.yml deleted file mode 100644 index 51e362ebfd..0000000000 --- a/install/third-party/sendgrid/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-sendgrid-integration -name: Sendgrid -title: SendGrid Events Webhook -description: | - SendGrid provides a cloud-based service that assists businesses with email delivery. In order to integrate SendGrid Events with New Relic, you will need to send SendGrid events by using the SendGrid Event Webhook. If you are already sending events to AWS S3 using the SendGrid Event Webhook, these events can be transferred to New Relic by using NewRelic-log-ingestion-s3. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.sendgrid.com/for-developers/tracking-events/getting-started-event-webhook diff --git a/install/third-party/signl4/install.yml b/install/third-party/signl4/install.yml deleted file mode 100644 index 2a6b7b3f36..0000000000 --- a/install/third-party/signl4/install.yml +++ /dev/null @@ -1,15 +0,0 @@ -id: third-party-signl4 -name: SIGNL4 -title: SIGNL4 -description: | - Mobile alerting SaaS that bridges the last mile from IT systems, machines, and - sensors to engineers, IT staff and workers in the field. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://www.signl4.com/blog/portfolio_item/new_relic_mobile_alerting/ diff --git a/install/third-party/snmp/install.yml b/install/third-party/snmp/install.yml deleted file mode 100644 index 042b1b0b13..0000000000 --- a/install/third-party/snmp/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-snmp -name: Legacy SNMP -title: Legacy SNMP -description: - Monitoring SNMP is important to capture critical network performance metrics. Download the New Relic SNMP quickstart today to proactively monitor the health of your network and understand behaviors within the network. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/snmp-monitoring-integration diff --git a/install/third-party/snyk/install.yml b/install/third-party/snyk/install.yml deleted file mode 100644 index 45497b54e3..0000000000 --- a/install/third-party/snyk/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: third-party-snyk -name: Snyk -title: Snyk -description: | - Snyk is a developer security platform. Integrating directly into development tools, workflows, and automation pipelines, Snyk makes it easy for teams to find, prioritize, and fix security vulnerabilities in code (SAST), dependencies (SCA), containers, and infrastructure as code (IaC). Supported by industry-leading application and security intelligence, Snyk puts security expertise in any developer's toolkit. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.snyk.io/snyk-api-info/snyk-webhooks/using-snyk-webhooks-to-integrate-new-relic-with-snyk-through-an-azure-function-app diff --git a/install/third-party/speedscale/install.yml b/install/third-party/speedscale/install.yml deleted file mode 100644 index 32e8ff8791..0000000000 --- a/install/third-party/speedscale/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-speedscale-integration -name: Speedscale -title: Speedscale integration -description: | - Speedscale is a traffic replay platform. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.speedscale.com/ \ No newline at end of file diff --git a/install/third-party/split/install.yml b/install/third-party/split/install.yml deleted file mode 100644 index 8d5cdc1508..0000000000 --- a/install/third-party/split/install.yml +++ /dev/null @@ -1,15 +0,0 @@ -id: third-party-split -name: Split -title: Split -description: | - A feature delivery platform that powers feature flag management, software - experimentation, and continuous delivery. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://www.split.io/blog/querying-split-impressions-in-new-relic-for-more-insight-into-your-metrics/ \ No newline at end of file diff --git a/install/third-party/statsd/install.yml b/install/third-party/statsd/install.yml deleted file mode 100644 index cb9bd9c352..0000000000 --- a/install/third-party/statsd/install.yml +++ /dev/null @@ -1,15 +0,0 @@ -id: third-party-statsd -name: statsd -title: StatsD -description: | - Lightweight, open-source Node.js application that listens for metrics from - different applications and aggregates them. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/statsd-monitoring-integration-version-2/ diff --git a/install/third-party/synthetics-availability/install.yml b/install/third-party/synthetics-availability/install.yml deleted file mode 100644 index 4c5d081af9..0000000000 --- a/install/third-party/synthetics-availability/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: third-party-synthetics-availability -name: Synthetics Availability (Ping) -title: Synthetics Availability (Ping) -description: Availabilty or Ping monitors are the simplest type of monitor. They simply check to see if an application is online. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/synthetics/synthetic-monitoring/getting-started/get-started-synthetic-monitoring/ \ No newline at end of file diff --git a/install/third-party/synthetics-endpoint-availability/install.yml b/install/third-party/synthetics-endpoint-availability/install.yml deleted file mode 100644 index cb3514e588..0000000000 --- a/install/third-party/synthetics-endpoint-availability/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: third-party-synthetics-endpoint-availability -name: Synthetics Endpoint Availability -title: Synthetics Endpoint Availability -description: Synthetic API tests are used to monitor your API endpoints. This can ensure that your app server works in addition to your website. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/synthetics/synthetic-monitoring/getting-started/get-started-synthetic-monitoring/ \ No newline at end of file diff --git a/install/third-party/synthetics-page-link-crawler/install.yml b/install/third-party/synthetics-page-link-crawler/install.yml deleted file mode 100644 index a6d9e6286e..0000000000 --- a/install/third-party/synthetics-page-link-crawler/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: third-party-synthetics-page-link-crawler -name: Synthetics Page Link Crawler -title: Synthetics Page Link Crawler -description: Monitoring website links is crucial to ensure that you detect broken links and resolve outages swiftly. Download the New Relic Synthetic Link Crawler quickstart to start monitoring your websites for broken links. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/synthetics/synthetic-monitoring/getting-started/get-started-synthetic-monitoring/ \ No newline at end of file diff --git a/install/third-party/synthetics-page-load-performance/install.yml b/install/third-party/synthetics-page-load-performance/install.yml deleted file mode 100644 index de95c1c69e..0000000000 --- a/install/third-party/synthetics-page-load-performance/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: third-party-synthetics-page-load-performance -name: Synthetics Page Load performance -title: Synthetics Page Load performance -description: Full page load of a given URL which provides deep data insights like resource breakdowns and timelines. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/synthetics/synthetic-monitoring/getting-started/get-started-synthetic-monitoring/ \ No newline at end of file diff --git a/install/third-party/synthetics-ssl-certification-check/install.yml b/install/third-party/synthetics-ssl-certification-check/install.yml deleted file mode 100644 index d9b7fea773..0000000000 --- a/install/third-party/synthetics-ssl-certification-check/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: third-party-synthetics-ssl-certification-check -name: Synthetics SSL Certification check -title: Synthetics SSL Certification check -description: Check the expiration and validity period on an SSL certificate of a given domain. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/synthetics/synthetic-monitoring/getting-started/get-started-synthetic-monitoring/ \ No newline at end of file diff --git a/install/third-party/terraform/install.yml b/install/third-party/terraform/install.yml deleted file mode 100644 index 758f355f77..0000000000 --- a/install/third-party/terraform/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-terraform -name: Terraform -title: Terraform -description: Terraform is a popular, infrastructure-as-code software tool built by HashiCorp. - You use it to provision all kinds of infrastructure and services, including New Relic entities, dashboard, alerts and synthetics. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://developer.newrelic.com/terraform/get-started-terraform/ \ No newline at end of file diff --git a/install/third-party/trace/install.yml b/install/third-party/trace/install.yml deleted file mode 100644 index 236bdbc217..0000000000 --- a/install/third-party/trace/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-trace-and-span-api -name: Trace and Span API -title: Trace and Span API -description: | - Our Trace API is used to send distributed tracing data to New Relic: either in our own generic format or the Zipkin data format. This API is also how trace data from some of our integrations and exporters is reported to New Relic. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/distributed-tracing/trace-api/introduction-trace-api/ \ No newline at end of file diff --git a/install/third-party/trendmicro-cloudone-conformity/install.yml b/install/third-party/trendmicro-cloudone-conformity/install.yml deleted file mode 100644 index ecec866d62..0000000000 --- a/install/third-party/trendmicro-cloudone-conformity/install.yml +++ /dev/null @@ -1,18 +0,0 @@ -id: third-party-trendmicro-cloudone-conformity -name: Trend Micro Cloud One - Conformity -title: New Relic’s integration with Trend Micro Cloud One - Conformity -description: | - New Relic’s integration with Trend Micro Cloud One - Conformity ingests cloud security posture management (CSPM) data from Conformity into New Relic in real-time. - The integration deploys a Amazon Web Services (AWS) CloudFormation stack in your AWS account. Bring your Conformity generated CSPM data into New Relic one to contextualize and correlate it with workload telemetry data, delivering AI powered visualizations and quick insights. - Conformity generated CSPM data into New Relic One where it's contextualized and correlated with workload telemetry data delivering AI powered visualizations and quick insights. - -target: - type: integration - destination: cloud - -level: Community - -install: - mode: link - destination: - url: https://github.com/newrelic-experimental/newrelic-connector-trendmicro-cloud-one-conformity#readme diff --git a/install/third-party/unix/install.yml b/install/third-party/unix/install.yml deleted file mode 100644 index 81bc0d027e..0000000000 --- a/install/third-party/unix/install.yml +++ /dev/null @@ -1,15 +0,0 @@ -id: third-party-unix -name: Unix -title: Unix -description: | - The Unix monitoring integration allows for system-level monitoring of AIX, - Linux, macOS, Solaris/SunOS and other Unix-based servers. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/integrations/host-integrations/open-source-host-integrations-list/unix-monitoring-open-source-integration \ No newline at end of file diff --git a/install/third-party/user-flow/install.yml b/install/third-party/user-flow/install.yml deleted file mode 100644 index 2d6236aa94..0000000000 --- a/install/third-party/user-flow/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-synthetics-user-flow -name: Synthetics User Flow check -title: Synthetics User Flow check -description: | - Develop your own customised Synthetics check with a fully scriptable browser test. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/synthetics/synthetic-monitoring/getting-started/get-started-synthetic-monitoring/ \ No newline at end of file diff --git a/install/third-party/user-step-execution/install.yml b/install/third-party/user-step-execution/install.yml deleted file mode 100644 index a8b0402f0b..0000000000 --- a/install/third-party/user-step-execution/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-synthetics-user-step-execution -name: Synthetics User Step Execution -title: Synthetics User Step Execution -description: | - Zero code Synthetics monitor building - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/synthetics/synthetic-monitoring/getting-started/get-started-synthetic-monitoring/ \ No newline at end of file diff --git a/install/third-party/vercel/install.yml b/install/third-party/vercel/install.yml deleted file mode 100644 index e08501e3c6..0000000000 --- a/install/third-party/vercel/install.yml +++ /dev/null @@ -1,12 +0,0 @@ -id: third-party-vercel -name: Vercel -title: Vercel logs -description: | - The Vercel quickstart will help monitor your end-to-end platform for developers. -target: - type: integration - destination: cloud -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/logs/forward-logs/vercel-integration/ \ No newline at end of file diff --git a/install/third-party/video-android/install.yml b/install/third-party/video-android/install.yml deleted file mode 100644 index b23902b15b..0000000000 --- a/install/third-party/video-android/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-video-android -name: Video agent for Android -title: Video agent for Android -description: - Agent to monitor video applications for Android. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://github.com/newrelic/video-agent-android diff --git a/install/third-party/video-chromecast/install.yml b/install/third-party/video-chromecast/install.yml deleted file mode 100644 index 61ac828e75..0000000000 --- a/install/third-party/video-chromecast/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-video-chromecast -name: Video agent for Chromecast -title: Video agent for Chromecast -description: | - Agent to monitor video applications for Chromecast devices. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://github.com/newrelic/video-caf-js \ No newline at end of file diff --git a/install/third-party/video-ios-tvos/install.yml b/install/third-party/video-ios-tvos/install.yml deleted file mode 100644 index d8e08e6a0b..0000000000 --- a/install/third-party/video-ios-tvos/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-video-ios-tvos -name: Video agent for iOS and tvOS -title: Video agent for iOS and tvOS -description: | - Agent to monitor video applications for iOS and tvOS. -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://github.com/newrelic/video-agent-iOS - diff --git a/install/third-party/vmware-tanzu/install.yml b/install/third-party/vmware-tanzu/install.yml deleted file mode 100644 index 55cebb4235..0000000000 --- a/install/third-party/vmware-tanzu/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: third-party-vmware-tanzu -name: VMWare Tanzu -title: VMWare Tanzu -description: Kubernetes management built and maintained by VMWare. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/more-integrations/cloudfoundry-integrations/vmware-tanzu-firehose-nozzle-integration/ \ No newline at end of file diff --git a/install/third-party/xMatters/install.yml b/install/third-party/xMatters/install.yml deleted file mode 100644 index 86f6d98273..0000000000 --- a/install/third-party/xMatters/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-xmatters -name: xMatters -title: xMatters -description: | - Set up automated alerts for detecting and responding to events and critical issues in xMatters and send your data to New Relic. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/alerts-applied-intelligence/new-relic-alerts/alert-notifications/notification-channels-control-where-send-alerts/ diff --git a/install/third-party/xamarin/install.yml b/install/third-party/xamarin/install.yml deleted file mode 100644 index 8ca20bf76d..0000000000 --- a/install/third-party/xamarin/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: third-party-xamarin -name: Xamarin bindings to New Relic's Mobile SDK -title: Xamarin bindings to New Relic's Mobile SDK -description: This project provides Xamarin bindings for New Relic's iOS and Android SDK's - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://github.com/newrelic-experimental/newrelic-xamarin-binding \ No newline at end of file diff --git a/install/third-party/zebrium/install.yml b/install/third-party/zebrium/install.yml deleted file mode 100644 index dd68877c77..0000000000 --- a/install/third-party/zebrium/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-zebrium -name: Zebrium -title: Zebrium Root Cause as a Service -description: | - Zebrium Root Cause as a Service reduces downtime by helping users find the root cause of problems more quickly. It works by using statistical machine learning on logs and achieves a proven accuracy rate of 95%. This is done without any manual training or rules. When there's a problem, you can now automatically see the root cause directly on any New Relic dashboard. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.zebrium.com/docs/monitoring/newrelic_autodetect diff --git a/install/third-party/zenduty/install.yml b/install/third-party/zenduty/install.yml deleted file mode 100644 index 6507d2d05b..0000000000 --- a/install/third-party/zenduty/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: third-party-zenduty -name: Zenduty -title: Zenduty -description: | - Zenduty provides robust incident response, automation and notification abilities when you send your New Relic alerts to Zenduty. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.zenduty.com/docs/newrelic diff --git a/install/third-party/zipkin/install.yml b/install/third-party/zipkin/install.yml deleted file mode 100644 index ac65382c98..0000000000 --- a/install/third-party/zipkin/install.yml +++ /dev/null @@ -1,13 +0,0 @@ -id: third-party-zipkin -name: Zipkin -title: Zipkin -description: Send Zipkin-format traces to New Relic. - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/distributed-tracing/trace-api/report-zipkin-format-traces-trace-api/ \ No newline at end of file diff --git a/install/trivy/install.yml b/install/trivy/install.yml deleted file mode 100644 index 63390e5ee3..0000000000 --- a/install/trivy/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: trivy-api-install -name: Trivy API Integration -title: Import Trivy vulnerabilities with New Relic Security API -description: | - Import Trivy results on your schedule using New Relic's Security API - -target: - type: integration - destination: cloud - -install: - mode: link - destination: - url: https://docs.newrelic.com/docs/vulnerability-management/integrations/trivy/ \ No newline at end of file diff --git a/install/video/akamai/install.yml b/install/video/akamai/install.yml deleted file mode 100644 index 24bca74841..0000000000 --- a/install/video/akamai/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: video-web-akamai -name: Akamai Media Player Tracker -title: Akamai Media Player Tracker -description: | - New Relic's open-source Akamai Media Player Tracker. - -target: - type: agent - destination: application - -install: - mode: link - destination: - url: https://github.com/newrelic/video-akamai-js#requirements diff --git a/install/video/html5/install.yml b/install/video/html5/install.yml deleted file mode 100644 index b7a8e998d1..0000000000 --- a/install/video/html5/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: video-web-html5 -name: Html5 Player Tracker -title: Html5 Player Tracker -description: | - New Relic's open-source Html5 Player Tracker. - -target: - type: agent - destination: application - -install: - mode: link - destination: - url: https://github.com/newrelic/video-html5-js diff --git a/install/video/jwplayer/install.yml b/install/video/jwplayer/install.yml deleted file mode 100644 index ffb7c341e5..0000000000 --- a/install/video/jwplayer/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: video-web-jwplayer -name: JW Player Tracker -title: JW Player Tracker -description: | - New Relic's open-source JW Player Tracker. - -target: - type: agent - destination: application - -install: - mode: link - destination: - url: https://github.com/newrelic/video-jwplayer-js diff --git a/install/video/theplatform/install.yml b/install/video/theplatform/install.yml deleted file mode 100644 index dde60c85f7..0000000000 --- a/install/video/theplatform/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: video-web-theplatform -name: thePlatform Player Tracker -title: thePlatform Player Tracker -description: | - New Relic's open-source thePlatform Player Tracker. - -target: - type: agent - destination: application - -install: - mode: link - destination: - url: https://github.com/newrelic/video-theplatform-js diff --git a/install/video/videojs/install.yml b/install/video/videojs/install.yml deleted file mode 100644 index b55bd7f906..0000000000 --- a/install/video/videojs/install.yml +++ /dev/null @@ -1,14 +0,0 @@ -id: video-web-videojs -name: Video.js Tracker -title: Video.js Tracker -description: | - New Relic's open-source Video.js Tracker. - -target: - type: agent - destination: application - -install: - mode: link - destination: - url: https://github.com/newrelic/video-videojs-js diff --git a/quickstarts/ads/web/ads-web-gpt/config.yml b/quickstarts/ads/web/ads-web-gpt/config.yml index 8c47904572..861db856aa 100644 --- a/quickstarts/ads/web/ads-web-gpt/config.yml +++ b/quickstarts/ads/web/ads-web-gpt/config.yml @@ -13,8 +13,6 @@ keywords: - tracking - GPT - NR1_addData -installPlans: - - third-party-ads-web-gpt dataSourceIds: - ads-web-gpt documentation: diff --git a/quickstarts/ads/web/ads-web-prebid/config.yml b/quickstarts/ads/web/ads-web-prebid/config.yml index c30f943708..1f61863ce9 100644 --- a/quickstarts/ads/web/ads-web-prebid/config.yml +++ b/quickstarts/ads/web/ads-web-prebid/config.yml @@ -13,8 +13,6 @@ keywords: - tracking - Prebid - NR1_addData -installPlans: - - third-party-ads-web-prebid dataSourceIds: - ads-web-prebid documentation: diff --git a/quickstarts/ai21-labs/config.yml b/quickstarts/ai21-labs/config.yml index c90e5271dd..ec188a8b12 100644 --- a/quickstarts/ai21-labs/config.yml +++ b/quickstarts/ai21-labs/config.yml @@ -18,8 +18,7 @@ description: | summary: | Improve the visibility of your AI21 Labs usage with New Relic AI21 Labs quickstart. icon: logo.png -level: - - New Relic +level: New Relic authors: - New Relic title: AI21 Labs diff --git a/quickstarts/ajax/config.yml b/quickstarts/ajax/config.yml index fdfee80489..b9c845fd54 100644 --- a/quickstarts/ajax/config.yml +++ b/quickstarts/ajax/config.yml @@ -1,5 +1,4 @@ id: ab83f4c2-4e75-4767-8dea-fd6ab940a2dd -displayName: Ajax Requests slug: ajax-example title: Ajax Requests @@ -18,26 +17,23 @@ description: | 4. **Optimize application performance:** By reviewing AJAX requests in New Relic, you can identify opportunities to optimize your application's performance. For example, you may identify slow-loading AJAX requests that can be optimized by reducing the size of the payload or optimizing the code. - + **Distributed tracing with AJAX requests in a microsystem architecture can provide several benefits:** 1. **End-to-end visibility:** Distributed tracing allows you to trace the flow of a request across multiple services in your microsystem architecture. With AJAX requests, you can trace the request from the client-side through to the server-side, allowing you to see the complete end-to-end flow of the request. - + 2. **Performance monitoring:** Distributed tracing can provide valuable insights into the performance of your microsystem architecture. By tracing the flow of requests, you can identify bottlenecks and optimize the performance of your system. - + 3. **Debugging and troubleshooting:** Distributed tracing can make it easier to debug and troubleshoot issues in your microsystem architecture. By tracing the flow of a request, you can quickly identify which service is causing the issue and address it. - + 4. **Root cause analysis:** Distributed tracing can help you identify the root cause of issues in your microsystem architecture. By tracing the flow of requests, you can identify the root cause of a problem and take steps to prevent similar issues from occurring in the future. icon: logo.svg - documentation: - name: Browser description: >- With New Relic One's browser monitoring solution, you get full visibility into the complete webpage life cycle of your application or website url: https://docs.newrelic.com/docs/browser/ -installPlans: - - browser-docs dataSourceIds: - new-relic-browser diff --git a/quickstarts/amazon-bedrock/config.yml b/quickstarts/amazon-bedrock/config.yml index 9bc4be3d79..4196779a48 100644 --- a/quickstarts/amazon-bedrock/config.yml +++ b/quickstarts/amazon-bedrock/config.yml @@ -20,8 +20,7 @@ description: | summary: | Improve the visibility of your Amazon Bedrock usage with New Relic Amazon Bedrock quickstart. icon: logo.png -level: - - New Relic +level: New Relic authors: - New Relic - Jyothi Surampudi @@ -29,7 +28,7 @@ title: Amazon Bedrock documentation: - name: Amazon Bedrock integration using Python description: | - Enhance the performance monitoring and instrumentation of your Amazon Bedrock by using the Python agent. + Enhance the performance monitoring and instrumentation of your Amazon Bedrock by using the Python agent. url: https://docs.newrelic.com/install/python - name: Amazon Bedrock integration using Node.js description: | @@ -54,4 +53,3 @@ alertPolicies: - langchain dashboards: - langchain - diff --git a/quickstarts/android/config.yml b/quickstarts/android/config.yml index 32290861dd..5cbfd7d965 100644 --- a/quickstarts/android/config.yml +++ b/quickstarts/android/config.yml @@ -22,8 +22,6 @@ documentation: Mobile operating system based on a modified Linux kernel and other open source software. url: https://docs.newrelic.com/docs/mobile-monitoring/new-relic-mobile-android/get-started/introduction-new-relic-mobile-android -installPlans: - - android-mobile dataSourceIds: - android keywords: diff --git a/quickstarts/anyscale/config.yml b/quickstarts/anyscale/config.yml index 818e8ddb7f..a00271a8f2 100644 --- a/quickstarts/anyscale/config.yml +++ b/quickstarts/anyscale/config.yml @@ -20,11 +20,10 @@ description: | summary: | Improve the visibility of your Anyscale usage with New Relic Anyscale quickstart. icon: logo.svg -level: - - New Relic +level: New Relic authors: - New Relic -title: Anyscale +title: Anyscale documentation: - name: Anyscale integration documentation description: | diff --git a/quickstarts/apache/config.yml b/quickstarts/apache/config.yml index a4b1da0257..a8500d9d2a 100644 --- a/quickstarts/apache/config.yml +++ b/quickstarts/apache/config.yml @@ -25,7 +25,7 @@ summary: | Check out New Relic's Apache quickstart and gain a more comprehensive understanding of your servers' performance with customized dashboards including: total requests per second, servers reporting, worker status, and more. level: New Relic icon: logo.svg -website: https://httpd.apache.org/ + authors: - New Relic - Jakub Kotkowiak @@ -34,8 +34,6 @@ documentation: description: | Free and open-source cross-platform web server software, released under the terms of Apache License 2.0. url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/apache-monitoring-integration/ -installPlans: - - apache-integration dataSourceIds: - apache keywords: @@ -46,4 +44,4 @@ keywords: dashboards: - apache alertPolicies: - - apache + - apache diff --git a/quickstarts/apdex-optimizer/config.yml b/quickstarts/apdex-optimizer/config.yml index 48b146a02f..16193882b9 100644 --- a/quickstarts/apdex-optimizer/config.yml +++ b/quickstarts/apdex-optimizer/config.yml @@ -12,38 +12,38 @@ description: | ## 1. Apdex Score Overview: - Timeseries chart displaying Apdex scores for each APM application. - Highlights performance trends over time. - + ## 2. Apdex Breakdown: - Detailed breakdown table showcasing Apdex scores for different aspects of your application. - Identifies areas of improvement and potential bottlenecks. - + ## 3. Transaction-level Insights: - In-depth Apdex information on individual transactions. - Pinpoints specific transaction performance for focused optimization. - + ## 4. Threshold Recommendations: - Application Apdex T Value Recommendation table guides optimal threshold settings. - Helps fine-tune Apdex parameters for enhanced performance monitoring. - + ## 5. Transaction Apdex Values: - Transaction Apdex Values table provides granular insights into transaction-level performance. - Enables precise adjustments for optimal user satisfaction. - + ### Actionable Takeaways: - Identify and address performance trends through Apdex score patterns. - Optimize specific transactions based on detailed Apdex insights. - Fine-tune Apdex thresholds for applications to improve overall monitoring effectiveness. - + ### Benefits: - Enhanced visibility into application performance. - Proactive identification of potential issues. - Improved user satisfaction through targeted optimizations. - + This comprehensive Apdex Optimizer dashboard empowers you with actionable data to make informed decisions, ensuring your applications perform at their best. # Displayed in search results and recommendations. Summarizes a quickstarts functionality. summary: | - Comprehensive APM dashboard providing actionable insights, including Apdex scores over time, detailed breakdowns, transaction-level data, and threshold recommendations, empowering users to optimize application performance effectively + Comprehensive APM dashboard providing actionable insights, including Apdex scores over time, detailed breakdowns, transaction-level data, and threshold recommendations, empowering users to optimize application performance effectively # Support level: New Relic | Verified | Community (required) level: New Relic @@ -62,7 +62,7 @@ keywords: # Reference to dashboards to be included in this quickstart dashboards: - apdex-optimizer - + # Documentation references documentation: - name: Apdex @@ -71,7 +71,6 @@ documentation: # Content / Design icon: logo.svg -website: https://www.newrelic.com dataSourceIds: - apdex-optimizer diff --git a/quickstarts/apis/event/config.yml b/quickstarts/apis/event/config.yml index bb0d1e32d3..205035356b 100644 --- a/quickstarts/apis/event/config.yml +++ b/quickstarts/apis/event/config.yml @@ -9,8 +9,6 @@ level: New Relic authors: - New Relic title: Event API -installPlans: - - third-party-event-api dataSourceIds: - event-api documentation: diff --git a/quickstarts/apis/logs/config.yml b/quickstarts/apis/logs/config.yml index 1a1c361b80..7ee187d8f4 100644 --- a/quickstarts/apis/logs/config.yml +++ b/quickstarts/apis/logs/config.yml @@ -9,8 +9,6 @@ level: New Relic authors: - New Relic title: Logs API -installPlans: - - third-party-logs-api dataSourceIds: - logs-api documentation: diff --git a/quickstarts/apis/metric/config.yml b/quickstarts/apis/metric/config.yml index 5234650757..d24951a79d 100644 --- a/quickstarts/apis/metric/config.yml +++ b/quickstarts/apis/metric/config.yml @@ -9,8 +9,6 @@ level: New Relic authors: - New Relic title: Metric API -installPlans: - - third-party-metric-api dataSourceIds: - metric-api documentation: diff --git a/quickstarts/apis/trace/config.yml b/quickstarts/apis/trace/config.yml index 635b8581f5..3137f0f733 100644 --- a/quickstarts/apis/trace/config.yml +++ b/quickstarts/apis/trace/config.yml @@ -14,8 +14,6 @@ documentation: description: | Our Trace API is used to send distributed tracing data to New Relic: either in our own generic format or the Zipkin data format. This API is also how trace data from some of our integrations and exporters is reported to New Relic. url: https://docs.newrelic.com/docs/distributed-tracing/trace-api/introduction-trace-api/ -installPlans: - - third-party-trace-and-span-api dataSourceIds: - trace-and-span-api keywords: diff --git a/quickstarts/apm-change-tracking/config.yml b/quickstarts/apm-change-tracking/config.yml index 65f1e6ecf7..6589f240c8 100644 --- a/quickstarts/apm-change-tracking/config.yml +++ b/quickstarts/apm-change-tracking/config.yml @@ -14,8 +14,6 @@ keywords: - marker - change - tracking -installPlans: - - change-tracking dataSourceIds: - change-tracking documentation: @@ -25,5 +23,3 @@ documentation: icon: logo.svg dashboards: - change-tracking-apm - - \ No newline at end of file diff --git a/quickstarts/apm-logs/config.yml b/quickstarts/apm-logs/config.yml index 6c3014bf92..eeb1de7e6f 100644 --- a/quickstarts/apm-logs/config.yml +++ b/quickstarts/apm-logs/config.yml @@ -13,8 +13,6 @@ authors: keywords: - logs - APM -installPlans: - - apm-logs dataSourceIds: - guided-install documentation: diff --git a/quickstarts/apm-signals/config.yml b/quickstarts/apm-signals/config.yml index 021f58f37c..88a61df587 100644 --- a/quickstarts/apm-signals/config.yml +++ b/quickstarts/apm-signals/config.yml @@ -9,37 +9,36 @@ title: APM Signals # Long-form description of the quickstart (required) description: | **APM Signals Dashboard** - + ## 1. Traffic: - This metric measures the volume of incoming requests to the application. The current throughput, or the number of requests processed per minute, is compared to the previous day's throughput. An increase in throughput suggests a higher demand or traffic on the application compared to the previous day. - + ## 2. Latency: - Latency refers to the time it takes for a request to be processed by the application. It's typically measured as the average time taken for requests to receive a response. The current average latency is compared to the previous day's average latency. A slightly lower latency indicates a marginal improvement in the application's responsiveness. - + ## 3. Errors: - Error rate represents the percentage of requests that result in errors or failures. A stable error rate indicates that the application is consistently handling requests without a significant increase in failures compared to the previous day. - + ## 4. Apdex: - Apdex (Application Performance Index) is a metric that evaluates user satisfaction based on response times. It quantifies users' satisfaction by categorizing response times as satisfactory, tolerable, or frustrating. A high Apdex score, such as 0.96, indicates that the majority of users are experiencing satisfactory response times. - + ## 5. Transaction Apdex Values: - Transaction Apdex Values table provides granular insights into transaction-level performance. - Enables precise adjustments for optimal user satisfaction. - + ### Actionable Takeaways: - Identify and address performance trends through Apdex score patterns. - Optimize specific transactions based on detailed Apdex insights. - Fine-tune Apdex thresholds for applications to improve overall monitoring effectiveness. - + ### Benefits: - Investigating increased traffic and ensuring infrastructure can handle the load. - Looking into latency spikes to determine specific events or underlying issues. - Monitoring error rates for unusual increases indicating application problems. - # Displayed in search results and recommendations. Summarizes a quickstarts functionality. summary: | - Comprehensive APM dashboard providing actionable insights, including Throughout, Latency, Error Rate & Apdex. + Comprehensive APM dashboard providing actionable insights, including Throughout, Latency, Error Rate & Apdex. # Support level: New Relic | Verified | Community (required) level: New Relic @@ -59,17 +58,15 @@ keywords: # Reference to dashboards to be included in this quickstart dashboards: - apm-signals - + # Documentation references documentation: - name: apm url: https://docs.newrelic.com/docs/apm/apm-monitoring/get-started/get-started-apm-monitoring/ description: With apm monitoring, modern operations teams get complete observability of complex and hybrid systems, from a datacenter to thousands of Amazon, Google Cloud, or Azure instances. - # Content / Design icon: logo.svg -website: https://www.newrelic.com dataSourceIds: - apm-signals diff --git a/quickstarts/apm-transaction-analysis/config.yaml b/quickstarts/apm-transaction-analysis/config.yaml index 9119153a7d..30663fe83b 100644 --- a/quickstarts/apm-transaction-analysis/config.yaml +++ b/quickstarts/apm-transaction-analysis/config.yaml @@ -21,6 +21,6 @@ documentation: url: https://docs.newrelic.com/docs/apm/transactions/intro-transactions/transactions-new-relic-apm/ description: Transactions in New Relic's APM icon: logo.svg -website: https://www.newrelic.com + dashboards: - apm-transaction-analysis diff --git a/quickstarts/apollo/apollo-server/config.yml b/quickstarts/apollo/apollo-server/config.yml index d0738b661b..47a259fac2 100644 --- a/quickstarts/apollo/apollo-server/config.yml +++ b/quickstarts/apollo/apollo-server/config.yml @@ -36,8 +36,6 @@ keywords: - fastify - lambda - NR1_addData -installPlans: - - node-agent dashboards: - apollo-server dataSourceIds: @@ -50,4 +48,3 @@ documentation: url: https://github.com/newrelic/newrelic-node-apollo-server-plugin/blob/main/README.md description: New Relic's official Apollo Server plugin for use with the Node.js agent. icon: logo.png -website: https://www.apollographql.com/ diff --git a/quickstarts/argocd/config.yml b/quickstarts/argocd/config.yml index 010e3d88ec..ced93ec4e6 100644 --- a/quickstarts/argocd/config.yml +++ b/quickstarts/argocd/config.yml @@ -52,9 +52,6 @@ keywords: - grafana - featured - NR1_addData -installPlans: - - setup-prometheus - - setup-prometheus-agent-mode dataSourceIds: - prometheus - prometheus-agent-mode diff --git a/quickstarts/atlassian/atlassian-jira/config.yml b/quickstarts/atlassian/atlassian-jira/config.yml index 6101de43d9..ffc0f448ab 100644 --- a/quickstarts/atlassian/atlassian-jira/config.yml +++ b/quickstarts/atlassian/atlassian-jira/config.yml @@ -41,6 +41,6 @@ keywords: # Content / Design icon: logo.png -website: https://www.atlassian.com/ + dataSourceIds: - atlassian-jira diff --git a/quickstarts/atlassian/bitbucket/config.yml b/quickstarts/atlassian/bitbucket/config.yml index 1b49e23050..1f1088f444 100644 --- a/quickstarts/atlassian/bitbucket/config.yml +++ b/quickstarts/atlassian/bitbucket/config.yml @@ -10,7 +10,7 @@ description: | ### About this quickstart - This quickstart is built around a [Bitbucket Pipe](https://bitbucket.org/product/features/pipelines/integrations) integration. This tool will enable you to send CI/CD events into New Relic, where you can monitor your Bitbucket Pipelines. + This quickstart is built around a [Bitbucket Pipe](https://bitbucket.org/product/features/pipelines/integrations) integration. This tool will enable you to send CI/CD events into New Relic, where you can monitor your Bitbucket Pipelines. With this visualization you can monitor: - Number of events/pipeline builds @@ -30,8 +30,6 @@ keywords: - pipeline - NR1_addData - NR1_sys -installPlans: - - third-party-bitbucket dataSourceIds: - bitbucket documentation: @@ -39,6 +37,6 @@ documentation: url: https://bitbucket.org/product/features/pipelines/integrations?p=jcountsnr/newrelic_observability_event description: Bitbucket pipe integration to send an event to New Relic from your Bitbucket pipeline. icon: logo.svg -website: https://bitbucket.org/ + dashboards: - bitbucket diff --git a/quickstarts/audit/account-data-ingestion-analysis/config.yml b/quickstarts/audit/account-data-ingestion-analysis/config.yml index a593f0ac4b..bfa1dd743d 100644 --- a/quickstarts/audit/account-data-ingestion-analysis/config.yml +++ b/quickstarts/audit/account-data-ingestion-analysis/config.yml @@ -13,8 +13,6 @@ authors: keywords: - data - ingest -installPlans: - - telemetry-data-platform dataSourceIds: - telemetry-data-platform documentation: @@ -23,4 +21,3 @@ documentation: description: Manage data coming into New Relic dashboards: - data-ingestion-breakdown - diff --git a/quickstarts/audit/audit-events-analysis/config.yaml b/quickstarts/audit/audit-events-analysis/config.yaml index c5015b3bdd..577e08f870 100644 --- a/quickstarts/audit/audit-events-analysis/config.yaml +++ b/quickstarts/audit/audit-events-analysis/config.yaml @@ -26,8 +26,6 @@ keywords: - new relic - NR1_addData - NR1_sys -installPlans: - - third-party-audit-events-analysis dataSourceIds: - audit-events-analysis documentation: diff --git a/quickstarts/audit/infrastructure-integrations-data-analysis/config.yml b/quickstarts/audit/infrastructure-integrations-data-analysis/config.yml index 35d6173f44..3ce683f2f9 100644 --- a/quickstarts/audit/infrastructure-integrations-data-analysis/config.yml +++ b/quickstarts/audit/infrastructure-integrations-data-analysis/config.yml @@ -23,8 +23,6 @@ keywords: - pixie - NR1_addData - NR1_sys -installPlans: - - telemetry-data-platform dataSourceIds: - telemetry-data-platform documentation: @@ -33,11 +31,9 @@ documentation: description: | New Relic Data Management Hub icon: logo.svg -website: https://www.newrelic.com dashboards: - aws-integrations-data-ingest-analysis - azure-integrations-data-ingest-analysis - gcp-integrations-data-ingest-analysis - kubernetes-data-ingest-analysis - on-host-integrations-data-analysis - diff --git a/quickstarts/audit/k8s-log-ingestion-analysis/config.yaml b/quickstarts/audit/k8s-log-ingestion-analysis/config.yaml index bf5fec2edd..77b494f77e 100644 --- a/quickstarts/audit/k8s-log-ingestion-analysis/config.yaml +++ b/quickstarts/audit/k8s-log-ingestion-analysis/config.yaml @@ -41,8 +41,6 @@ documentation: description: | Kubernetes plugin for log forwarding -installPlans: - - kubernetes-install dataSourceIds: - kubernetes dashboards: diff --git a/quickstarts/audit/log-ingestion-analysis/config.yml b/quickstarts/audit/log-ingestion-analysis/config.yml index 14330a371f..c322e626fd 100644 --- a/quickstarts/audit/log-ingestion-analysis/config.yml +++ b/quickstarts/audit/log-ingestion-analysis/config.yml @@ -15,8 +15,6 @@ keywords: - data - NR1_addData - NR1_sys -installPlans: - - logs-default dataSourceIds: - logs-default documentation: @@ -25,7 +23,5 @@ documentation: description: | New Relic offers a fast, scalable log management platform so you can connect your logs with the rest of your telemetry and infrastructure data in a single place. icon: logo.svg -website: https://www.newrelic.com dashboards: - log-analysis - diff --git a/quickstarts/audit/network-data-ingest-and-cardinality-analysis/config.yml b/quickstarts/audit/network-data-ingest-and-cardinality-analysis/config.yml index 37eddc51c0..593f864c96 100644 --- a/quickstarts/audit/network-data-ingest-and-cardinality-analysis/config.yml +++ b/quickstarts/audit/network-data-ingest-and-cardinality-analysis/config.yml @@ -22,8 +22,6 @@ keywords: - newrelic partner - NR1_addData - NR1_sys -installPlans: - - network-performance-monitoring dataSourceIds: - network-data-ingest-and-cardinality documentation: diff --git a/quickstarts/awadb/config.yml b/quickstarts/awadb/config.yml index 402c4e7715..e3212615f8 100644 --- a/quickstarts/awadb/config.yml +++ b/quickstarts/awadb/config.yml @@ -17,8 +17,7 @@ description: | summary: | Monitor your Vector search's performance and quality with New Relic AwaDB quickstart icon: logo.png -level: - - New Relic +level: New Relic authors: - New Relic - Ramana Reddy @@ -43,4 +42,4 @@ keywords: alertPolicies: - langchain-vectordb dashboards: - - langchain-vectordb \ No newline at end of file + - langchain-vectordb diff --git a/quickstarts/aws/amazon-api-gateway/config.yml b/quickstarts/aws/amazon-api-gateway/config.yml index b3b764c716..416d950789 100644 --- a/quickstarts/aws/amazon-api-gateway/config.yml +++ b/quickstarts/aws/amazon-api-gateway/config.yml @@ -38,7 +38,5 @@ keywords: - NR1_addData dashboards: - amazon-api-gateway -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/amazon-athena/config.yml b/quickstarts/aws/amazon-athena/config.yml index 4d8c9a0bcd..b5c5c5a1bf 100644 --- a/quickstarts/aws/amazon-athena/config.yml +++ b/quickstarts/aws/amazon-athena/config.yml @@ -36,8 +36,6 @@ keywords: - aws - amazon web services - database -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams dashboards: diff --git a/quickstarts/aws/amazon-aurora/config.yml b/quickstarts/aws/amazon-aurora/config.yml index 1907427acf..d83b0b6551 100644 --- a/quickstarts/aws/amazon-aurora/config.yml +++ b/quickstarts/aws/amazon-aurora/config.yml @@ -36,8 +36,6 @@ keywords: - rds - aurora - NR1_addData -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams dashboards: diff --git a/quickstarts/aws/amazon-cloudfront-logs/config.yml b/quickstarts/aws/amazon-cloudfront-logs/config.yml index 806246f750..f7ddf92d2f 100644 --- a/quickstarts/aws/amazon-cloudfront-logs/config.yml +++ b/quickstarts/aws/amazon-cloudfront-logs/config.yml @@ -7,13 +7,13 @@ description: |- ### Get started! - Start monitoring Amazon CloudFront by sending your Amazon Cloudfront Web Logs to New Relic. + Start monitoring Amazon CloudFront by sending your Amazon Cloudfront Web Logs to New Relic. Check out our Amazon CloudFront documentation to instrument your cloud service and manage the stability, scalability, and reliability of your systems with New Relic's Log monitoring capabilities. ### More info - Check out the [documentation](https://docs.newrelic.com/docs/logs/forward-logs/cloudfront-web-logs/) to learn more about New Relic monitoring for Amazon CloudFront. + Check out the [documentation](https://docs.newrelic.com/docs/logs/forward-logs/cloudfront-web-logs/) to learn more about New Relic monitoring for Amazon CloudFront. summary: Monitor Amazon CloudFront Web logs in New Relic icon: logo.svg level: New Relic @@ -39,8 +39,6 @@ keywords: - NR1_sys dashboards: - amazon-cloudfront-web-logs -installPlans: - - amazon-cloudfront-web-logs dataSourceIds: - aws-cloudfront-logs alertPolicies: diff --git a/quickstarts/aws/amazon-cloudfront/config.yml b/quickstarts/aws/amazon-cloudfront/config.yml index 4b7a619a88..5bbf738c97 100644 --- a/quickstarts/aws/amazon-cloudfront/config.yml +++ b/quickstarts/aws/amazon-cloudfront/config.yml @@ -19,7 +19,5 @@ keywords: - web content dashboards: - amazon-cloudfront -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/amazon-cloudwatch-application-signals/config.yml b/quickstarts/aws/amazon-cloudwatch-application-signals/config.yml new file mode 100644 index 0000000000..d844997c72 --- /dev/null +++ b/quickstarts/aws/amazon-cloudwatch-application-signals/config.yml @@ -0,0 +1,39 @@ +id: cc4e9f92-310e-414b-869b-a85a7fdc0ffa +slug: amazon-cloudwatch-application-signals +description: |- + ## Monitor your Amazon CloudWatch Application Signals Metrics + + With New Relic's Amazon CloudWatch Application Signals integration, you can monitor the performance of your services running on AWS. + + ### Get started! + + Check out the [AWS documentation](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Application-Monitoring-Sections.html) to learn more about monitoring with Application Signals. + ## About this integration + + Set up AWS CloudWatch Application Signals to monitor services running in EKS, or EC2. + + - Visualize your top request count faceted by the operation or path + - Keep track of any high latency based on operation or path + - Analyze the top faults faceted by operation or path + +summary: Use New Relic - Amazon CloudWatch Application Signals Integration to monitor your AWS hosted services. +icon: logo.png +level: New Relic +authors: + - New Relic +title: Amazon CloudWatch Application Signals +documentation: + - name: Amazon CloudWatch Application Signals installation docs + description: | + Monitor AWS hosted services by monitoring with Amazon CloudWatch Application Signals + url: https://docs.newrelic.com/docs/infrastructure/amazon-integrations/aws-integrations-list/amazon-cloudwatch-application-signals/ +keywords: + - aws + - amazon web services + - Amazon CloudWatch Application Signals + - active network monitoring + - NR1_addData +dataSourceIds: + - amazon-cloudwatch-metric-streams +dashboards: + - amazon-cloudwatch-application-signals \ No newline at end of file diff --git a/quickstarts/aws/amazon-cloudwatch-application-signals/logo.png b/quickstarts/aws/amazon-cloudwatch-application-signals/logo.png new file mode 100644 index 0000000000..ad6a49be35 Binary files /dev/null and b/quickstarts/aws/amazon-cloudwatch-application-signals/logo.png differ diff --git a/quickstarts/aws/amazon-cloudwatch-metric-streams/config.yml b/quickstarts/aws/amazon-cloudwatch-metric-streams/config.yml index 67f475fe46..cdd3fe055d 100644 --- a/quickstarts/aws/amazon-cloudwatch-metric-streams/config.yml +++ b/quickstarts/aws/amazon-cloudwatch-metric-streams/config.yml @@ -25,7 +25,5 @@ documentation: keywords: - aws - amazon web services -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/amazon-cognito/config.yml b/quickstarts/aws/amazon-cognito/config.yml index db4c226dd3..ed1ee48b55 100644 --- a/quickstarts/aws/amazon-cognito/config.yml +++ b/quickstarts/aws/amazon-cognito/config.yml @@ -19,7 +19,5 @@ documentation: icon: logo.svg dashboards: - amazon-cognito -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/amazon-connect/config.yml b/quickstarts/aws/amazon-connect/config.yml index 31742f7faf..bb38537ddb 100644 --- a/quickstarts/aws/amazon-connect/config.yml +++ b/quickstarts/aws/amazon-connect/config.yml @@ -19,7 +19,5 @@ documentation: icon: logo.svg dashboards: - amazon-connect -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/amazon-documentdb/config.yml b/quickstarts/aws/amazon-documentdb/config.yml index 4d54bd457a..e3f7f66192 100644 --- a/quickstarts/aws/amazon-documentdb/config.yml +++ b/quickstarts/aws/amazon-documentdb/config.yml @@ -28,7 +28,5 @@ documentation: icon: logo.svg dashboards: - amazon-documentdb -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/amazon-dynamodb/config.yml b/quickstarts/aws/amazon-dynamodb/config.yml index 0ba0414783..26e97eb136 100644 --- a/quickstarts/aws/amazon-dynamodb/config.yml +++ b/quickstarts/aws/amazon-dynamodb/config.yml @@ -30,8 +30,6 @@ documentation: icon: logo.svg dashboards: - amazon-dynamodb -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams alertPolicies: diff --git a/quickstarts/aws/amazon-ebs/config.yml b/quickstarts/aws/amazon-ebs/config.yml index 34740cbc10..3b91d49f82 100644 --- a/quickstarts/aws/amazon-ebs/config.yml +++ b/quickstarts/aws/amazon-ebs/config.yml @@ -20,7 +20,5 @@ documentation: icon: logo.svg dashboards: - amazon-ebs -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/amazon-ec2/config.yml b/quickstarts/aws/amazon-ec2/config.yml index d505615461..de334d580f 100644 --- a/quickstarts/aws/amazon-ec2/config.yml +++ b/quickstarts/aws/amazon-ec2/config.yml @@ -19,8 +19,6 @@ documentation: icon: logo.svg dashboards: - amazon-ec2 -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams alertPolicies: diff --git a/quickstarts/aws/amazon-ecs/config.yml b/quickstarts/aws/amazon-ecs/config.yml index 76a9c15666..220126a2ec 100644 --- a/quickstarts/aws/amazon-ecs/config.yml +++ b/quickstarts/aws/amazon-ecs/config.yml @@ -20,7 +20,5 @@ documentation: icon: logo.svg dashboards: - amazon-ecs -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/amazon-efs/config.yml b/quickstarts/aws/amazon-efs/config.yml index 8c89847cde..3e6789c2d2 100644 --- a/quickstarts/aws/amazon-efs/config.yml +++ b/quickstarts/aws/amazon-efs/config.yml @@ -19,7 +19,5 @@ documentation: icon: logo.svg dashboards: - amazon-efs -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/amazon-eks-on-aws-fargate/config.yml b/quickstarts/aws/amazon-eks-on-aws-fargate/config.yml index 2e1e038b56..ea682065f2 100644 --- a/quickstarts/aws/amazon-eks-on-aws-fargate/config.yml +++ b/quickstarts/aws/amazon-eks-on-aws-fargate/config.yml @@ -20,7 +20,5 @@ keywords: - kubernetes - k8s - NR1_addData -installPlans: - - third-party-amazon-eks-on-aws-fargate dataSourceIds: - amazon-eks-on-aws-fargate diff --git a/quickstarts/aws/amazon-elasticache/config.yml b/quickstarts/aws/amazon-elasticache/config.yml index 747e6c5d4f..d35df3d471 100644 --- a/quickstarts/aws/amazon-elasticache/config.yml +++ b/quickstarts/aws/amazon-elasticache/config.yml @@ -20,7 +20,5 @@ icon: logo.svg dashboards: - amazon-elasticache-redis - amazon-elasticache-memcached -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/amazon-elasticsearch/config.yml b/quickstarts/aws/amazon-elasticsearch/config.yml index 41b5a0ea0f..bb58140a83 100644 --- a/quickstarts/aws/amazon-elasticsearch/config.yml +++ b/quickstarts/aws/amazon-elasticsearch/config.yml @@ -33,7 +33,5 @@ keywords: - amazon web services dashboards: - amazon-elasticsearch -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/amazon-emr/config.yml b/quickstarts/aws/amazon-emr/config.yml index b2b59af215..45d34bb4ef 100644 --- a/quickstarts/aws/amazon-emr/config.yml +++ b/quickstarts/aws/amazon-emr/config.yml @@ -33,7 +33,5 @@ keywords: - analytics dashboards: - amazon-emr -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/amazon-fsx/config.yml b/quickstarts/aws/amazon-fsx/config.yml index b0fc9988fc..57b11b4273 100644 --- a/quickstarts/aws/amazon-fsx/config.yml +++ b/quickstarts/aws/amazon-fsx/config.yml @@ -37,7 +37,5 @@ keywords: - windows file server dashboards: - amazon-fsx -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/amazon-kinesis-firehose/config.yml b/quickstarts/aws/amazon-kinesis-firehose/config.yml index 2434551997..95dbf0ec5c 100644 --- a/quickstarts/aws/amazon-kinesis-firehose/config.yml +++ b/quickstarts/aws/amazon-kinesis-firehose/config.yml @@ -34,8 +34,6 @@ keywords: - aws - amazon web services - NR1_addData -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams dashboards: diff --git a/quickstarts/aws/amazon-kinesis/config.yml b/quickstarts/aws/amazon-kinesis/config.yml index 41582e0c7c..a77fbeaf6e 100644 --- a/quickstarts/aws/amazon-kinesis/config.yml +++ b/quickstarts/aws/amazon-kinesis/config.yml @@ -34,7 +34,5 @@ keywords: - amazon web services dashboards: - amazon-kinesis -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/amazon-linux/config.yml b/quickstarts/aws/amazon-linux/config.yml index d26a0b5406..7a290716de 100644 --- a/quickstarts/aws/amazon-linux/config.yml +++ b/quickstarts/aws/amazon-linux/config.yml @@ -27,8 +27,6 @@ keywords: - os - operating system - NR1_addData -installPlans: - - guided-install dataSourceIds: - guided-install dashboards: diff --git a/quickstarts/aws/amazon-mq/config.yml b/quickstarts/aws/amazon-mq/config.yml index 0a4ed0de07..640404dec4 100644 --- a/quickstarts/aws/amazon-mq/config.yml +++ b/quickstarts/aws/amazon-mq/config.yml @@ -11,7 +11,7 @@ description: |- Check out our Amazon MQ documentation to instrument your cloud service and manage the stability, scalability, and reliability of your systems with New Relic's infrastructure monitoring capabilities. - ### More info + ### More info Check out the [documentation](https://docs.newrelic.com/docs/infrastructure/amazon-integrations/aws-integrations-list/aws-mq-integration/) to learn more about New Relic monitoring for Amazon MQ. @@ -32,8 +32,6 @@ keywords: - messaging - queue -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams dashboards: diff --git a/quickstarts/aws/amazon-msk/config.yml b/quickstarts/aws/amazon-msk/config.yml index 88e3339524..bea7f705cf 100644 --- a/quickstarts/aws/amazon-msk/config.yml +++ b/quickstarts/aws/amazon-msk/config.yml @@ -34,8 +34,6 @@ keywords: - aws - amazon web services - queue -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams dashboards: diff --git a/quickstarts/aws/amazon-mwaa/config.yml b/quickstarts/aws/amazon-mwaa/config.yml index bcfa3ba834..804c9993d6 100644 --- a/quickstarts/aws/amazon-mwaa/config.yml +++ b/quickstarts/aws/amazon-mwaa/config.yml @@ -54,4 +54,3 @@ documentation: # Content / Design icon: logo.svg -website: https://www.newrelic.com diff --git a/quickstarts/aws/amazon-neptune/config.yml b/quickstarts/aws/amazon-neptune/config.yml index e7a7a1b5ea..f8361bfe91 100644 --- a/quickstarts/aws/amazon-neptune/config.yml +++ b/quickstarts/aws/amazon-neptune/config.yml @@ -35,7 +35,5 @@ keywords: - neptune dashboards: - amazon-neptune -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/amazon-qldb/config.yml b/quickstarts/aws/amazon-qldb/config.yml index d809eb3411..0dae785bef 100644 --- a/quickstarts/aws/amazon-qldb/config.yml +++ b/quickstarts/aws/amazon-qldb/config.yml @@ -42,8 +42,6 @@ keywords: - aws - amazon web services - database -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams dashboards: diff --git a/quickstarts/aws/amazon-rds-enhanced/config.yml b/quickstarts/aws/amazon-rds-enhanced/config.yml index 49d28eb2dc..6a10145971 100644 --- a/quickstarts/aws/amazon-rds-enhanced/config.yml +++ b/quickstarts/aws/amazon-rds-enhanced/config.yml @@ -19,7 +19,5 @@ keywords: - NR1_addData dashboards: - amazon-rds -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/amazon-rds/config.yml b/quickstarts/aws/amazon-rds/config.yml index 13a3e5bdb0..fc43590281 100644 --- a/quickstarts/aws/amazon-rds/config.yml +++ b/quickstarts/aws/amazon-rds/config.yml @@ -34,8 +34,6 @@ keywords: - aws - amazon web services - database -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams dashboards: diff --git a/quickstarts/aws/amazon-redshift/config.yml b/quickstarts/aws/amazon-redshift/config.yml index 4c15c846c7..b68aca7d77 100644 --- a/quickstarts/aws/amazon-redshift/config.yml +++ b/quickstarts/aws/amazon-redshift/config.yml @@ -36,7 +36,5 @@ keywords: - redshift dashboards: - amazon-redshift -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/amazon-route53-resolver/config.yml b/quickstarts/aws/amazon-route53-resolver/config.yml index 3edc1c7594..59b2cff762 100644 --- a/quickstarts/aws/amazon-route53-resolver/config.yml +++ b/quickstarts/aws/amazon-route53-resolver/config.yml @@ -20,7 +20,5 @@ keywords: - NR1_addData dashboards: - amazon-route53 -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/amazon-route53/config.yml b/quickstarts/aws/amazon-route53/config.yml index 9cb3fb80fa..3b2f7552cc 100644 --- a/quickstarts/aws/amazon-route53/config.yml +++ b/quickstarts/aws/amazon-route53/config.yml @@ -35,7 +35,5 @@ keywords: - networking dashboards: - amazon-route53 -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/amazon-s3-storagelens/config.yml b/quickstarts/aws/amazon-s3-storagelens/config.yml index 67b37e3b19..36ab80b0b1 100644 --- a/quickstarts/aws/amazon-s3-storagelens/config.yml +++ b/quickstarts/aws/amazon-s3-storagelens/config.yml @@ -31,8 +31,6 @@ keywords: - storage - logs - logging -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams dashboards: diff --git a/quickstarts/aws/amazon-s3/config.yml b/quickstarts/aws/amazon-s3/config.yml index 087f9cab2b..d446d5fb32 100644 --- a/quickstarts/aws/amazon-s3/config.yml +++ b/quickstarts/aws/amazon-s3/config.yml @@ -36,8 +36,6 @@ keywords: - storage - logs - logging -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams dashboards: diff --git a/quickstarts/aws/amazon-security-lake/config.yml b/quickstarts/aws/amazon-security-lake/config.yml index f3059ff107..a11f1fddb1 100644 --- a/quickstarts/aws/amazon-security-lake/config.yml +++ b/quickstarts/aws/amazon-security-lake/config.yml @@ -3,7 +3,7 @@ slug: aws-security-lake description: |- ## What is Amazon Security Lake? - Amazon Security Lake allow you to automatically centralize your security data in just a few steps. + Amazon Security Lake allow you to automatically centralize your security data in just a few steps. ### Get started! @@ -43,7 +43,5 @@ dashboards: - amazon-security-lake-security-hub - amazon-security-lake-route53-resolver-query-logs - amazon-security-lake-cloudtrail-logs -installPlans: - - aws-security-lake dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/amazon-ses/config.yml b/quickstarts/aws/amazon-ses/config.yml index 3cd428d5ee..df5111b965 100644 --- a/quickstarts/aws/amazon-ses/config.yml +++ b/quickstarts/aws/amazon-ses/config.yml @@ -18,7 +18,5 @@ keywords: - messaging dashboards: - amazon-ses -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/amazon-sns/config.yml b/quickstarts/aws/amazon-sns/config.yml index 6150294e38..ef3d0d45ab 100644 --- a/quickstarts/aws/amazon-sns/config.yml +++ b/quickstarts/aws/amazon-sns/config.yml @@ -35,7 +35,5 @@ keywords: - messaging dashboards: - amazon-sns -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/amazon-sqs/config.yml b/quickstarts/aws/amazon-sqs/config.yml index fdcf48a706..79b5e8f2b7 100644 --- a/quickstarts/aws/amazon-sqs/config.yml +++ b/quickstarts/aws/amazon-sqs/config.yml @@ -18,8 +18,6 @@ keywords: - aws - amazon web services - queue -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams dashboards: diff --git a/quickstarts/aws/amazon-web-services/config.yml b/quickstarts/aws/amazon-web-services/config.yml index 193d0fe184..21d4290b39 100644 --- a/quickstarts/aws/amazon-web-services/config.yml +++ b/quickstarts/aws/amazon-web-services/config.yml @@ -34,7 +34,5 @@ keywords: - amazon web services - cloudwatch - cloudwach metric streams -installPlans: - - aws-infrastructure-monitoring dataSourceIds: - amazon-web-services diff --git a/quickstarts/aws/aws-appsync/config.yml b/quickstarts/aws/aws-appsync/config.yml index 70ee829301..f1290afb86 100644 --- a/quickstarts/aws/aws-appsync/config.yml +++ b/quickstarts/aws/aws-appsync/config.yml @@ -37,7 +37,5 @@ keywords: - NR1_addData dashboards: - aws-appsync -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/aws-auto-scaling/config.yml b/quickstarts/aws/aws-auto-scaling/config.yml index f54d071f92..b36174db5f 100644 --- a/quickstarts/aws/aws-auto-scaling/config.yml +++ b/quickstarts/aws/aws-auto-scaling/config.yml @@ -35,7 +35,5 @@ keywords: - auto scaling dashboards: - aws-auto-scaling -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/aws-billing/config.yml b/quickstarts/aws/aws-billing/config.yml index 2c7a890ad8..54939adf6a 100644 --- a/quickstarts/aws/aws-billing/config.yml +++ b/quickstarts/aws/aws-billing/config.yml @@ -11,9 +11,9 @@ description: |- ### Why monitor AWS Billing with New Relic? - With our AWS Billing integration, you can gain visibility into all of your financial data. Our integration aggregates data from different sub-accounts and services and looks at your budgets in actual and forecasted spend. The best part? It’s all in one place. + With our AWS Billing integration, you can gain visibility into all of your financial data. Our integration aggregates data from different sub-accounts and services and looks at your budgets in actual and forecasted spend. The best part? It’s all in one place. - Start ingesting your AWS billing data today and visualize your AWS billing metrics in real-time. + Start ingesting your AWS billing data today and visualize your AWS billing metrics in real-time. summary: Monitoring AWS Billing is critical to effectively track AWS cost and usage. Download the New Relic AWS Billing quickstart to proactively monitor AWS financial data including AWS billing metrics and AWS budget metrics. icon: logo.svg level: New Relic @@ -34,7 +34,5 @@ keywords: - costs dashboards: - aws-billing -installPlans: - - aws-infrastructure-monitoring dataSourceIds: - amazon-web-services diff --git a/quickstarts/aws/aws-cloudformation/config.yml b/quickstarts/aws/aws-cloudformation/config.yml index e9b386eee9..be30e0a87b 100644 --- a/quickstarts/aws/aws-cloudformation/config.yml +++ b/quickstarts/aws/aws-cloudformation/config.yml @@ -31,7 +31,5 @@ keywords: - aws - amazon web services - automation -installPlans: - - aws-infrastructure-monitoring dataSourceIds: - amazon-web-services diff --git a/quickstarts/aws/aws-cloudtrail/config.yml b/quickstarts/aws/aws-cloudtrail/config.yml index e588ceb05d..6a7505b3f6 100644 --- a/quickstarts/aws/aws-cloudtrail/config.yml +++ b/quickstarts/aws/aws-cloudtrail/config.yml @@ -31,7 +31,5 @@ keywords: - aws - amazon web services - security -installPlans: - - aws-infrastructure-monitoring dataSourceIds: - amazon-web-services diff --git a/quickstarts/aws/aws-cloudwatch-plugin-for-logs/config.yml b/quickstarts/aws/aws-cloudwatch-plugin-for-logs/config.yml index c4244e14d0..8e15a67261 100644 --- a/quickstarts/aws/aws-cloudwatch-plugin-for-logs/config.yml +++ b/quickstarts/aws/aws-cloudwatch-plugin-for-logs/config.yml @@ -7,8 +7,6 @@ icon: logo.svg level: New Relic authors: - New Relic -installPlans: - - third-party-aws-cloudwatch-plugin-for-logs dataSourceIds: - amazon-cloudwatch documentation: diff --git a/quickstarts/aws/aws-direct-connect/config.yml b/quickstarts/aws/aws-direct-connect/config.yml index d856b749b2..0264bdfa18 100644 --- a/quickstarts/aws/aws-direct-connect/config.yml +++ b/quickstarts/aws/aws-direct-connect/config.yml @@ -19,7 +19,5 @@ documentation: icon: logo.svg dashboards: - aws-directconnect -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/aws-elastic-beanstalk/config.yml b/quickstarts/aws/aws-elastic-beanstalk/config.yml index c072f56613..9831dfa0a9 100644 --- a/quickstarts/aws/aws-elastic-beanstalk/config.yml +++ b/quickstarts/aws/aws-elastic-beanstalk/config.yml @@ -35,7 +35,5 @@ keywords: - deploy dashboards: - aws-elasticbeanstalk -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/aws-elb/config.yml b/quickstarts/aws/aws-elb/config.yml index b9f0147c2b..8d81d0ca88 100644 --- a/quickstarts/aws/aws-elb/config.yml +++ b/quickstarts/aws/aws-elb/config.yml @@ -32,7 +32,5 @@ keywords: - networking dashboards: - aws-elb -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/aws-elemental-mediaconvert/config.yml b/quickstarts/aws/aws-elemental-mediaconvert/config.yml index e85defefa3..c31f973f22 100644 --- a/quickstarts/aws/aws-elemental-mediaconvert/config.yml +++ b/quickstarts/aws/aws-elemental-mediaconvert/config.yml @@ -33,7 +33,5 @@ keywords: - amazon web services dashboards: - aws-elemental-mediaconvert -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/aws-elemental-mediapackage-vod/config.yml b/quickstarts/aws/aws-elemental-mediapackage-vod/config.yml index 966beb17bc..bf66fe0505 100644 --- a/quickstarts/aws/aws-elemental-mediapackage-vod/config.yml +++ b/quickstarts/aws/aws-elemental-mediapackage-vod/config.yml @@ -30,7 +30,5 @@ documentation: keywords: - aws - amazon web services -installPlans: - - aws-infrastructure-monitoring dataSourceIds: - amazon-web-services diff --git a/quickstarts/aws/aws-enhanced-monitoring/config.yml b/quickstarts/aws/aws-enhanced-monitoring/config.yml index 94d0262122..ac3041bc91 100644 --- a/quickstarts/aws/aws-enhanced-monitoring/config.yml +++ b/quickstarts/aws/aws-enhanced-monitoring/config.yml @@ -36,7 +36,5 @@ documentation: icon: logo.svg dashboards: - aws-lambda -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/aws-firelens-plugin-for-logs/config.yml b/quickstarts/aws/aws-firelens-plugin-for-logs/config.yml index 26e1025126..44ff040548 100644 --- a/quickstarts/aws/aws-firelens-plugin-for-logs/config.yml +++ b/quickstarts/aws/aws-firelens-plugin-for-logs/config.yml @@ -7,8 +7,6 @@ level: New Relic authors: - New Relic title: AWS FireLens plugin for Logs -installPlans: - - third-party-aws-firelens-plugin-for-logs dataSourceIds: - aws-firelens documentation: diff --git a/quickstarts/aws/aws-glue/config.yml b/quickstarts/aws/aws-glue/config.yml index 1a7b329455..29f1f6b339 100644 --- a/quickstarts/aws/aws-glue/config.yml +++ b/quickstarts/aws/aws-glue/config.yml @@ -32,7 +32,5 @@ keywords: - data integration dashboards: - aws-glue -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/aws-health/config.yml b/quickstarts/aws/aws-health/config.yml index 359e66e051..917a3aaefb 100644 --- a/quickstarts/aws/aws-health/config.yml +++ b/quickstarts/aws/aws-health/config.yml @@ -33,7 +33,5 @@ documentation: keywords: - aws - amazon web services -installPlans: - - aws-infrastructure-monitoring dataSourceIds: - amazon-web-services diff --git a/quickstarts/aws/aws-iam/config.yml b/quickstarts/aws/aws-iam/config.yml index d3a6018fd0..f68c6fab0a 100644 --- a/quickstarts/aws/aws-iam/config.yml +++ b/quickstarts/aws/aws-iam/config.yml @@ -35,7 +35,5 @@ keywords: - Identity and access management dashboards: - aws-iam -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/aws-iot/config.yml b/quickstarts/aws/aws-iot/config.yml index 13c181ef41..0dfb4c6cb4 100644 --- a/quickstarts/aws/aws-iot/config.yml +++ b/quickstarts/aws/aws-iot/config.yml @@ -34,7 +34,5 @@ keywords: - amazon web services dashboards: - aws-iot -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/aws-lambda/config.yml b/quickstarts/aws/aws-lambda/config.yml index 6abd58abe1..a6fefb8d17 100644 --- a/quickstarts/aws/aws-lambda/config.yml +++ b/quickstarts/aws/aws-lambda/config.yml @@ -35,8 +35,6 @@ keywords: - amazon web services - serverless - lambda -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams dashboards: diff --git a/quickstarts/aws/aws-nlb-alb/config.yml b/quickstarts/aws/aws-nlb-alb/config.yml index f481e1f3d1..2d25e32503 100644 --- a/quickstarts/aws/aws-nlb-alb/config.yml +++ b/quickstarts/aws/aws-nlb-alb/config.yml @@ -37,7 +37,5 @@ dashboards: - aws-alb - aws-nlb -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/aws-outposts/config.yml b/quickstarts/aws/aws-outposts/config.yml index 255d58b8c3..2ff3fade66 100644 --- a/quickstarts/aws/aws-outposts/config.yml +++ b/quickstarts/aws/aws-outposts/config.yml @@ -30,7 +30,5 @@ documentation: keywords: - aws - amazon web services -installPlans: - - aws-infrastructure-monitoring dataSourceIds: - amazon-web-services diff --git a/quickstarts/aws/aws-security-hub/config.yml b/quickstarts/aws/aws-security-hub/config.yml index 6e14302827..f9df9156e1 100644 --- a/quickstarts/aws/aws-security-hub/config.yml +++ b/quickstarts/aws/aws-security-hub/config.yml @@ -20,7 +20,7 @@ description: | ### More info - Check out the [documentation](https://docs.newrelic.com/docs/vulnerability-management/integrations/aws) to learn more about New Relic ingestion for AWS Security Hub. + Check out the [documentation](https://docs.newrelic.com/docs/vulnerability-management/integrations/aws) to learn more about New Relic ingestion for AWS Security Hub. summary: Ingest AWS Security Hub by connecting AWS to New Relic icon: logo.png level: New Relic @@ -30,8 +30,6 @@ documentation: - name: AWS Security Hub installation docs description: Cloud-based service for detecting vulnerabilities in AWS resources. url: https://docs.newrelic.com/docs/vulnerability-management/integrations/aws -installPlans: - - aws-security-hub-install dataSourceIds: - aws-security-hub keywords: diff --git a/quickstarts/aws/aws-step-functions/config.yml b/quickstarts/aws/aws-step-functions/config.yml index d1439f7d6e..e2fa36050e 100644 --- a/quickstarts/aws/aws-step-functions/config.yml +++ b/quickstarts/aws/aws-step-functions/config.yml @@ -19,7 +19,5 @@ keywords: - serverless dashboards: - aws-step-functions -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/aws-transitgateway/config.yml b/quickstarts/aws/aws-transitgateway/config.yml index 8752f52c4d..56f224bede 100644 --- a/quickstarts/aws/aws-transitgateway/config.yml +++ b/quickstarts/aws/aws-transitgateway/config.yml @@ -19,7 +19,5 @@ keywords: - networking dashboards: - aws-transitgateway -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/aws-trusted-advisor/config.yml b/quickstarts/aws/aws-trusted-advisor/config.yml index a1f5a360e6..8cf1100bf2 100644 --- a/quickstarts/aws/aws-trusted-advisor/config.yml +++ b/quickstarts/aws/aws-trusted-advisor/config.yml @@ -8,7 +8,7 @@ description: |- ### New Relic AWS Trusted Advisor quickstart features - The New Relic AWS Trusted Advisor monitoring quickstart empowers you with our [AWS Trusted Advisor integration](https://docs.newrelic.com/docs/infrastructure/amazon-integrations/aws-integrations-list/aws-trusted-advisor-integration/) to collect data about key metrics, query the data and gain valuable insights. + The New Relic AWS Trusted Advisor monitoring quickstart empowers you with our [AWS Trusted Advisor integration](https://docs.newrelic.com/docs/infrastructure/amazon-integrations/aws-integrations-list/aws-trusted-advisor-integration/) to collect data about key metrics, query the data and gain valuable insights. ### Why monitor AWS Trusted Advisor with New Relic? @@ -16,7 +16,7 @@ description: |- You can activate the integration by following our [standard procedures](https://docs.newrelic.com/docs/infrastructure/infrastructure-integrations/getting-started/connect-aws-integrations-infrastructure) for connecting AWS services to New Relic. The monitoring quickstart helps you to track key AWS Trusted Advisor metrics like AWS region, current usage, limit amount, service limit usage, status, and timestamp. - Install the New Relic AWS Trusted Advisor quickstart today to proactively monitor AWS Trusted Advisor and keep getting quality recommendations that help you follow AWS best practices. + Install the New Relic AWS Trusted Advisor quickstart today to proactively monitor AWS Trusted Advisor and keep getting quality recommendations that help you follow AWS best practices. summary: Monitoring AWS Trusted Advisor is critical to keep getting quality recommendations that help you follow AWS best practices. Download the New Relic quickstart to proactively instrument AWS Trusted Advisor with New Relic infrastructure monitoring capabilities. icon: logo.svg level: New Relic @@ -31,7 +31,5 @@ documentation: keywords: - aws - amazon web services -installPlans: - - aws-infrastructure-monitoring dataSourceIds: - amazon-web-services diff --git a/quickstarts/aws/aws-vpc-flow-logs/config.yml b/quickstarts/aws/aws-vpc-flow-logs/config.yml index 2d3820a669..2c3a415be2 100644 --- a/quickstarts/aws/aws-vpc-flow-logs/config.yml +++ b/quickstarts/aws/aws-vpc-flow-logs/config.yml @@ -37,7 +37,5 @@ keywords: - kinesis firehose - kinesis data firehose - networking -installPlans: - - aws-vpc-flow-logs dataSourceIds: - aws-vpc-flow-logs diff --git a/quickstarts/aws/aws-vpc/config.yml b/quickstarts/aws/aws-vpc/config.yml index 01805c4c91..220b3d4847 100644 --- a/quickstarts/aws/aws-vpc/config.yml +++ b/quickstarts/aws/aws-vpc/config.yml @@ -35,7 +35,5 @@ keywords: - networking dashboards: - amazon-vpc -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/aws-waf/config.yml b/quickstarts/aws/aws-waf/config.yml index dab2a454c4..924c280c66 100644 --- a/quickstarts/aws/aws-waf/config.yml +++ b/quickstarts/aws/aws-waf/config.yml @@ -19,7 +19,5 @@ keywords: dashboards: - aws-waf - aws-wafv2 -installPlans: - - aws-cloudwatch-metric-streams dataSourceIds: - amazon-cloudwatch-metric-streams diff --git a/quickstarts/aws/aws-x-ray/config.yml b/quickstarts/aws/aws-x-ray/config.yml index 7d03434ea7..39f11fdfc0 100644 --- a/quickstarts/aws/aws-x-ray/config.yml +++ b/quickstarts/aws/aws-x-ray/config.yml @@ -31,7 +31,5 @@ keywords: - aws - amazon web services - tracing -installPlans: - - aws-infrastructure-monitoring dataSourceIds: - amazon-web-services diff --git a/quickstarts/azure-openai/config.yml b/quickstarts/azure-openai/config.yml index e83fce6ffa..a0486e06a0 100644 --- a/quickstarts/azure-openai/config.yml +++ b/quickstarts/azure-openai/config.yml @@ -25,11 +25,14 @@ authors: - Yogev Kriger documentation: - - name: Monitor Azure OpenAI + - name: OpenAI integration using Python description: | - A lightweight tool to monitor your Azure OpenAI workload. - url: >- - https://github.com/newrelic/openai-api-monitoring + Enhance the performance monitoring and instrumentation of your OpenAI integration by using the Python agent. + url: https://docs.newrelic.com/install/python + - name: OpenAI integration using Node.js + description: | + Enhance the performance monitoring and instrumentation of your OpenAI integration by using the Node.js agent. + url: https://docs.newrelic.com/docs/apm/agents/nodejs-agent/installation-configuration/install-nodejs-agent keywords: - featured @@ -37,12 +40,11 @@ keywords: - openai - ai - gpt - - mlops - llm - NR1_addData - NR1_sys dataSourceIds: - - azure-openai + - llm-application alertPolicies: - llm-application diff --git a/quickstarts/azure/azure-api-management/config.yml b/quickstarts/azure/azure-api-management/config.yml index bed29b27e1..f3cb277dee 100644 --- a/quickstarts/azure/azure-api-management/config.yml +++ b/quickstarts/azure/azure-api-management/config.yml @@ -13,7 +13,7 @@ description: |- ### More info - Check out the [documentation](https://docs.newrelic.com/docs/infrastructure/microsoft-azure-integrations/azure-integrations-list/azure-api-management-monitoring-integration/) to learn more about New Relic monitoring for Azure API Management. + Check out the [documentation](https://docs.newrelic.com/docs/infrastructure/microsoft-azure-integrations/azure-integrations-list/azure-api-management-monitoring-integration/) to learn more about New Relic monitoring for Azure API Management. summary: Monitor Azure API Management by connecting Azure to New Relic icon: logo.svg level: New Relic @@ -28,7 +28,5 @@ documentation: keywords: - azure - api -installPlans: - - azure-infrastructure-monitoring dataSourceIds: - microsoft-azure diff --git a/quickstarts/azure/azure-app-service/config.yml b/quickstarts/azure/azure-app-service/config.yml index 86540a629e..3d0a268388 100644 --- a/quickstarts/azure/azure-app-service/config.yml +++ b/quickstarts/azure/azure-app-service/config.yml @@ -31,8 +31,6 @@ documentation: keywords: - azure - web -installPlans: - - azure-infrastructure-monitoring dataSourceIds: - microsoft-azure dashboards: diff --git a/quickstarts/azure/azure-containers/config.yml b/quickstarts/azure/azure-containers/config.yml index 4373264dd3..5b5ba8bcf8 100644 --- a/quickstarts/azure/azure-containers/config.yml +++ b/quickstarts/azure/azure-containers/config.yml @@ -13,7 +13,7 @@ description: |- ### More info - Check out the [documentation](https://docs.newrelic.com/docs/infrastructure/microsoft-azure-integrations/azure-integrations-list/azure-containers-monitoring-integration/) to learn more about New Relic monitoring for Azure Containers. + Check out the [documentation](https://docs.newrelic.com/docs/infrastructure/microsoft-azure-integrations/azure-integrations-list/azure-containers-monitoring-integration/) to learn more about New Relic monitoring for Azure Containers. summary: Monitor Azure Containers by connecting Azure to New Relic icon: logo.svg level: New Relic @@ -27,8 +27,6 @@ documentation: keywords: - azure - containers -installPlans: - - azure-infrastructure-monitoring dataSourceIds: - microsoft-azure dashboards: diff --git a/quickstarts/azure/azure-cosmos-db/config.yml b/quickstarts/azure/azure-cosmos-db/config.yml index 93512ed845..4296f1e14b 100644 --- a/quickstarts/azure/azure-cosmos-db/config.yml +++ b/quickstarts/azure/azure-cosmos-db/config.yml @@ -13,7 +13,7 @@ description: |- ### More info - Check out the [documentation](https://docs.newrelic.com/docs/infrastructure/microsoft-azure-integrations/azure-integrations-list/azure-cosmos-db-document-db-monitoring-integration/) to learn more about New Relic monitoring for Azure Cosmos DB. + Check out the [documentation](https://docs.newrelic.com/docs/infrastructure/microsoft-azure-integrations/azure-integrations-list/azure-cosmos-db-document-db-monitoring-integration/) to learn more about New Relic monitoring for Azure Cosmos DB. summary: Monitor Azure Cosmos DB by connecting Azure to New Relic icon: logo.svg level: New Relic @@ -29,8 +29,6 @@ documentation: keywords: - azure - database -installPlans: - - azure-infrastructure-monitoring dataSourceIds: - microsoft-azure dashboards: diff --git a/quickstarts/azure/azure-cost-management/config.yml b/quickstarts/azure/azure-cost-management/config.yml index 9e377efd1b..b4132f4020 100644 --- a/quickstarts/azure/azure-cost-management/config.yml +++ b/quickstarts/azure/azure-cost-management/config.yml @@ -31,8 +31,6 @@ documentation: url: https://docs.newrelic.com/docs/infrastructure/microsoft-azure-integrations/azure-integrations-list/azure-cost-management-monitoring-integration/ keywords: - azure -installPlans: - - azure-infrastructure-monitoring dataSourceIds: - microsoft-azure dashboards: diff --git a/quickstarts/azure/azure-datafactories/config.yml b/quickstarts/azure/azure-datafactories/config.yml index ea261c00a1..b41c9eb1a5 100644 --- a/quickstarts/azure/azure-datafactories/config.yml +++ b/quickstarts/azure/azure-datafactories/config.yml @@ -37,7 +37,5 @@ keywords: - NR1_sys dashboards: - azure-datafactories -installPlans: - - azure-infrastructure-monitoring dataSourceIds: - microsoft-azure diff --git a/quickstarts/azure/azure-event-grid-topics/config.yml b/quickstarts/azure/azure-event-grid-topics/config.yml index 2ecf308b4f..f48f643184 100644 --- a/quickstarts/azure/azure-event-grid-topics/config.yml +++ b/quickstarts/azure/azure-event-grid-topics/config.yml @@ -4,7 +4,7 @@ description: |- ## What is Azure Event Grid Topics? Event Grid is a highly scalable, serverless event broker that you can use to integrate applications using events. Event Grid topic provides an endpoint where the source sends events. A topic is used for a collection of related events. To respond to certain types of events, subscribers decide which topics to subscribe to. - + ### New Relic Azure Event Grid Topics quickstart features A standard dashboard that tracks key indicators like delivery success count, matched event count, publish success count. It runs custom queries and visualizes the data immediately. @@ -13,10 +13,10 @@ description: |- ### Why monitor Azure Event Grid Topics with New Relic? [New Relic Azure Event Grid Topics](https://docs.newrelic.com/docs/infrastructure/microsoft-azure-integrations/azure-integrations-list/azure-event-grid-topics-monitoring-integration/) monitoring quickstart empowers you to track the performance of Azure Batch via different metrics including delivery success count, matched event count, publish success count. - + Our integration features a standard dashboard that provides interactive visualizations to explore your data, understand context and get valuable insights. - - Start ingesting your Azure data today and get immediate access to our visualization dashboards so you can optimize your Azure service. + + Start ingesting your Azure data today and get immediate access to our visualization dashboards so you can optimize your Azure service. summary: |- Monitoring Azure Event Grid Topics is critical to track the performance through key metrics. Download New Relic Azure Event Grid Topics monitoring quickstart to get a pre-built dashboard tailored to monitor your Azure Event Grid Topics Service. icon: logo.png @@ -40,5 +40,5 @@ keywords: - NR1_sys dashboards: - azure-event-grid-topics -dataSourceIDs: +dataSourceIds: - azure-monitor diff --git a/quickstarts/azure/azure-event-hubs/config.yml b/quickstarts/azure/azure-event-hubs/config.yml index e2c16d0ada..a218768bc5 100644 --- a/quickstarts/azure/azure-event-hubs/config.yml +++ b/quickstarts/azure/azure-event-hubs/config.yml @@ -31,7 +31,5 @@ keywords: - azure - NR1_addData - NR1_sys -installPlans: - - azure-infrastructure-monitoring dataSourceIds: - microsoft-azure diff --git a/quickstarts/azure/azure-express-route/config.yml b/quickstarts/azure/azure-express-route/config.yml index b0cfd2ed6e..dfa6168afe 100644 --- a/quickstarts/azure/azure-express-route/config.yml +++ b/quickstarts/azure/azure-express-route/config.yml @@ -30,7 +30,5 @@ documentation: keywords: - azure - networking -installPlans: - - azure-infrastructure-monitoring dataSourceIds: - microsoft-azure diff --git a/quickstarts/azure/azure-functions/config.yml b/quickstarts/azure/azure-functions/config.yml index 15e019f0c2..11101a9c59 100644 --- a/quickstarts/azure/azure-functions/config.yml +++ b/quickstarts/azure/azure-functions/config.yml @@ -33,8 +33,6 @@ keywords: - serverless - NR1_addData - NR1_sys -installPlans: - - azure-infrastructure-monitoring dataSourceIds: - microsoft-azure dashboards: diff --git a/quickstarts/azure/azure-key-vault/config.yml b/quickstarts/azure/azure-key-vault/config.yml index 77bfbacd21..66d2671f88 100644 --- a/quickstarts/azure/azure-key-vault/config.yml +++ b/quickstarts/azure/azure-key-vault/config.yml @@ -13,7 +13,7 @@ description: |- ### More info - Check out the [documentation](https://docs.newrelic.com/docs/infrastructure/microsoft-azure-integrations/azure-integrations-list/azure-key-vault-monitoring-integration) to learn more about New Relic monitoring for Azure Key Vault. + Check out the [documentation](https://docs.newrelic.com/docs/infrastructure/microsoft-azure-integrations/azure-integrations-list/azure-key-vault-monitoring-integration) to learn more about New Relic monitoring for Azure Key Vault. summary: Monitor Azure Key Vault by connecting Azure to New Relic icon: logo.png level: New Relic @@ -30,8 +30,6 @@ keywords: - keyvault - NR1_addData - NR1_sys -installPlans: - - azure-infrastructure-monitoring dataSourceIds: - microsoft-azure dashboards: diff --git a/quickstarts/azure/azure-machine-learning-services/config.yml b/quickstarts/azure/azure-machine-learning-services/config.yml index bf9c5733bb..8d2dc4ccf2 100644 --- a/quickstarts/azure/azure-machine-learning-services/config.yml +++ b/quickstarts/azure/azure-machine-learning-services/config.yml @@ -13,7 +13,7 @@ description: |- ### More info - Check out the [documentation](https://docs.newrelic.com/docs/infrastructure/microsoft-azure-integrations/azure-integrations-list/azure-machine-learning-integration/) to learn more about New Relic monitoring for Azure Machine Learning Services. + Check out the [documentation](https://docs.newrelic.com/docs/infrastructure/microsoft-azure-integrations/azure-integrations-list/azure-machine-learning-integration/) to learn more about New Relic monitoring for Azure Machine Learning Services. summary: Monitor Azure Machine Learning Services by connecting Azure to New Relic icon: logo.svg level: New Relic @@ -28,7 +28,5 @@ keywords: - azure - NR1_addData - NR1_sys -installPlans: - - azure-infrastructure-monitoring dataSourceIds: - microsoft-azure diff --git a/quickstarts/azure/azure-mariadb/config.yml b/quickstarts/azure/azure-mariadb/config.yml index 8394c07046..9ae1de829b 100644 --- a/quickstarts/azure/azure-mariadb/config.yml +++ b/quickstarts/azure/azure-mariadb/config.yml @@ -33,8 +33,6 @@ keywords: - database - NR1_addData - NR1_sys -installPlans: - - azure-infrastructure-monitoring dataSourceIds: - microsoft-azure dashboards: diff --git a/quickstarts/azure/azure-mysql/config.yml b/quickstarts/azure/azure-mysql/config.yml index 10add42d10..2d1bf5cbc8 100644 --- a/quickstarts/azure/azure-mysql/config.yml +++ b/quickstarts/azure/azure-mysql/config.yml @@ -8,7 +8,7 @@ description: |- ### New Relic + Azure integration - The New Relic Azure MySQL monitoring quickstart instruments your cloud service and manages the stability, scalability, and reliability of Azure MySQL with our infrastructure monitoring capabilities. + The New Relic Azure MySQL monitoring quickstart instruments your cloud service and manages the stability, scalability, and reliability of Azure MySQL with our infrastructure monitoring capabilities. Once instrumented, we proactively track your organization’s Azure MySQL metric data in real-time. @@ -18,7 +18,7 @@ description: |- With our [Azure integration](https://docs.newrelic.com/docs/infrastructure/microsoft-azure-integrations/azure-integrations-list/azure-database-mysql-monitoring-integration/), you can view the Azure database for mysql data in pre-built dashboards, create your own alert conditions, and run custom queries for easy data visualization. - If you’re looking to optimize your mysql database with high availability, elastic scaling, and more, install our quickstart. + If you’re looking to optimize your mysql database with high availability, elastic scaling, and more, install our quickstart. summary: Monitoring Azure MySQL is crucial to track your organization’s Azure MySQL metric data in real-time. Download the New Relic quickstart to proactively instrument Azure MySQL with New Relic infrastructure monitoring capabilities. icon: logo.svg level: New Relic @@ -36,8 +36,6 @@ keywords: - database - NR1_addData - NR1_sys -installPlans: - - azure-infrastructure-monitoring dataSourceIds: - microsoft-azure dashboards: diff --git a/quickstarts/azure/azure-postgresql/config.yml b/quickstarts/azure/azure-postgresql/config.yml index 9e3fa1814b..5e84ae54f5 100644 --- a/quickstarts/azure/azure-postgresql/config.yml +++ b/quickstarts/azure/azure-postgresql/config.yml @@ -33,8 +33,6 @@ keywords: - database - NR1_addData - NR1_sys -installPlans: - - azure-infrastructure-monitoring dataSourceIds: - microsoft-azure dashboards: diff --git a/quickstarts/azure/azure-power-bi-dedicated-capacities/config.yml b/quickstarts/azure/azure-power-bi-dedicated-capacities/config.yml index 8843c21404..e0b114cbd8 100644 --- a/quickstarts/azure/azure-power-bi-dedicated-capacities/config.yml +++ b/quickstarts/azure/azure-power-bi-dedicated-capacities/config.yml @@ -13,7 +13,7 @@ description: |- ### More info - Check out the [documentation](https://docs.newrelic.com/docs/infrastructure/microsoft-azure-integrations/azure-integrations-list/azure-power-bi-dedicated-capacities-monitoring-integration/) to learn more about New Relic monitoring for Azure Power BI Dedicated capacities. + Check out the [documentation](https://docs.newrelic.com/docs/infrastructure/microsoft-azure-integrations/azure-integrations-list/azure-power-bi-dedicated-capacities-monitoring-integration/) to learn more about New Relic monitoring for Azure Power BI Dedicated capacities. summary: Monitor Azure Power BI Dedicated capacities by connecting Azure to New Relic icon: logo.png level: New Relic @@ -29,7 +29,5 @@ keywords: - azure - NR1_addData - NR1_sys -installPlans: - - azure-infrastructure-monitoring dataSourceIds: - microsoft-azure diff --git a/quickstarts/azure/azure-service-bus/config.yml b/quickstarts/azure/azure-service-bus/config.yml index ce5ed0ecf5..90bc1d5441 100644 --- a/quickstarts/azure/azure-service-bus/config.yml +++ b/quickstarts/azure/azure-service-bus/config.yml @@ -32,7 +32,5 @@ keywords: - messaging - NR1_addData - NR1_sys -installPlans: - - azure-infrastructure-monitoring dataSourceIds: - microsoft-azure diff --git a/quickstarts/azure/azure-storage/config.yml b/quickstarts/azure/azure-storage/config.yml index 7b9c59c878..c30183c8ef 100644 --- a/quickstarts/azure/azure-storage/config.yml +++ b/quickstarts/azure/azure-storage/config.yml @@ -3,7 +3,7 @@ slug: azure-storage description: |- ## What is Azure Storage? - Azure Storage is Microsoft’s cloud storage solution that offers highly available, scalable, secure, and durable storage for different data objects in the cloud. + Azure Storage is Microsoft’s cloud storage solution that offers highly available, scalable, secure, and durable storage for different data objects in the cloud. ### New Relic Azure storage quickstart features @@ -17,11 +17,11 @@ description: |- ### Why monitor Azure Storage with New Relic? - [New Relic Azure Storage](https://docs.newrelic.com/docs/infrastructure/microsoft-azure-integrations/azure-integrations-list/azure-storage-monitoring-integration/) monitoring quickstart empowers you to track the performance of Azure Storage via different metrics including account used capacity, the amount of ingress and egress data, and latency. + [New Relic Azure Storage](https://docs.newrelic.com/docs/infrastructure/microsoft-azure-integrations/azure-integrations-list/azure-storage-monitoring-integration/) monitoring quickstart empowers you to track the performance of Azure Storage via different metrics including account used capacity, the amount of ingress and egress data, and latency. Our integration features a standard dashboard that provides interactive visualizations to explore your data, understand context, and get valuable insights. We’ve also made it easy for you to view your data in pre-built dashboards, create specialized alerts, and run custom queries with immediate data visualization. - Start ingesting your Azure data today and get immediate access to our visualization dashboards so you can optimize your Azure service. + Start ingesting your Azure data today and get immediate access to our visualization dashboards so you can optimize your Azure service. summary: Monitoring Azure Storage is critical to track the performance of the storage via key metrics. Download New Relic Azure Storage monitoring quickstart to proactively instrument Azure Storage with New Relic infrastructure monitoring capabilities. icon: logo.svg level: New Relic @@ -39,8 +39,6 @@ keywords: - storage - NR1_addData - NR1_sys -installPlans: - - azure-infrastructure-monitoring dataSourceIds: - microsoft-azure dashboards: diff --git a/quickstarts/azure/azure-virtual-machines/config.yml b/quickstarts/azure/azure-virtual-machines/config.yml index 8434a78b0a..79a6b0b020 100644 --- a/quickstarts/azure/azure-virtual-machines/config.yml +++ b/quickstarts/azure/azure-virtual-machines/config.yml @@ -28,8 +28,6 @@ keywords: - virtual machines - NR1_addData - NR1_sys -installPlans: - - third-party-azure-virtual-machines dataSourceIds: - microsoft-azure dashboards: diff --git a/quickstarts/azure/azure-virtual-network/config.yml b/quickstarts/azure/azure-virtual-network/config.yml index 2db4390bbb..0b2659af39 100644 --- a/quickstarts/azure/azure-virtual-network/config.yml +++ b/quickstarts/azure/azure-virtual-network/config.yml @@ -2,7 +2,7 @@ id: f812a124-5443-4451-94d3-32b54c109555 slug: azure-virtual-network description: | ## What is Azure Virtual Network? - Azure Virtual Network (VNet) provides the means for Azure cloud resources such as virtual machines to securely communicate with each other as well as the rest of the internet and on-premises resources. Using VNet to create a private network gives you control over network filtering, routing, and other key pieces of the network infrastructure. + Azure Virtual Network (VNet) provides the means for Azure cloud resources such as virtual machines to securely communicate with each other as well as the rest of the internet and on-premises resources. Using VNet to create a private network gives you control over network filtering, routing, and other key pieces of the network infrastructure. Given an Azure virtual network, you can do things like assign a public IP, assign a load balancer, and handle outbound connections. VNets are ideal for developers deploying on Azure resources who want fine-grained control over network management. ### New Relic Azure Vnet integration @@ -14,7 +14,7 @@ description: | - Virtual network per resource group: Shows the number of virtual networks deployed within each resource group ### Why monitor Azure Virtual Network with New Relic? - Having insight into Azure virtual network performance is key to keeping network systems healthy and reliable. Virtual networks are often vulnerable to attack, so continuous monitoring of IP requests and understanding which IPs may be experiencing a distributed denial of service (DDOS) attack can be critical for initiating a proactive response. + Having insight into Azure virtual network performance is key to keeping network systems healthy and reliable. Virtual networks are often vulnerable to attack, so continuous monitoring of IP requests and understanding which IPs may be experiencing a distributed denial of service (DDOS) attack can be critical for initiating a proactive response. The virtual network time series display can give insight into fluctuations in network health and uptime within a specified interval and can be useful for drilling down into any deviations from the norm. Finally, being able to understand how virtual networks are distributed across geographic regions can help you pinpoint when a particular region is being underserved and deploy network resources accordingly. summary: | @@ -34,8 +34,6 @@ keywords: - networking - NR1_addData - NR1_sys -installPlans: - - azure-infrastructure-monitoring dataSourceIds: - microsoft-azure dashboards: diff --git a/quickstarts/azure/azure-vms/config.yml b/quickstarts/azure/azure-vms/config.yml index cf1136af31..77148c88b5 100644 --- a/quickstarts/azure/azure-vms/config.yml +++ b/quickstarts/azure/azure-vms/config.yml @@ -31,8 +31,6 @@ keywords: - azure - NR1_addData - NR1_sys -installPlans: - - azure-infrastructure-monitoring dataSourceIds: - microsoft-azure dashboards: diff --git a/quickstarts/battlesnake/config.yml b/quickstarts/battlesnake/config.yml index 23626acdaf..d175d49a24 100644 --- a/quickstarts/battlesnake/config.yml +++ b/quickstarts/battlesnake/config.yml @@ -14,8 +14,6 @@ authors: - New Relic - Zack Stickles (New Relic) - Alec Swanson (New Relic) -installPlans: - - battlesnake dataSourceIds: - battlesnake documentation: @@ -28,12 +26,9 @@ keywords: - infrastructure - snake - battlesnake - - NR1_addData - - NR1_sys icon: logo.png -website: https://play.battlesnake.com + dashboards: - battlesnake-game-tracking - battlesnake-performance - battlesnake-server-status - diff --git a/quickstarts/bitmovin/config.yml b/quickstarts/bitmovin/config.yml new file mode 100644 index 0000000000..55a471c416 --- /dev/null +++ b/quickstarts/bitmovin/config.yml @@ -0,0 +1,34 @@ +id: 249d6a1f-091b-4c63-ad22-d8f1b3a900f9 +slug: bitmovin-video +description: | + ## What is Bitmovin? + + Bitmovin empowers businesses to expand their viewer reach and stream video globally with unmatched reliability, scalability, and the highest quality across the broadest range of devices. + + ### Get started! + + The Bitmovin - New Relic integration utilizes the Bitmovin Analytics API to get data into New Relic. + + Check out the [documentation](https://github.com/newrelic/newrelic-bitmovin-analytics/blob/master/README.md) to learn more about setting up New Relic monitoring for of data from Bitmovin. +summary: | + Bitmovin empowers businesses to expand their viewer reach and stream video globally with unmatched reliability, scalability, and the highest quality across the broadest range of devices. +icon: logo.svg +level: Community +authors: + - Chris McCarthy +title: Bitmovin Analytics +dataSourceIds: + - bitmovin-video +dashboards: + - bitmovin +documentation: + - name: Bitmovin integration installation docs + description: Pull specified metrics and dimensions from the Bitmovin Analytics API into New Relic + url: https://github.com/newrelic/newrelic-bitmovin-analytics/blob/master/README.md +keywords: + - bitmovin + - video + - streaming + - newrelic partner + - NR1_addData + - NR1_sys diff --git a/quickstarts/bitmovin/logo.svg b/quickstarts/bitmovin/logo.svg new file mode 100644 index 0000000000..64d8424410 --- /dev/null +++ b/quickstarts/bitmovin/logo.svg @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/quickstarts/biztalk360/config.yml b/quickstarts/biztalk360/config.yml index b86230d0af..3f259310e7 100644 --- a/quickstarts/biztalk360/config.yml +++ b/quickstarts/biztalk360/config.yml @@ -2,7 +2,7 @@ id: 95e5a505-7373-4980-9ce8-e6165930063e slug: biztalk360 title: BizTalk360 description: | - ## What's BizTalk360? + ## What's BizTalk360? BizTalk360 is a one-stop tool for administration, monitoring and application performance management (APM) of BizTalk environments. To be able to use the integration with New Relic from BizTalk360, you must have : @@ -10,8 +10,8 @@ description: | - BizTalk360 Platinum license . - You must be a Super User in your BizTalk360 application to configure the New Relic environment in BizTalk360 - Below are some of the important performance metrics you can see in your Newrelic dashboard. - + Below are some of the important performance metrics you can see in your Newrelic dashboard. + - BizTalk and SQL Server Health - CPU Usage - Memory Usage @@ -52,8 +52,6 @@ keywords: - newrelic partner - NR1_addData - NR1_sys -installPlans: - - third-party-biztalk360 dataSourceIds: - third-party-biztalk360 documentation: @@ -62,6 +60,5 @@ documentation: description: | BizTalk360 brings integration with New Relic and has the capability to provide deep performance analytics of your configured BizTalk environment. icon: logo.png -website: https://www.biztalk360.com/ dashboards: - biztalk360 diff --git a/quickstarts/blameless/config.yml b/quickstarts/blameless/config.yml index 0d661e67bc..921fb85f5f 100644 --- a/quickstarts/blameless/config.yml +++ b/quickstarts/blameless/config.yml @@ -11,8 +11,6 @@ level: Community authors: - Blameless title: Blameless -installPlans: - - third-party-blameless dataSourceIds: - blameless documentation: diff --git a/quickstarts/blazemeter/config.yml b/quickstarts/blazemeter/config.yml index f58c54a700..5408b9f6f1 100644 --- a/quickstarts/blazemeter/config.yml +++ b/quickstarts/blazemeter/config.yml @@ -70,4 +70,3 @@ documentation: # Content / Design icon: logo.png -website: https://www.blazemeter.com/ \ No newline at end of file diff --git a/quickstarts/blazor-webassembly/config.yml b/quickstarts/blazor-webassembly/config.yml index 516fa1ea2a..4c93698f80 100644 --- a/quickstarts/blazor-webassembly/config.yml +++ b/quickstarts/blazor-webassembly/config.yml @@ -19,7 +19,7 @@ description: | ## What’s included? Get these Blazor WebAssembly monitoring features out of the box: - - Understand the health of your system with dashboards that show throughput and error rate data, logs, web transaction time, page views, page load time, and more. + - Understand the health of your system with dashboards that show throughput and error rate data, logs, web transaction time, page views, page load time, and more. - Get alerts when your application suffers critical failures and errors. - Monitor scripts and functions. - Monitor web transactions. @@ -33,7 +33,7 @@ title: Blazor WebAssembly documentation: - name: Blazor WebAssembly installation docs description: | - Our Browser Monitoring agent can be used to instrument and monitor your Blazor WebAssembly application. Perform an immediate analysis of your performance statistics. + Our Browser Monitoring agent can be used to instrument and monitor your Blazor WebAssembly application. Perform an immediate analysis of your performance statistics. url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/browser-monitoring-integrations/blazor-webassembly/ keywords: - blazor web assembly @@ -43,8 +43,6 @@ keywords: - blazor webassembly - NR1_addData - NR1_sys -installPlans: - - blazor-webassembly dataSourceIds: - blazor-webassembly dashboards: diff --git a/quickstarts/boomi/config.yaml b/quickstarts/boomi/config.yaml index 2f3b364651..e4d3e128db 100644 --- a/quickstarts/boomi/config.yaml +++ b/quickstarts/boomi/config.yaml @@ -27,4 +27,3 @@ documentation: url: https://help.boomi.com/docs/atomsphere/flow/topics/flo-observability_collector_8b3010e3-51b1-43b5-8b09-9575e59610b0/#setting-up-the-apm-system-new-relic description: Docs for setting up an OpenTelemetry collector to send Traces from Boomi to New Relic icon: logo.png -website: https://boomi.com/ diff --git a/quickstarts/browser-segment-investigation/config.yml b/quickstarts/browser-segment-investigation/config.yml index b60b68ba6e..3427503194 100644 --- a/quickstarts/browser-segment-investigation/config.yml +++ b/quickstarts/browser-segment-investigation/config.yml @@ -19,11 +19,9 @@ documentation: - name: Usage instructions url: https://docs.newrelic.com/docs/new-relic-solutions/observability-maturity/customer-experience/quality-foundation-implementation-guide#validate-browser-url-grouping description: The _Validate Browser URL grouping_ section of Quality foundation explains how to use the segment investigation dashboard as well as resolve any crushed URLs you might find. -installPlans: - - third-party-browser-segment-investigation dataSourceIds: - browser-segment-investigation icon: logo.svg -website: https://www.newrelic.com + dashboards: - browser-segment-investigation diff --git a/quickstarts/browser-signals/config.yml b/quickstarts/browser-signals/config.yml index 883dc08e85..c4be7d6ddd 100644 --- a/quickstarts/browser-signals/config.yml +++ b/quickstarts/browser-signals/config.yml @@ -9,30 +9,28 @@ title: Browser Signals # Long-form description of the quickstart (required) description: | **Browser Signals Dashboard** - + ## 1. Core Web Vitals Score: - The CWV Score is a composite metric that measures the quality of user experience on a webpage based on three factors: Largest Contentful Paint (LCP), First Input Delay (FID), and Cumulative Layout Shift (CLS). - + ## 2. Pages Per Minute (Throughput): - This metric indicates the rate at which pages are served to users, measured in pages per minute. - + ## 3. Errors: - This metric counts the number of errors that have occurred. ## 4. Average PageLoad: - This metric measures the average time it takes for a page to load, in seconds. - + ### Actionable Takeaways: - Investigate the cause of the decreased throughput (Pages Per Minute) to determine if there are any performance bottlenecks or issues that need to be addressed. - Continue to monitor the CWV Score and aim to maintain or improve the current level, as it is indicative of a good user experience. - Look into the increased average page load time to identify any new changes or issues that may be contributing to slower load times. Consider optimizing resources, reviewing recent code deployments, or checking server performance. - - # Displayed in search results and recommendations. Summarizes a quickstarts functionality. summary: | - Comprehensive Browser dashboard providing actionable insights, including Throughout, Latency, Errors & Core Web Vitals Metrics. + Comprehensive Browser dashboard providing actionable insights, including Throughout, Latency, Errors & Core Web Vitals Metrics. # Support level: New Relic | Verified | Community (required) level: New Relic @@ -53,17 +51,15 @@ keywords: # Reference to dashboards to be included in this quickstart dashboards: - browser-signals - + # Documentation references documentation: - name: browser url: https://docs.newrelic.com/docs/browser/browser-monitoring/getting-started/introduction-browser-monitoring/ description: Our browser monitoring provides a real user monitoring (RUM) solution. It measures speed and performance as your end users navigate to your site through different web browsers, devices, operating systems, and networks. But browser monitoring goes far beyond providing information about the initial page load. Use it to measure full page life cycle data and start getting the info you need to help ensure customer satisfaction. - # Content / Design icon: logo.svg -website: https://www.newrelic.com dataSourceIds: - browser-signals diff --git a/quickstarts/browser/config.yml b/quickstarts/browser/config.yml index aa13aed363..083abd7d60 100644 --- a/quickstarts/browser/config.yml +++ b/quickstarts/browser/config.yml @@ -28,8 +28,6 @@ documentation: - name: Browser description: With New Relic One's browser monitoring solution, you get full visibility into the complete webpage life cycle of your application or website url: https://docs.newrelic.com/docs/browser/ -installPlans: - - browser-docs dataSourceIds: - new-relic-browser keywords: @@ -45,4 +43,4 @@ dashboards: - javascript-errors - traffic-analysis alertPolicies: - - browser \ No newline at end of file + - browser diff --git a/quickstarts/c/config.yml b/quickstarts/c/config.yml deleted file mode 100644 index 0ece688f0b..0000000000 --- a/quickstarts/c/config.yml +++ /dev/null @@ -1,39 +0,0 @@ -id: 7fa19c5e-b97b-4c4d-954e-bc209afec3ba -slug: c -description: | - ## What is C? - - General-purpose, procedural, imperative computer programming language - developed in 1972 by Dennis M. Ritchie at the Bell Telephone. - - ## Get started! - - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments C with the New Relic C SDK, and allows you to further leverage New Relic's APM capabilities by setting up [custom dashboards](https://docs.newrelic.com/docs/query-your-data/explore-query-data/dashboards/introduction-dashboards/), [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). - - ## More info - - Check out the [documentation](https://docs.newrelic.com/docs/agents/c-sdk/get-started/introduction-c-sdk/) to learn more about New Relic monitoring for C. -summary: | - Monitor C with New Relic's C agent -icon: logo.svg -level: New Relic -authors: - - New Relic -title: C -documentation: - - name: C installation docs - description: | - General-purpose, procedural, imperative computer programming language - developed in 1972 by Dennis M. Ritchie at the Bell Telephone. - url: https://docs.newrelic.com/docs/agents/c-sdk -keywords: - - apm - - language agent -installPlans: - - setup-c-agent -dataSourceIds: - - c -dashboards: - - c -alertPolicies: - - c diff --git a/quickstarts/c/logo.svg b/quickstarts/c/logo.svg deleted file mode 100644 index 7c3b085b1d..0000000000 --- a/quickstarts/c/logo.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/quickstarts/calico/config.yml b/quickstarts/calico/config.yml index 6036b2cae3..72eea88a0d 100644 --- a/quickstarts/calico/config.yml +++ b/quickstarts/calico/config.yml @@ -17,9 +17,6 @@ keywords: - prometheus - remote-write - cni -installPlans: - - setup-prometheus - - setup-prometheus-agent-mode dataSourceIds: - prometheus - prometheus-agent-mode @@ -37,7 +34,7 @@ documentation: Learn more about the Prometheus metrics available for Calico url: https://projectcalico.docs.tigera.io/reference/felix/prometheus icon: logo.png -website: https://projectcalico.docs.tigera.io/ + dashboards: - calico alertPolicies: diff --git a/quickstarts/cassandra/config.yml b/quickstarts/cassandra/config.yml index 04965c1fb6..b8a5072096 100644 --- a/quickstarts/cassandra/config.yml +++ b/quickstarts/cassandra/config.yml @@ -8,15 +8,15 @@ description: | ### Cassandra quickstart highlights The New Relic Cassandra quickstart automatically instruments your database and includes pre-built dashboards visualizing: - - client request rates + - client request rates - average pending pool tasks - - active request pool tasks + - active request pool tasks - active and pending read tasks by node - write/read latency ### New Relic + Cassandra - Your tool for better monitoring - Monitor all Cassandra key performance indicators with the [New Relic Cassandra integration](https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/cassandra-monitoring-integration/). This gives you insights on client request rates, average pending and active request pool tasks, active and pending read tasks by node, write latency, read latency, etc. + Monitor all Cassandra key performance indicators with the [New Relic Cassandra integration](https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/cassandra-monitoring-integration/). This gives you insights on client request rates, average pending and active request pool tasks, active and pending read tasks by node, write latency, read latency, etc. The Cassandra integration sends performance metrics and inventory data from your Cassandra database to the New Relic platform. On the platform, you can view pre-built dashboards of your Cassandra metric data, create alert policies, query data for troubleshooting purposes, and create charts. @@ -27,7 +27,7 @@ summary: | Monitoring Cassandra is critical for healthy database operations and Cassandra clusters. The New Relic Cassandra Quickstart guarantees an efficient way to monitor Cassandra. level: New Relic icon: logo.png -website: https://cassandra.apache.org/ + authors: - New Relic - Daniel Gola @@ -36,8 +36,6 @@ documentation: description: | Open-source NoSQL database management platform built for large datasets. url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/cassandra-monitoring-integration/ -installPlans: - - cassandra-integration dataSourceIds: - cassandra keywords: diff --git a/quickstarts/catchpoint/config.yml b/quickstarts/catchpoint/config.yml index 55a5643c6e..5d5a9d0460 100644 --- a/quickstarts/catchpoint/config.yml +++ b/quickstarts/catchpoint/config.yml @@ -30,9 +30,7 @@ documentation: url: https://github.com/catchpoint/Integrations.NewRelic description: A repository to help get you started setting up your New Relic & Catchpoint integration. icon: logo.svg -website: https://www.newrelic.com -installPlans: - - third-party-catchpoint-quickstart + dataSourceIds: - catchpoint-quickstart dashboards: diff --git a/quickstarts/centos/config.yml b/quickstarts/centos/config.yml index 03ea23813a..0a3ae6fe4d 100644 --- a/quickstarts/centos/config.yml +++ b/quickstarts/centos/config.yml @@ -22,7 +22,5 @@ documentation: keywords: - os - operating system -installPlans: - - guided-install dataSourceIds: - guided-install diff --git a/quickstarts/circleci/config.yml b/quickstarts/circleci/config.yml index f390d97878..b8481da449 100644 --- a/quickstarts/circleci/config.yml +++ b/quickstarts/circleci/config.yml @@ -6,7 +6,7 @@ description: |+ The world’s best software teams use CircleCI to deliver quality code with confidence. As the largest continuous integration and delivery (CI/CD) platform, CircleCI empowers engineers to seamlessly take ideas to execution, at scale. Every feature of our platform is built to fine-tune the entire development process from start to finish. - This quickstart allows users to view analytical data about their CircleCI jobs within the New Relic dashboard to gain visibility into the performance and health of their continuous integration and deployment pipelines. + This quickstart allows users to view analytical data about their CircleCI jobs within the New Relic dashboard to gain visibility into the performance and health of their continuous integration and deployment pipelines. ### With the CircleCI quickstart you can: @@ -41,8 +41,6 @@ keywords: - logs - NR1_addData - NR1_sys -installPlans: - - third-party-circleci dataSourceIds: - circleci documentation: @@ -50,6 +48,6 @@ documentation: url: https://docs.newrelic.com/docs/logs/forward-logs/circleci-logs/ description: How to set up a webhook to forward your CircleCI logs to New Relic icon: logo.png -website: https://circleci.com/ + dashboards: - circledashboard diff --git a/quickstarts/cloudflare/config.yml b/quickstarts/cloudflare/config.yml index 007ad6862a..ed1a0af29c 100644 --- a/quickstarts/cloudflare/config.yml +++ b/quickstarts/cloudflare/config.yml @@ -27,8 +27,6 @@ keywords: - newrelic partner - NR1_addData - NR1_sys -installPlans: - - third-party-cloudflare dataSourceIds: - cloudflare documentation: @@ -36,7 +34,7 @@ documentation: url: https://docs.newrelic.com/docs/logs/forward-logs/cloudflare-logpush-forwarding description: Developer doc on getting Cloudflare data ingested into New Relic icon: logo.png -website: https://www.cloudflare.com/ + dashboards: - cloudflare alertPolicies: diff --git a/quickstarts/cockroach-db/config.yml b/quickstarts/cockroach-db/config.yml index 84f00e7da4..09a5137e6b 100644 --- a/quickstarts/cockroach-db/config.yml +++ b/quickstarts/cockroach-db/config.yml @@ -20,9 +20,6 @@ keywords: - prometheus - remote-write - sql -installPlans: - - setup-prometheus - - setup-prometheus-agent-mode dataSourceIds: - prometheus - prometheus-agent-mode @@ -35,7 +32,7 @@ documentation: url: https://docs.newrelic.com/docs/infrastructure/prometheus-integrations/integrations-list/cockroach-db-integration description: CockroachDB Prometheus Integration Documentation icon: logo.png -website: https://www.cockroachlabs.com/docs/ + dashboards: - cockroach-db alertPolicies: diff --git a/quickstarts/confluent-cloud/config.yml b/quickstarts/confluent-cloud/config.yml index 956e0065db..3f94be369b 100644 --- a/quickstarts/confluent-cloud/config.yml +++ b/quickstarts/confluent-cloud/config.yml @@ -36,8 +36,6 @@ keywords: - Kafka - newrelic partner - featured -installPlans: - - third-party-confluent-cloud dataSourceIds: - confluent-cloud dashboards: @@ -47,4 +45,3 @@ documentation: url: https://github.com/newrelic/newrelic-opentelemetry-examples/tree/main/other-examples/collector/confluentcloud description: Steps to build and deploy the OpenTelemetry Collector Contrib instance and configure for Kafka and Confluent Cloud metrics icon: logo.png -website: https://www.confluent.io/ diff --git a/quickstarts/consul/config.yml b/quickstarts/consul/config.yml index dd6e4b9f42..6a11030ef4 100644 --- a/quickstarts/consul/config.yml +++ b/quickstarts/consul/config.yml @@ -8,7 +8,7 @@ summary: | Monitor Consul with New Relic's On Host Integration. level: New Relic icon: logo.png -website: https://www.consul.io/ + authors: - New Relic - Daniel Gola @@ -17,8 +17,6 @@ documentation: description: | Connect your disparate services and platforms in a multi-cloud environment. url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/hashicorp-consul-monitoring-integration/ -installPlans: - - hashicorp-consul-integration dataSourceIds: - consul keywords: diff --git a/quickstarts/contentsquare/config.yml b/quickstarts/contentsquare/config.yml index 8648e50d75..d91d5d893d 100644 --- a/quickstarts/contentsquare/config.yml +++ b/quickstarts/contentsquare/config.yml @@ -2,37 +2,37 @@ id: 875f2e3d-7c1b-436b-ab77-602090de1134 slug: contentsquare title: Contentsquare summary: | - Contentsquare is a powerful, yet easy-to-use, digital experience analytics platform that collects and quantifies user behavior across all your digital properties showing you what users like, what they don’t like, where they struggle, and why they leave. + Contentsquare is a powerful, yet easy-to-use, digital experience analytics platform that collects and quantifies user behavior across all your digital properties showing you what users like, what they don’t like, where they struggle, and why they leave. description: | ## Contentsquare performance monitoring Contentsquare surfaces opportunities to improve your customer experience automatically and easily so you can increase your conversion rates, improve customer loyalty, reduce costs and drive revenue. - + Get more value from your investments in Contentsquare and New Relic by seeing - how performance issues truly affect your customers’ digital experience. - + how performance issues truly affect your customers’ digital experience. + ### What's included? Through this integration, access Contentsquare Session Replay links directly - within New Relic. With this, Contentsquare shows you exactly what a user was - doing before, during, and after an issue occurs, so that you can remediate - issues quickly and with the complete picture. Dramatically reduce the - time-to-repair of system errors by linking to your impacted users' exact + within New Relic. With this, Contentsquare shows you exactly what a user was + doing before, during, and after an issue occurs, so that you can remediate + issues quickly and with the complete picture. Dramatically reduce the + time-to-repair of system errors by linking to your impacted users' exact session replays. - **Reduce time-to-recovery** - By integrating Contentsquare with your New Relic, you can provide your - engineering team with all of the necessary technical and behavioral data - needed to identify the root cause of an issue without having to spend cycles + By integrating Contentsquare with your New Relic, you can provide your + engineering team with all of the necessary technical and behavioral data + needed to identify the root cause of an issue without having to spend cycles trying to recreate the issue. - **Reduce time-to-recovery** - Combine the technical data from New Relic with the behavioral data surfaced + Combine the technical data from New Relic with the behavioral data surfaced from Contentsquare to uncover and prioritize the issues that have the greatest impact on your revenue and customer experience metrics. level: Community @@ -43,19 +43,16 @@ keywords: - Customer Experience - Digital Experience - User Experience -installPlans: - - third-party-contentsquare dataSourceIds: - contentsquare documentation: - name: Installation Doc url: https://uxanalyser.zendesk.com/hc/en-gb/articles/4408893503122-New-Relic description: | - See how to install this integration and the data exchanged between New + See how to install this integration and the data exchanged between New Relic ancd Contentsquare. - name: Partnership Page url: https://partners.contentsquare.com/technology-partners/new-relic description: | New Relic x Contentsquare partnership page on Contentsquare website icon: logo.png -website: https://www.contentsquare.com diff --git a/quickstarts/conviva/config.yml b/quickstarts/conviva/config.yml index 371389eee3..ebfe96d93e 100644 --- a/quickstarts/conviva/config.yml +++ b/quickstarts/conviva/config.yml @@ -8,7 +8,7 @@ title: Conviva # Long-form description of the quickstart (required) description: | ## What is Conviva? - + [Conviva](https://www.conviva.com/) is a real-time analytics platform that makes streaming data actionable. @@ -35,7 +35,6 @@ description: | This quickstart is designed to help customers install and use the Conviva integration to collect and work with Conviva metrics. - # Displayed in search results and recommendations. Summarizes a quickstarts functionality. summary: | A New Relic quickstart designed to help customers install and use the Conviva @@ -76,4 +75,3 @@ documentation: # Content / Design icon: logo.svg -website: https://www.conviva.com diff --git a/quickstarts/cordova/config.yml b/quickstarts/cordova/config.yml index 3313901b18..d03776ac22 100644 --- a/quickstarts/cordova/config.yml +++ b/quickstarts/cordova/config.yml @@ -15,8 +15,6 @@ level: New Relic authors: - New Relic title: Cordova -installPlans: - - third-party-cordova dataSourceIds: - cordova documentation: diff --git a/quickstarts/core-web-vitals/config.yml b/quickstarts/core-web-vitals/config.yml index 045d5ccae3..1a2d784c3d 100644 --- a/quickstarts/core-web-vitals/config.yml +++ b/quickstarts/core-web-vitals/config.yml @@ -1,5 +1,4 @@ id: 5cf33115-1e99-4d7a-a84e-fd98df81409a -displayName: Core Web Vitals slug: cwv-example title: Core Web Vitals @@ -8,13 +7,13 @@ summary: >- description: | ## Monitor Core Web Vitals and Improve User Experience - Core web vitals are Google’s metrics to gauge overall user experience of your site, which can influence your site’s SEO rankings and give you valuable insight into how users perceive your business. - + Core web vitals are Google’s metrics to gauge overall user experience of your site, which can influence your site’s SEO rankings and give you valuable insight into how users perceive your business. + This is why it’s important to monitor your site’s core web vitals and take action on low scores - and New Relic can help you do that! This quickstart includes a dashboard that displays the performance of your Core Web Vitals to help you troubleshoot. - + Benefits of understanding Core Web Vitals: - + 1. **Improved User Experience:** Core Web Vitals are key performance metrics that can impact the user experience of a website. By monitoring these metrics with the New Relic Browser agent, you can identify and address issues that may be negatively affecting user experience, such as slow page load times, high input latency, or unexpected layout shifts. 2. **Better Search Engine Optimization:** Google has announced that Core Web Vitals will be used as a ranking factor in search results starting in May 2021. By monitoring and optimizing for these metrics using New Relic's Browser agent, you can improve your website's search engine visibility and attract more traffic to your site. @@ -32,8 +31,6 @@ documentation: description: >- With New Relic's browser monitoring solution, you get full visibility into the complete webpage life cycle of your application or website url: https://docs.newrelic.com/docs/browser/ -installPlans: - - browser-docs dataSourceIds: - new-relic-browser @@ -53,4 +50,3 @@ dashboards: # Authors of the quickstart (required) authors: - Darren Doyle - diff --git a/quickstarts/coredns/config.yml b/quickstarts/coredns/config.yml index 8bed306f80..24491492df 100644 --- a/quickstarts/coredns/config.yml +++ b/quickstarts/coredns/config.yml @@ -34,9 +34,6 @@ documentation: Learn more about the Prometheus metrics available for CoreDNS alertPolicies: - coredns -installPlans: - - setup-prometheus - - setup-prometheus-agent-mode dataSourceIds: - prometheus - prometheus-agent-mode diff --git a/quickstarts/couchbase/config.yml b/quickstarts/couchbase/config.yml index 55cb04e075..28d930ec2f 100644 --- a/quickstarts/couchbase/config.yml +++ b/quickstarts/couchbase/config.yml @@ -14,7 +14,7 @@ description: |+ level: New Relic icon: logo.svg -website: https://www.couchbase.com/ + authors: - New Relic - Daniel Gola @@ -23,8 +23,6 @@ documentation: description: | Couchbase is an open-source, distributed multi-model NoSQL document-oriented database software package. url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/couchbase-monitoring-integration/ -installPlans: - - couchbase-integration dataSourceIds: - couchbase keywords: diff --git a/quickstarts/cribl-logstream/config.yml b/quickstarts/cribl-logstream/config.yml index 1bf458c0bd..e243497b7b 100644 --- a/quickstarts/cribl-logstream/config.yml +++ b/quickstarts/cribl-logstream/config.yml @@ -4,7 +4,7 @@ title: Cribl description: | ## About Cribl - Cribl Stream unlocks [data sources](https://docs.cribl.io/stream/sources), including metrics, events, and logs, in an observability pipeline. + Cribl Stream unlocks [data sources](https://docs.cribl.io/stream/sources), including metrics, events, and logs, in an observability pipeline. Deploying this quickstart will allow you to add context to your data, by enriching it with information from external data sources, help secure your data, by redacting, obfuscating, or encrypting sensitive fields, and optimize your data, per your performance and cost requirements. @@ -43,8 +43,6 @@ keywords: - newrelic partner - NR1_addData - NR1_sys -installPlans: - - third-party-cribl-stream dataSourceIds: - cribl documentation: @@ -52,6 +50,6 @@ documentation: url: https://docs.cribl.io/docs/destinations-newrelic description: Configure a Stream destination to send Metrics, Events, and Logs icon: Cribl-Logo.png -website: https://cribl.io/ + dashboards: - cribl-stream-metrics diff --git a/quickstarts/dapr/config.yml b/quickstarts/dapr/config.yml index f5c68bdc88..bb1a439e67 100644 --- a/quickstarts/dapr/config.yml +++ b/quickstarts/dapr/config.yml @@ -16,8 +16,6 @@ keywords: dashboards: - dapr-metrics - dapr-system-services -installPlans: - - third-party-dapr dataSourceIds: - dapr documentation: @@ -25,4 +23,3 @@ documentation: url: https://docs.dapr.io/operations/observability/tracing/newrelic/ description: How-To Set-up New Relic for distributed tracing. icon: logo.svg -website: https://www.dapr.io diff --git a/quickstarts/databricks/config.yml b/quickstarts/databricks/config.yml index ccf552078f..19243e0869 100644 --- a/quickstarts/databricks/config.yml +++ b/quickstarts/databricks/config.yml @@ -1,16 +1,16 @@ id: 533cdd19-8232-42cb-b134-e7d17bfff581 slug: databricks -title: Databricks Integration +title: Databricks Spark Integration description: | - Databricks is an orchestration platform for Apache Spark. Instantly monitor Databricks Spark applications with our New Relic Spark integration quickstart. - Our integration provides a script run in a notebook to generate an installation script, which you can attach to a cluster and populate Spark metrics to New relic Insights events. Easily track the health of your Databricks clusters, fine-tune your Spark jobs for peak performance, and troubleshoot problems with this quickstart. + Databricks is an orchestration platform for Apache Spark. Instantly monitor Databricks Spark clusters with our New Relic Spark integration. + This integration collects Spark telemetry, Workflow telemetry, and Cost and Billing information from Databricks. - Databricks cluster’s driver node runs each job in scheduled stages. Individual stages are broken down into tasks and distributed across executor nodes. Our New Relic Spark integration collects detailed job and stage metrics so you can get granular insight into job performance at a glance. For example , break down the Job metric by status (successful, pending, or failed) to see in real-time if a high number of jobs are failing, which could indicate a code error or memory issue at the executor level. Metrics on the number of jobs in realtime can also help you make decisions for provisioning clusters in the future. + The New Relic Databricks integration can collect telemetry from Spark running on Databricks. By default, the integration will automatically connect to and collect telemetry from the Spark deployments in all clusters created via the UI or API in the specified workspace. summary: | - Monitor Databricks Spark applications with New Relic Spark integration using notebook script + Monitor Databricks Spark clusters with the New Relic Databricks integration icon: logo.png level: Community -website: https://databricks.com/ + keywords: - nrlabs - nrlabs-data @@ -23,13 +23,11 @@ keywords: authors: - New Relic Labs documentation: - - name: Databricks init script creator notebook + - name: Databricks integration docs description: | - Databricks notebook to create init script to be used during initialization of Databricks cluster - url: https://github.com/newrelic-experimental/nri-spark#databricks-init-script-creator-notebook -installPlans: - - third-party-databricks + Collect Spark telemetry data with the New Relic Databricks integration + url: https://github.com/newrelic-experimental/newrelic-databricks-integration dataSourceIds: - databricks dashboards: - - databricks + - databricks-spark diff --git a/quickstarts/datastream2-akamai/config.yml b/quickstarts/datastream2-akamai/config.yml index 7c53502306..bf51617175 100644 --- a/quickstarts/datastream2-akamai/config.yml +++ b/quickstarts/datastream2-akamai/config.yml @@ -3,7 +3,7 @@ slug: datastream2 title: Akamai DataStream 2 description: |+ ## Akamai and DataStream 2 - + Akamai Technologies is a leading content delivery network (CDN), cybersecurity, and cloud service provider. [DataStream 2](https://techdocs.akamai.com/datastream2/docs) captures performance and security logs from your delivery properties and streams them in near real-time to provide complete monitoring. @@ -38,8 +38,6 @@ keywords: - featured - NR1_addData - NR1_sys -installPlans: - - third-party-datastream2-akamai dataSourceIds: - akamai documentation: @@ -47,7 +45,7 @@ documentation: url: https://techdocs.akamai.com/datastream2/docs/stream-new-relic description: Configure Akamai log streaming to New Relic icon: logo.png -website: https://www.akamai.com/ + dashboards: - datastream2 alertPolicies: diff --git a/quickstarts/datazoom/config.yml b/quickstarts/datazoom/config.yml index 1f768f7556..37483155b3 100644 --- a/quickstarts/datazoom/config.yml +++ b/quickstarts/datazoom/config.yml @@ -19,8 +19,6 @@ keywords: - newrelic partner - NR1_addData - NR1_sys -installPlans: - - third-party-datazoom dataSourceIds: - datazoom documentation: @@ -28,6 +26,6 @@ documentation: url: https://help.datazoom.io/hc/en-us/articles/360022667532-New-Relic-One description: Configure Datazoom Connector for New Relic One icon: logo.png -website: https://www.datazoom.io + dashboards: - datazoom-dashboard diff --git a/quickstarts/dbmarlin/config.yml b/quickstarts/dbmarlin/config.yml index 0338d55b5c..88638559ba 100644 --- a/quickstarts/dbmarlin/config.yml +++ b/quickstarts/dbmarlin/config.yml @@ -33,8 +33,6 @@ keywords: - newrelic partner - NR1_addData - NR1_sys -installPlans: - - third-party-dbmarlin dataSourceIds: - dbmarlin documentation: @@ -42,6 +40,6 @@ documentation: url: https://docs.dbmarlin.com/docs/integrations/newrelic description: Installation instructions for DBmarlin and the DBmarlin quickstart. icon: logo.svg -website: https://www.dbmarlin.com + dashboards: - dbmarlin diff --git a/quickstarts/dbt-cloud/config.yml b/quickstarts/dbt-cloud/config.yml index 3a5623602a..b2f3eda454 100644 --- a/quickstarts/dbt-cloud/config.yml +++ b/quickstarts/dbt-cloud/config.yml @@ -1,3 +1,4 @@ +id: dd420e5b-ff98-4a26-9bb9-43aa9f8b6276 slug: dbt-cloud description: | Integrates dbt Cloud with New Relic using an Airflow DAG. Our dashboard and alerts help you find issues with dbt Cloud runs and resources (models, seeds, snapshots, tests). Includes the ability to collect failed test rows from dbt tests in Snowflake. diff --git a/quickstarts/debian/config.yml b/quickstarts/debian/config.yml index f18964a40a..addb532e42 100644 --- a/quickstarts/debian/config.yml +++ b/quickstarts/debian/config.yml @@ -24,7 +24,5 @@ documentation: keywords: - os - operating system -installPlans: - - guided-install dataSourceIds: - guided-install diff --git a/quickstarts/deeper-network/config.yml b/quickstarts/deeper-network/config.yml index 2157dab048..779c66bc7d 100644 --- a/quickstarts/deeper-network/config.yml +++ b/quickstarts/deeper-network/config.yml @@ -14,7 +14,7 @@ summary: |+ level: Community icon: logo.png -website: https://deeper.network/ + authors: - New Relic - Kav. Pather @@ -27,8 +27,6 @@ documentation: description: | A guide detailing how to configure and use the `deeper-cli` with New Relic. url: https://github.com/Kav91/deeper-connect-monitoring -installPlans: - - third-party-deeper-network dataSourceIds: - deeper-network keywords: diff --git a/quickstarts/delphix/config.yml b/quickstarts/delphix/config.yml index d7b9b391a1..7ac31167e4 100644 --- a/quickstarts/delphix/config.yml +++ b/quickstarts/delphix/config.yml @@ -4,23 +4,22 @@ title: Delphix description: | ### Summary - The Delphix quickstart for New Relic grants insights and observability of the Delphix Platform to administrators. Users may monitor various Delphix objects, such as dSources and VDBs, and trigger alerts on exceeded thresholds. + The Delphix quickstart for New Relic grants insights and observability of the Delphix Platform to administrators. Users may monitor various Delphix objects, such as dSources and VDBs, and trigger alerts on exceeded thresholds. In addition, when leveraging the Delphix integration, users can feed data into triggered New Relic workflows to command data-ready RCA environments through a [ServiceNow automated request](https://store.servicenow.com/sn_appstore_store.do#!/store/application/bb688f9f9734111012b7318c1253af11) or direct webhook. ### What's the value? - The Delphix Platform is a powerful test data management tool enabling the provisioning of RCA environments for mission-critical applications on demand. The quickstart allows Delphix administrators to monitor their usage, maintain high availability, and reduce the costs of forgotten virtual databases. + The Delphix Platform is a powerful test data management tool enabling the provisioning of RCA environments for mission-critical applications on demand. The quickstart allows Delphix administrators to monitor their usage, maintain high availability, and reduce the costs of forgotten virtual databases. Site Reliability Engineers rely on Delphix and New Relic to provide mission-critical application environments within minutes of an issue which eases investigation during stressful issues and helps achieve SLA times. Delphix can reduce provisioning times from days to minutes. ### What's inside? - The quickstart contains a sample Delphix Platform Dashboard and Storage Utilization Alert to help users get started. + The quickstart contains a sample Delphix Platform Dashboard and Storage Utilization Alert to help users get started. Populating data for dashboards, alerts, and workflows requires the [Delphix Integration](https://github.com/delphix/dct-newrelic-integration) and [Delphix Data Control Tower](https://dct.delphix.com/docs/latest). icon: logo.svg -website: https://www.delphix.com summary: | Monitor and observe the Delphix Platform and respond to mission-critical application issues with data-ready RCA environments. level: Community @@ -35,8 +34,6 @@ keywords: - sre - NR1_addData - NR1_sys -installPlans: - - third-party-delphix dataSourceIds: - delphix documentation: diff --git a/quickstarts/docarray-hnswsearch/config.yml b/quickstarts/docarray-hnswsearch/config.yml index 6512685a94..4cf69fef5c 100644 --- a/quickstarts/docarray-hnswsearch/config.yml +++ b/quickstarts/docarray-hnswsearch/config.yml @@ -21,8 +21,7 @@ description: | summary: | Monitor your Vector search's performance and quality with New Relic DocArray HnswSearch quickstart icon: logo.svg -level: - - New Relic +level: New Relic authors: - New Relic - Ramana Reddy diff --git a/quickstarts/docker/config.yml b/quickstarts/docker/config.yml index 3465fa9348..0cf540ee84 100644 --- a/quickstarts/docker/config.yml +++ b/quickstarts/docker/config.yml @@ -9,7 +9,7 @@ description: | ### Why monitor Docker with New Relic? - New Relic's Docker monitoring quickstart empowers you to get a 360° visibility for your apps, server infrastructure, and Dockerized containers—all in one place. Since your team is likely charged with delivering high-quality software that yields a great customer experience, monitoring Docker is essential. It allows you to keep up that customer experience with your users remaining unaffected by any changes to platforms, tools, languages, or frameworks. + New Relic's Docker monitoring quickstart empowers you to get a 360° visibility for your apps, server infrastructure, and Dockerized containers—all in one place. Since your team is likely charged with delivering high-quality software that yields a great customer experience, monitoring Docker is essential. It allows you to keep up that customer experience with your users remaining unaffected by any changes to platforms, tools, languages, or frameworks. With our Docker monitoring integration, you can easily identify which container is running which app, and quickly solve any issues. Install the New Relic Docker quickstart today to get instant performance metrics for containerized applications across your entire environment. summary: | @@ -19,8 +19,6 @@ level: New Relic authors: - New Relic title: Docker -installPlans: - - third-party-docker dataSourceIds: - docker documentation: diff --git a/quickstarts/dotnet/ado-dotnet/config.yml b/quickstarts/dotnet/ado-dotnet/config.yml index ac123b4112..043ec83c61 100644 --- a/quickstarts/dotnet/ado-dotnet/config.yml +++ b/quickstarts/dotnet/ado-dotnet/config.yml @@ -7,7 +7,7 @@ description: | ## Common uses of ADO.net - You can utilize ADO.net to create reliable and scalable database apps for client- server applications, and work with several data sources. In addition, you can reduce the amount of code and level of maintenance needed for data-oriented applications by using the ADO.NET Entity Framework. + You can utilize ADO.net to create reliable and scalable database apps for client- server applications, and work with several data sources. In addition, you can reduce the amount of code and level of maintenance needed for data-oriented applications by using the ADO.NET Entity Framework. With ADO.NET DataReader, you can retrieve read-only and forward-only data from a database. @@ -16,7 +16,7 @@ description: | - fix inaccessible databases or issues with the network library. - solve your database and client software schema incompatibility. - fix problems that occur when different ADO.NET components interact with one another or your own components. - - debug incorrect SQL, whether hard-coded or created by an application. + - debug incorrect SQL, whether hard-coded or created by an application. - adjust flawed programming logic. ## What’s included in this quickstart? @@ -26,9 +26,9 @@ description: | - Dashboards (hard connects per second, hard disconnects per second, number of active connections, soft connects per second and more). - Alerts inform end users about the quality of their applications on a proactive basis. - Monitor web transactions. - + ### Comprehensive monitoring quickstart for ADO.net - + When you monitor ADO.NET with New Relic, you can observe your ADO.NET data set in real time. Our .NET agent will also let you correlate transactions moving across your application environment and troubleshoot while working in a live development environment. summary: | Discover how the ADO.NET quickstart gives you an advantage with comprehensive monitoring capabilities. @@ -50,8 +50,6 @@ keywords: - ado.net - ado-dotnet - language agent -installPlans: - - dotnet-agent dataSourceIds: - microsoftnet dashboards: diff --git a/quickstarts/dotnet/asp-dotnet-mvc/config.yml b/quickstarts/dotnet/asp-dotnet-mvc/config.yml index d85dc935be..3f02064227 100644 --- a/quickstarts/dotnet/asp-dotnet-mvc/config.yml +++ b/quickstarts/dotnet/asp-dotnet-mvc/config.yml @@ -31,8 +31,6 @@ keywords: - apm - dotnet - language agent -installPlans: - - dotnet-windows-agent dataSourceIds: - microsoftnet dashboards: diff --git a/quickstarts/dotnet/asp-dotnet-web-forms/config.yml b/quickstarts/dotnet/asp-dotnet-web-forms/config.yml index aa61392a43..f313ddd2f9 100644 --- a/quickstarts/dotnet/asp-dotnet-web-forms/config.yml +++ b/quickstarts/dotnet/asp-dotnet-web-forms/config.yml @@ -31,8 +31,6 @@ keywords: - apm - dotnet - language agent -installPlans: - - dotnet-agent dataSourceIds: - microsoftnet dashboards: diff --git a/quickstarts/dotnet/blazor-server/config.yml b/quickstarts/dotnet/blazor-server/config.yml index ee813da894..c74850b372 100644 --- a/quickstarts/dotnet/blazor-server/config.yml +++ b/quickstarts/dotnet/blazor-server/config.yml @@ -4,23 +4,23 @@ description: | ## Comprehensive monitoring for Blazor Server Microsoft developed Blazor Server to build web UIs with C#, HTML, and CSS. As a feature of ASP.NET, our Blazor Server integration with the .NET agent lets you monitor your apps with our quickstart dashboards right out of the box. - Despite being an extremely innovative and exciting new technology, Blazor Server is a relatively new technology. That means there may be some issues that arise during development and deployment as with any new technology. + Despite being an extremely innovative and exciting new technology, Blazor Server is a relatively new technology. That means there may be some issues that arise during development and deployment as with any new technology. ## Why monitor your Blazor Server? - ### Optimize Performance: + ### Optimize Performance: Blazor Server apps rely on SignalR for real-time communication between the client and the server, which can result in slower performance compared to traditional client-side Blazor apps. - ### Improve Scalability: + ### Improve Scalability: Blazor Server apps may struggle with high levels of traffic, as each client connection requires a separate server-side connection. - ### Debug Quickly: + ### Debug Quickly: Debugging Blazor Server apps can be challenging, as the source of errors may be difficult to determine. - ### Optimize State Management: + ### Optimize State Management: Managing state in Blazor Server apps can be more complex than in traditional client-side Blazor apps, as state must be shared between the client and the server. - ### Lower Bandwidth Consumption: + ### Lower Bandwidth Consumption: Blazor Server apps may consume more bandwidth compared to traditional client-side Blazor apps, as data is constantly being sent back and forth between the client and the server. Unleash the power of C# for web development with Blazor Server. This innovative technology not only lets you use your preferred language, but also provides a plethora of useful features. Experience the freedom to run your code on either the server or the client with Blazor Server and tailor the user experience for each device. Embrace a new era of web development with Blazor Server. @@ -34,16 +34,14 @@ title: Blazor Server documentation: - name: Blazor Server installation docs description: | - Our .NET APM agent can be used to instrument and monitor your Blazor Server application. Perform an immediate analysis of your performance statistics. - url: https://docs.newrelic.com/docs/apm/agents/net-agent/getting-started/net-agent-compatibility-requirements-net-framework/#technologies + Our .NET APM agent can be used to instrument and monitor your Blazor Server application. Perform an immediate analysis of your performance statistics. + url: https://docs.newrelic.com/docs/apm/agents/net-agent/getting-started/net-agent-compatibility-requirements/#2 keywords: - dotnet - .net - blazor - blazor server - language agent -installPlans: - - blazor-server dataSourceIds: - microsoftnet dashboards: diff --git a/quickstarts/dotnet/csharp/config.yml b/quickstarts/dotnet/csharp/config.yml index 2f087b3840..08a7648f19 100644 --- a/quickstarts/dotnet/csharp/config.yml +++ b/quickstarts/dotnet/csharp/config.yml @@ -3,23 +3,23 @@ slug: c-sharp description: | ## C# performance monitoring With our C# integration, you can find and address performance bottlenecks while operating in a live development environment. Monitor your app via our dashboard quickstarts and ensure you're delivering the best user experience. - + ## Common C# performance errors Here are the common C# performance errors that you can handle with New Relic integration: - - **Memory management**: C# uses automatic memory management, which takes the burden of manual allocation from developers. However, C# can sometimes run into memory error thereby inhibiting its memory management performance. Our integration offers the best solution to fix that. - - **CPU usage**: New Relic’s high CPU utilization alert is the key to monitoring CPU usage to prevent any potential error. - - **Garbage collection**: Garbage Collector (GC) manages the allocation and release of memory for your application. When the memory is under distress, our C# integration will easily notify you via the memory usage alert. - - **High volume of requests**: Getting a high volume of requests can affect your app’s response time and reduce user satisfaction. With Apdex score, you can track requests and measure user satisfaction. - - **JIT compiler**: If JIT compiler fails to load, it may be due to an out-of-memory exception or internal limitation error. The pathway towards getting the insights you need is the New Relic C# integration. - + + **Memory management**: C# uses automatic memory management, which takes the burden of manual allocation from developers. However, C# can sometimes run into memory error thereby inhibiting its memory management performance. Our integration offers the best solution to fix that. + + **CPU usage**: New Relic’s high CPU utilization alert is the key to monitoring CPU usage to prevent any potential error. + + **Garbage collection**: Garbage Collector (GC) manages the allocation and release of memory for your application. When the memory is under distress, our C# integration will easily notify you via the memory usage alert. + + **High volume of requests**: Getting a high volume of requests can affect your app’s response time and reduce user satisfaction. With Apdex score, you can track requests and measure user satisfaction. + + **JIT compiler**: If JIT compiler fails to load, it may be due to an out-of-memory exception or internal limitation error. The pathway towards getting the insights you need is the New Relic C# integration. + ### C# monitoring use cases - + - Focus on the issues that affect your critical business transactions. - Resolve problems quickly. - Gain knowledge on your system's behavior in advance. @@ -29,20 +29,20 @@ description: | - Scalable error monitoring without affecting production flow. - Maintain low latency with fast throughput. - Get meaningful data about C# errors from your dashboard. - + ### End-to-end visibility into your C# operations Our C# dashboard translates your ingested data into a map that lets you trace business transactions across your C# stack. See your performance errors in context and prioritize your most critical operations. ## What’s included in this quickstart? - + New Relic's C# monitoring quickstart boasts instant full-stack observability out-of-the-box: - Dashboards (Throughput, Error rate, Logs, Web transaction time, Apdex Score and more). - Monitor scripts, functions, and web transactions. - High-value alerts. - - Code-related insights about your application’s health and status. + - Code-related insights about your application’s health and status. - Proactive alerts that inform developers about the status of their applications. summary: | Monitor your C# applications by tracking performance issues with a full end-to-end view of distributed traces. @@ -62,8 +62,6 @@ keywords: - dotnet - c# - language agent -installPlans: - - dotnet-agent dataSourceIds: - microsoftnet dashboards: diff --git a/quickstarts/dotnet/csla-dotnet/config.yml b/quickstarts/dotnet/csla-dotnet/config.yml index a6753fe635..4297239484 100644 --- a/quickstarts/dotnet/csla-dotnet/config.yml +++ b/quickstarts/dotnet/csla-dotnet/config.yml @@ -31,8 +31,6 @@ keywords: - apm - dotnet - language agent -installPlans: - - dotnet-agent dataSourceIds: - microsoftnet dashboards: diff --git a/quickstarts/dotnet/dnn-community/config.yml b/quickstarts/dotnet/dnn-community/config.yml index 5a98508da7..e1782a24d4 100644 --- a/quickstarts/dotnet/dnn-community/config.yml +++ b/quickstarts/dotnet/dnn-community/config.yml @@ -33,8 +33,6 @@ keywords: - cms - content management system - language agent -installPlans: - - dotnet-agent dataSourceIds: - microsoftnet dashboards: diff --git a/quickstarts/dotnet/dnn-evoq/config.yml b/quickstarts/dotnet/dnn-evoq/config.yml index baccd2e0f7..c32a5790f5 100644 --- a/quickstarts/dotnet/dnn-evoq/config.yml +++ b/quickstarts/dotnet/dnn-evoq/config.yml @@ -42,7 +42,5 @@ keywords: - cms - content management system - language agent -installPlans: - - dotnet-agent dataSourceIds: - microsoftnet diff --git a/quickstarts/dotnet/dotnet-core/config.yml b/quickstarts/dotnet/dotnet-core/config.yml index a1ddf1c3e6..09c22ab1d0 100644 --- a/quickstarts/dotnet/dotnet-core/config.yml +++ b/quickstarts/dotnet/dotnet-core/config.yml @@ -31,8 +31,6 @@ keywords: - apm - dotnet - language agent -installPlans: - - dotnet-agent dataSourceIds: - microsoftnet dashboards: diff --git a/quickstarts/dotnet/dotnet-mvc-web-api/config.yml b/quickstarts/dotnet/dotnet-mvc-web-api/config.yml index 0cb3396d48..aaae90d01b 100644 --- a/quickstarts/dotnet/dotnet-mvc-web-api/config.yml +++ b/quickstarts/dotnet/dotnet-mvc-web-api/config.yml @@ -27,8 +27,6 @@ documentation: Web application framework developed by Microsoft, which implements the model-view-controller pattern for building web applications. url: https://docs.newrelic.com/docs/agents/net-agent/getting-started/compatibility-requirements-net-framework-agent -installPlans: - - dotnet-windows-agent dataSourceIds: - microsoftnet keywords: diff --git a/quickstarts/dotnet/dotnet/config.yml b/quickstarts/dotnet/dotnet/config.yml index 5fdc25baf3..cb2d69f31d 100644 --- a/quickstarts/dotnet/dotnet/config.yml +++ b/quickstarts/dotnet/dotnet/config.yml @@ -47,8 +47,6 @@ keywords: - dotnet - language agent - most popular -installPlans: - - dotnet-agent dataSourceIds: - microsoftnet dashboards: diff --git a/quickstarts/dotnet/episerver-cms/config.yml b/quickstarts/dotnet/episerver-cms/config.yml index 7cf74e41d0..77f9f07c86 100644 --- a/quickstarts/dotnet/episerver-cms/config.yml +++ b/quickstarts/dotnet/episerver-cms/config.yml @@ -15,7 +15,7 @@ description: | ### New Relic + Episerver CMS = Optimum performance monitoring Monitor your Episerver CMS performance with our .NET agent. The integration provides a high-level overview of Episerver CMS, giving you access to code-level details like transaction traces, database queries, and errors. Also, it empowers you to track activities across a large Episerver distributed system. - New Relic Episerver CMS quickstart gives you proactive notifications from alerts to respond quickly when your app stops running seamlessly. You can use the query builder to create custom dashboards from your data. + New Relic Episerver CMS quickstart gives you proactive notifications from alerts to respond quickly when your app stops running seamlessly. You can use the query builder to create custom dashboards from your data. Download New Relic Episerver CMS quickstart today to monitor Episerver CMS metrics in real-time. This quickstart is your gateway to instant monitoring of your Episerver CMS. summary: | Episerver offers full-service CMS with dedicated layers for commerce and marketing. Proactively monitor the performance of the app with New Relic’s Episerver CMS quickstart. @@ -34,8 +34,6 @@ keywords: - cms - content management system - language agent -installPlans: - - dotnet-windows-agent dataSourceIds: - microsoftnet dashboards: diff --git a/quickstarts/dotnet/fubumvc/config.yml b/quickstarts/dotnet/fubumvc/config.yml index 11a717fa80..06648da4b5 100644 --- a/quickstarts/dotnet/fubumvc/config.yml +++ b/quickstarts/dotnet/fubumvc/config.yml @@ -3,14 +3,14 @@ slug: fubumvc description: | ## New Relic + FubuMVC - New Relic’s monitoring quickstart for FubuMVC monitors the performance and reliability of FubuMVC applications. + New Relic’s monitoring quickstart for FubuMVC monitors the performance and reliability of FubuMVC applications. It includes visual dashboards which showcase real-time metrics of the FubuMVC stack, including: - Errors overview - VM overview - Latest error display - CPU utilization display - - Amount of memory heap used, and more. + - Amount of memory heap used, and more. The quickstart also includes alerts when certain metrics such as the Apdex score, memory usage, and number of transaction errors hit a critical threshold. ### Why monitor FubuMVC with New Relic? @@ -34,8 +34,6 @@ keywords: - apm - dotnet - language agent -installPlans: - - dotnet-agent dataSourceIds: - microsoftnet dashboards: diff --git a/quickstarts/dotnet/iis/config.yml b/quickstarts/dotnet/iis/config.yml index 830e9ed901..c2be398e21 100644 --- a/quickstarts/dotnet/iis/config.yml +++ b/quickstarts/dotnet/iis/config.yml @@ -11,7 +11,7 @@ description: |- ## More info - Check out the [documentation](https://docs.newrelic.com/docs/agents/net-agent/getting-started/introduction-new-relic-net/) to learn more about New Relic monitoring for IIS. + Check out the [documentation](https://docs.newrelic.com/docs/agents/net-agent/getting-started/introduction-new-relic-net/) to learn more about New Relic monitoring for IIS. summary: Monitor IIS with New Relic's .NET agent icon: logo.svg level: New Relic @@ -28,8 +28,6 @@ keywords: - apm - dotnet - language agent -installPlans: - - dotnet-windows-agent dataSourceIds: - microsoftnet dashboards: diff --git a/quickstarts/dotnet/jayrock/config.yml b/quickstarts/dotnet/jayrock/config.yml index 6ca12998af..41028ac6b2 100644 --- a/quickstarts/dotnet/jayrock/config.yml +++ b/quickstarts/dotnet/jayrock/config.yml @@ -21,7 +21,5 @@ keywords: - apm - dotnet - language agent -installPlans: - - dotnet-agent dataSourceIds: - microsoftnet diff --git a/quickstarts/dotnet/monorail/config.yml b/quickstarts/dotnet/monorail/config.yml index c31242da83..47cfb36a8f 100644 --- a/quickstarts/dotnet/monorail/config.yml +++ b/quickstarts/dotnet/monorail/config.yml @@ -31,8 +31,6 @@ keywords: - apm - dotnet - language agent -installPlans: - - dotnet-agent dataSourceIds: - microsoftnet dashboards: diff --git a/quickstarts/dotnet/msmq/config.yml b/quickstarts/dotnet/msmq/config.yml index 22f30fee78..7fb9256a78 100644 --- a/quickstarts/dotnet/msmq/config.yml +++ b/quickstarts/dotnet/msmq/config.yml @@ -32,8 +32,6 @@ keywords: - dotnet - queue - language agent -installPlans: - - dotnet-windows-agent dataSourceIds: - microsoftnet dashboards: diff --git a/quickstarts/dotnet/nancyfx/config.yml b/quickstarts/dotnet/nancyfx/config.yml index 33526484ae..3ca653a9e8 100644 --- a/quickstarts/dotnet/nancyfx/config.yml +++ b/quickstarts/dotnet/nancyfx/config.yml @@ -31,8 +31,6 @@ keywords: - apm - dotnet - language agent -installPlans: - - dotnet-agent dataSourceIds: - microsoftnet dashboards: diff --git a/quickstarts/dotnet/nservicebus/config.yml b/quickstarts/dotnet/nservicebus/config.yml index 5d49cd457c..fc245c9093 100644 --- a/quickstarts/dotnet/nservicebus/config.yml +++ b/quickstarts/dotnet/nservicebus/config.yml @@ -3,16 +3,16 @@ slug: nservicebus description: |- ## NService Bus - NServiceBus is a messaging system for service-oriented backend architectures. It is specifically designed for [.NET applications](https://newrelic.com/products/application-monitoring/NET), and it implements a Pub/Sub brokering system, along with many other features, that make handling service messaging simple and intuitive. However, backend architectures are complicated, with many interacting services and processes, so it is not unusual for messages to get dropped or corrupted in some way. + NServiceBus is a messaging system for service-oriented backend architectures. It is specifically designed for [.NET applications](https://newrelic.com/products/application-monitoring/NET), and it implements a Pub/Sub brokering system, along with many other features, that make handling service messaging simple and intuitive. However, backend architectures are complicated, with many interacting services and processes, so it is not unusual for messages to get dropped or corrupted in some way. The New Relic complete monitoring quickstart provides insight into all aspects of the NServiceBus application runtime, saving users from countless headaches that could arise when working with the system. ### New Relic NServiceBus quickstart features - The New Relic NServiceBus Quickstart comes packaged with numerous features that ensure the health of the NServiceBus application. They are broken down into two categories. + The New Relic NServiceBus Quickstart comes packaged with numerous features that ensure the health of the NServiceBus application. They are broken down into two categories. Dashboards, which provide visual insight into application performance, and Alerts, which notify developers when a potential issue arises within NServiceBus. - Dashboards include the following + Dashboards include the following - Transactions overview which gives an overview of all messaging transactions passing through NServiceBus - Errors overview documenting errors occurring within the system and their potential origins - VM overview which reports key VM utilization statistics such as memory and CPU usage @@ -27,9 +27,9 @@ description: |- ### New Relic - the ideal NServiceBus monitoring tool - New Relic’s quickstart provides the ultimate in NServiceBus monitoring solutions. Having continual insight into NServiceBus performance is key to ensuring that backend systems run smoothly with consistent uptime, as messaging is a huge point of failure for backend architectures. When messages are not transacted successfully, communication between backend services breaks down leaving the application unable to function successfully as a whole. + New Relic’s quickstart provides the ultimate in NServiceBus monitoring solutions. Having continual insight into NServiceBus performance is key to ensuring that backend systems run smoothly with consistent uptime, as messaging is a huge point of failure for backend architectures. When messages are not transacted successfully, communication between backend services breaks down leaving the application unable to function successfully as a whole. - By providing dashboard insight into the apdex score and commonly failed transactions, and alerts which notify the user prior to reaching critical thresholds, the New Relic quickstart allows weak points in the system to be identified immediately, before communication in the backend fails completely. + By providing dashboard insight into the apdex score and commonly failed transactions, and alerts which notify the user prior to reaching critical thresholds, the New Relic quickstart allows weak points in the system to be identified immediately, before communication in the backend fails completely. Similarly, proper management of the NServiceBus VM is critical to ensuring that the NServiceBus application itself doesn’t crash completely. The New Relic dashboards and alerts provide continual VM monitoring, allowing developers to make key decisions regarding throttling and other performance constraints when usage gets too high. summary: NServiceBus is a message brokering application for backends having many services. The New Relic quickstart helps developers to ensure that NServiceBus is always functioning properly, so that they maintain highly stable and fault tolerant backends. @@ -42,8 +42,6 @@ documentation: - name: NServiceBus installation docs description: NServiceBus is an implementation of a 'service bus' pattern for .NET. url: https://docs.newrelic.com/docs/agents/net-agent/getting-started/compatibility-requirements-net-framework-agent -installPlans: - - dotnet-agent dataSourceIds: - microsoftnet keywords: diff --git a/quickstarts/dotnet/openrasta/config.yml b/quickstarts/dotnet/openrasta/config.yml index fdb6fa181c..712c4cef0b 100644 --- a/quickstarts/dotnet/openrasta/config.yml +++ b/quickstarts/dotnet/openrasta/config.yml @@ -27,8 +27,6 @@ documentation: OpenRasta is an open-source .NET framework for building everything web, from web sites to RESTful APIs. url: https://docs.newrelic.com/docs/agents/net-agent/getting-started/compatibility-requirements-net-framework-agent -installPlans: - - dotnet-agent dataSourceIds: - microsoftnet keywords: diff --git a/quickstarts/dotnet/restsharp/config.yml b/quickstarts/dotnet/restsharp/config.yml index a62ca3cde8..d3cffbcbd0 100644 --- a/quickstarts/dotnet/restsharp/config.yml +++ b/quickstarts/dotnet/restsharp/config.yml @@ -14,7 +14,7 @@ description: | ### Why Monitor RestSharp with New Relic? - With application performance monitoring (APM), you will get a high-level overview of your RestSharp app, query data and track activities across the application. The New Relic RestSharp quickstart automatically instruments RestSharp with our .NET agent for a comprehensive monitoring of RestSharp. + With application performance monitoring (APM), you will get a high-level overview of your RestSharp app, query data and track activities across the application. The New Relic RestSharp quickstart automatically instruments RestSharp with our .NET agent for a comprehensive monitoring of RestSharp. Install the New Relic RestSharp quickstart today to proactively monitor RestSharp in real-time, detect issues quickly, and respond to them efficiently. The instant observability quickstart is the key to a seamless RestSharp monitoring. summary: | @@ -30,8 +30,6 @@ documentation: Popular REST API client library for .NET that features auto-serialization, request type detection, a variety of authentications, and more. url: https://docs.newrelic.com/docs/agents/net-agent/getting-started/compatibility-requirements-net-framework-agent -installPlans: - - dotnet-agent dataSourceIds: - microsoftnet keywords: diff --git a/quickstarts/dotnet/servicestack/config.yml b/quickstarts/dotnet/servicestack/config.yml index 2a7928d5e3..267c1ac88e 100644 --- a/quickstarts/dotnet/servicestack/config.yml +++ b/quickstarts/dotnet/servicestack/config.yml @@ -27,8 +27,6 @@ documentation: Open-source framework designed to be an alternative to the WCF, ASP.NET MVC, and ASP.NET Web API frameworks. url: https://docs.newrelic.com/docs/agents/net-agent/getting-started/compatibility-requirements-net-framework-agent -installPlans: - - dotnet-agent dataSourceIds: - microsoftnet keywords: diff --git a/quickstarts/dotnet/silverlight/config.yml b/quickstarts/dotnet/silverlight/config.yml index 158de71edd..393157e56e 100644 --- a/quickstarts/dotnet/silverlight/config.yml +++ b/quickstarts/dotnet/silverlight/config.yml @@ -27,8 +27,6 @@ documentation: Microsoft Silverlight is a deprecated application framework for writing and running rich Internet applications. url: https://docs.newrelic.com/docs/agents/net-agent/getting-started/compatibility-requirements-net-framework-agent -installPlans: - - dotnet-agent dataSourceIds: - microsoftnet keywords: diff --git a/quickstarts/dotnet/springdotnet/config.yml b/quickstarts/dotnet/springdotnet/config.yml index e4619cc2a1..c0400814d8 100644 --- a/quickstarts/dotnet/springdotnet/config.yml +++ b/quickstarts/dotnet/springdotnet/config.yml @@ -27,8 +27,6 @@ documentation: Comprehensive infrastructural support for developing enterprise .NET applications; conceptually based on the Java Spring Framework. url: https://docs.newrelic.com/docs/agents/net-agent/getting-started/compatibility-requirements-net-framework-agent -installPlans: - - dotnet-agent dataSourceIds: - microsoftnet keywords: diff --git a/quickstarts/dotnet/umbraco/config.yml b/quickstarts/dotnet/umbraco/config.yml index e808b5d713..a5ae01a16f 100644 --- a/quickstarts/dotnet/umbraco/config.yml +++ b/quickstarts/dotnet/umbraco/config.yml @@ -11,7 +11,7 @@ description: |- ## More info - Check out the [documentation](https://docs.newrelic.com/docs/agents/net-agent/getting-started/introduction-new-relic-net/) to learn more about New Relic monitoring for Umbraco. + Check out the [documentation](https://docs.newrelic.com/docs/agents/net-agent/getting-started/introduction-new-relic-net/) to learn more about New Relic monitoring for Umbraco. summary: Monitor Umbraco with New Relic's .NET agent icon: logo.svg level: New Relic @@ -22,8 +22,6 @@ documentation: - name: Umbraco installation docs description: Open source CMS for the web built in ASP.NET. url: https://docs.newrelic.com/docs/agents/net-agent/getting-started/compatibility-requirements-net-framework-agent -installPlans: - - dotnet-windows-agent dataSourceIds: - microsoftnet keywords: diff --git a/quickstarts/drdroid/config.yml b/quickstarts/drdroid/config.yml new file mode 100644 index 0000000000..bc89bdceab --- /dev/null +++ b/quickstarts/drdroid/config.yml @@ -0,0 +1,29 @@ +id: 80a964ae-8fa2-4743-b1e1-e7f2a259501b +slug: drdroid +description: | + ## DoctorDroid PlayBooks Overview + PlayBooks is a single interface to run log commands, DB queries, remote server commands, k8s commands, fetch metrics and more. + + ### New Relic integration with DoctorDroid + With the New Relic - DoctorDroid integration, you can query metrics from New Relic right to your DoctorDroid Playbook. Queries are available for: + - Fetching a New Relic golden metric + - Fetching a metric from a specific dashboard widget + - Fetching a metric from a custom NRQL query + +summary: | + Integrate New Relic with DoctorDroid's PlayBooks +icon: logo.jpeg +level: New Relic +authors: + - New Relic +title: DoctorDroid +documentation: + - name: DoctorDroid integration documentation + description: | + Integrate New Relic for use in DoctorDroid's PlayBooks feature. + url: https://docs.drdroid.io/docs/new-relic-access +keywords: + - doctor droid + - drdroid + - playbook + - newrelic partner \ No newline at end of file diff --git a/quickstarts/drdroid/logo.jpeg b/quickstarts/drdroid/logo.jpeg new file mode 100644 index 0000000000..ecd7c21cd2 Binary files /dev/null and b/quickstarts/drdroid/logo.jpeg differ diff --git a/quickstarts/dropwizard/config.yml b/quickstarts/dropwizard/config.yml index 1b61926bd7..dc9e438985 100644 --- a/quickstarts/dropwizard/config.yml +++ b/quickstarts/dropwizard/config.yml @@ -15,8 +15,6 @@ level: New Relic authors: - New Relic title: Dropwizard -installPlans: - - third-party-dropwizard dataSourceIds: - dropwizard documentation: diff --git a/quickstarts/drupal/config.yml b/quickstarts/drupal/config.yml index 25996c3249..d97c80de07 100644 --- a/quickstarts/drupal/config.yml +++ b/quickstarts/drupal/config.yml @@ -27,8 +27,6 @@ documentation: Drupal is a free and open-source web content management framework written in PHP. url: https://docs.newrelic.com/docs/agents/php-agent/getting-started/php-agent-compatibility-requirements -installPlans: - - php-agent dataSourceIds: - php keywords: diff --git a/quickstarts/elasticsearch/config.yml b/quickstarts/elasticsearch/config.yml index 4550b54dcc..a23746c809 100644 --- a/quickstarts/elasticsearch/config.yml +++ b/quickstarts/elasticsearch/config.yml @@ -8,7 +8,7 @@ summary: | This quickstart includes dashboards and alerts for popular signals regarding Elasticsearch cluster health and performance. level: New Relic icon: logo.png -website: https://www.elastic.co/what-is/elasticsearch + authors: - New Relic - Zack Mutchler @@ -17,8 +17,6 @@ documentation: description: | Multitenant-capable full-text RESTful search engine with an HTTP web interface and schema-free JSON documents. url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/elasticsearch-monitoring-integration/ -installPlans: - - elasticsearch-integration dataSourceIds: - elasticsearch keywords: diff --git a/quickstarts/elixir/config.yml b/quickstarts/elixir/config.yml index 93c1769e9c..c471020aa9 100644 --- a/quickstarts/elixir/config.yml +++ b/quickstarts/elixir/config.yml @@ -23,9 +23,6 @@ keywords: - elixir - language agent -installPlans: - - setup-elixir-agent - dataSourceIds: - elixir @@ -34,4 +31,3 @@ documentation: description: Popular open source programming language with automated features. url: https://docs.newrelic.com/docs/integrations/open-source-telemetry-integrations/elixir/elixir-open-source-agent icon: logo.png -website: https://www.newrelic.com diff --git a/quickstarts/etcd/config.yml b/quickstarts/etcd/config.yml index d2d1c1a8bb..3b989f8337 100644 --- a/quickstarts/etcd/config.yml +++ b/quickstarts/etcd/config.yml @@ -23,9 +23,6 @@ keywords: - prometheus - remote-write - featured -installPlans: - - setup-prometheus - - setup-prometheus-agent-mode dataSourceIds: - prometheus - prometheus-agent-mode @@ -45,4 +42,3 @@ documentation: url: https://etcd.io/docs/v3.5/metrics/ description: Learn more about the Prometheus metrics available for Etcd icon: logo.png -website: https://etcd.io/ diff --git a/quickstarts/f5/config.yml b/quickstarts/f5/config.yml index 3b91987a4e..f99bea9366 100644 --- a/quickstarts/f5/config.yml +++ b/quickstarts/f5/config.yml @@ -25,8 +25,6 @@ keywords: - big-ip - big ip - load balancer -installPlans: - - third-party-f5 dataSourceIds: - f5 alertPolicies: @@ -36,7 +34,7 @@ dashboards: documentation: - name: F5 installation docs description: | - Set of application delivery products that work together to ensure + Set of application delivery products that work together to ensure high availability, improved performance, application security, and access control. url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/f5-monitoring-integration/#install icon: logo.svg diff --git a/quickstarts/fastly/config.yml b/quickstarts/fastly/config.yml index 7f79dfa94a..0cf92f78c0 100644 --- a/quickstarts/fastly/config.yml +++ b/quickstarts/fastly/config.yml @@ -21,8 +21,6 @@ keywords: - newrelic partner - NR1_addData - NR1_sys -installPlans: - - third-party-fastly dataSourceIds: - fastly documentation: @@ -30,7 +28,7 @@ documentation: url: https://docs.fastly.com/en/guides/log-streaming-newrelic-logs description: Configure Fastly streaming logs to New Relic icon: logo.png -website: https://www.fastly.com + dashboards: - fastly-cdn alertPolicies: diff --git a/quickstarts/fluent-bit-plugin-for-logs/config.yml b/quickstarts/fluent-bit-plugin-for-logs/config.yml index dd840181cc..8be2989ed1 100644 --- a/quickstarts/fluent-bit-plugin-for-logs/config.yml +++ b/quickstarts/fluent-bit-plugin-for-logs/config.yml @@ -20,7 +20,5 @@ documentation: keywords: - logs - logging -installPlans: - - third-party-fluent-bit-plugin-for-logs dataSourceIds: - fluent-bit diff --git a/quickstarts/fluentd-plugin-for-logs/config.yml b/quickstarts/fluentd-plugin-for-logs/config.yml index b5732ace72..411711efd1 100644 --- a/quickstarts/fluentd-plugin-for-logs/config.yml +++ b/quickstarts/fluentd-plugin-for-logs/config.yml @@ -20,7 +20,5 @@ documentation: keywords: - logs - logging -installPlans: - - third-party-fluentd-plugin-for-logs dataSourceIds: - fluentd diff --git a/quickstarts/full-stack-observability/config.yml b/quickstarts/full-stack-observability/config.yml index 7c2670ef2c..9d69bf251e 100644 --- a/quickstarts/full-stack-observability/config.yml +++ b/quickstarts/full-stack-observability/config.yml @@ -7,12 +7,10 @@ summary: | Full Stack Observability over Metrics, Events, Logs and Traces. level: New Relic icon: logo.svg -website: https://www.newrelic.com/ + authors: - New Relic - Samuel Vandamme -installPlans: - - guided-install dataSourceIds: - guided-install keywords: @@ -24,4 +22,3 @@ documentation: - name: Guild installation documentation description: Monitor your Full Stack with New Relic. url: https://docs.newrelic.com/docs/infrastructure/host-integrations/installation/new-relic-guided-install-overview/ - diff --git a/quickstarts/full-story/config.yml b/quickstarts/full-story/config.yml index b61a8b9370..a830d48cd1 100644 --- a/quickstarts/full-story/config.yml +++ b/quickstarts/full-story/config.yml @@ -9,8 +9,6 @@ summary: | icon: logo.png keywords: - newrelic partner -installPlans: - - third-party-full-story dataSourceIds: - full-story level: Community diff --git a/quickstarts/gatsby-build/config.yml b/quickstarts/gatsby-build/config.yml index b8b67aaa9c..6cd49eb898 100644 --- a/quickstarts/gatsby-build/config.yml +++ b/quickstarts/gatsby-build/config.yml @@ -2,7 +2,7 @@ id: d234c09c-3338-4713-8340-ca75766445d6 slug: gatsby-build title: Gatsby Build summary: | - The Gatsby quickstart allows you to get visibility into the build time of your Gatsby sites, using OpenTelemetry to collect each step as a span in a Distributed Trace. + The Gatsby quickstart allows you to get visibility into the build time of your Gatsby sites, using OpenTelemetry to collect each step as a span in a Distributed Trace. Monitor your build in real-time to highlight which steps are affecting performance, so you can improve them faster. description: | The Gatsby quickstart allows you to get visibility into the build time of your Gatsby Sites, @@ -13,8 +13,6 @@ icon: logo.png authors: - New Relic - Ruairi Douglas -installPlans: - - gatsby-build-newrelic dataSourceIds: - gatsby-build-newrelic documentation: diff --git a/quickstarts/gcp/apigee-api/config.yml b/quickstarts/gcp/apigee-api/config.yml index 163a3612bd..8640fb6c9d 100644 --- a/quickstarts/gcp/apigee-api/config.yml +++ b/quickstarts/gcp/apigee-api/config.yml @@ -7,7 +7,7 @@ summary: | Monitor Apigee API Flows with New Relic's Trace API. icon: logo.svg level: Community -website: https://cloud.google.com/apigee + keywords: - nrlabs - nrlabs-data @@ -20,7 +20,5 @@ documentation: description: | Installation and configuration instructions url: https://github.com/newrelic-experimental/apigee-distributed-tracing -installPlans: - - third-party-apigee-api dataSourceIds: - apigee-api diff --git a/quickstarts/gcp/gcp-cloud-run/config.yml b/quickstarts/gcp/gcp-cloud-run/config.yml index 650e745cc4..2e597ab16c 100644 --- a/quickstarts/gcp/gcp-cloud-run/config.yml +++ b/quickstarts/gcp/gcp-cloud-run/config.yml @@ -31,8 +31,6 @@ keywords: - gcp - google cloud platform - containers -installPlans: - - gcp-infrastructure-monitoring dataSourceIds: - google-cloud-platform dashboards: diff --git a/quickstarts/gcp/gcp-dataflow/config.yml b/quickstarts/gcp/gcp-dataflow/config.yml index 1c2d300bd1..5ccb3d196b 100644 --- a/quickstarts/gcp/gcp-dataflow/config.yml +++ b/quickstarts/gcp/gcp-dataflow/config.yml @@ -27,8 +27,6 @@ documentation: keywords: - gcp - google cloud platform -installPlans: - - gcp-infrastructure-monitoring dataSourceIds: - google-cloud-platform dashboards: diff --git a/quickstarts/gcp/gcp-dataproc/config.yml b/quickstarts/gcp/gcp-dataproc/config.yml index 98420e40ff..652866d9b6 100644 --- a/quickstarts/gcp/gcp-dataproc/config.yml +++ b/quickstarts/gcp/gcp-dataproc/config.yml @@ -30,8 +30,6 @@ documentation: keywords: - gcp - google cloud platform -installPlans: - - gcp-infrastructure-monitoring dataSourceIds: - google-cloud-platform dashboards: diff --git a/quickstarts/gcp/gcp-datastore/config.yml b/quickstarts/gcp/gcp-datastore/config.yml index df9830a8de..0487039bb9 100644 --- a/quickstarts/gcp/gcp-datastore/config.yml +++ b/quickstarts/gcp/gcp-datastore/config.yml @@ -31,7 +31,5 @@ keywords: - gcp - google cloud platform - database -installPlans: - - gcp-infrastructure-monitoring dataSourceIds: - google-cloud-platform diff --git a/quickstarts/gcp/gcp-dedicated-interconnect/config.yml b/quickstarts/gcp/gcp-dedicated-interconnect/config.yml index dca63a356d..215255410d 100644 --- a/quickstarts/gcp/gcp-dedicated-interconnect/config.yml +++ b/quickstarts/gcp/gcp-dedicated-interconnect/config.yml @@ -31,7 +31,5 @@ keywords: - gcp - google cloud platform - networking -installPlans: - - gcp-infrastructure-monitoring dataSourceIds: - google-cloud-platform diff --git a/quickstarts/gcp/gcp-firebase-database/config.yml b/quickstarts/gcp/gcp-firebase-database/config.yml index 9445b0e79a..4f6a68e494 100644 --- a/quickstarts/gcp/gcp-firebase-database/config.yml +++ b/quickstarts/gcp/gcp-firebase-database/config.yml @@ -30,8 +30,6 @@ documentation: keywords: - gcp - google cloud platform -installPlans: - - gcp-infrastructure-monitoring dataSourceIds: - google-cloud-platform dashboards: diff --git a/quickstarts/gcp/gcp-firebase-hosting/config.yml b/quickstarts/gcp/gcp-firebase-hosting/config.yml index 9b3438ac63..98721cc4e6 100644 --- a/quickstarts/gcp/gcp-firebase-hosting/config.yml +++ b/quickstarts/gcp/gcp-firebase-hosting/config.yml @@ -30,8 +30,6 @@ documentation: keywords: - gcp - google cloud platform -installPlans: - - gcp-infrastructure-monitoring dataSourceIds: - google-cloud-platform dashboards: diff --git a/quickstarts/gcp/gcp-firebase-storage/config.yml b/quickstarts/gcp/gcp-firebase-storage/config.yml index 0862978065..15fd597fb3 100644 --- a/quickstarts/gcp/gcp-firebase-storage/config.yml +++ b/quickstarts/gcp/gcp-firebase-storage/config.yml @@ -30,7 +30,5 @@ documentation: keywords: - gcp - google cloud platform -installPlans: - - gcp-infrastructure-monitoring dataSourceIds: - google-cloud-platform diff --git a/quickstarts/gcp/gcp-firestore/config.yml b/quickstarts/gcp/gcp-firestore/config.yml index e73319b3ac..b5119cf7d1 100644 --- a/quickstarts/gcp/gcp-firestore/config.yml +++ b/quickstarts/gcp/gcp-firestore/config.yml @@ -31,7 +31,5 @@ keywords: - gcp - google cloud platform - database -installPlans: - - gcp-infrastructure-monitoring dataSourceIds: - google-cloud-platform diff --git a/quickstarts/gcp/gcp-router/config.yml b/quickstarts/gcp/gcp-router/config.yml index f7bdcecf97..4a35b92aa1 100644 --- a/quickstarts/gcp/gcp-router/config.yml +++ b/quickstarts/gcp/gcp-router/config.yml @@ -31,7 +31,5 @@ keywords: - gcp - google cloud platform - networking -installPlans: - - gcp-infrastructure-monitoring dataSourceIds: - google-cloud-platform diff --git a/quickstarts/gcp/gcp-vpc/config.yml b/quickstarts/gcp/gcp-vpc/config.yml index 09aac64e5f..b6f7531a33 100644 --- a/quickstarts/gcp/gcp-vpc/config.yml +++ b/quickstarts/gcp/gcp-vpc/config.yml @@ -31,8 +31,6 @@ keywords: - gcp - google cloud platform - networking -installPlans: - - gcp-infrastructure-monitoring dataSourceIds: - google-cloud-platform dashboards: diff --git a/quickstarts/gcp/google-app-engine/config.yml b/quickstarts/gcp/google-app-engine/config.yml index cba47f9f92..bbf34a4172 100644 --- a/quickstarts/gcp/google-app-engine/config.yml +++ b/quickstarts/gcp/google-app-engine/config.yml @@ -30,8 +30,6 @@ documentation: keywords: - gcp - google cloud platform -installPlans: - - gcp-infrastructure-monitoring dataSourceIds: - google-cloud-platform dashboards: diff --git a/quickstarts/gcp/google-bigquery/config.yml b/quickstarts/gcp/google-bigquery/config.yml index fa678f2c52..c6b5c29727 100644 --- a/quickstarts/gcp/google-bigquery/config.yml +++ b/quickstarts/gcp/google-bigquery/config.yml @@ -31,8 +31,6 @@ keywords: - gcp - google cloud platform - database -installPlans: - - gcp-infrastructure-monitoring dataSourceIds: - google-cloud-platform dashboards: diff --git a/quickstarts/gcp/google-cloud-functions/config.yml b/quickstarts/gcp/google-cloud-functions/config.yml index 530a7c67fe..934cb41eac 100644 --- a/quickstarts/gcp/google-cloud-functions/config.yml +++ b/quickstarts/gcp/google-cloud-functions/config.yml @@ -31,8 +31,6 @@ keywords: - gcp - google cloud platform - serverless -installPlans: - - gcp-infrastructure-monitoring dataSourceIds: - google-cloud-platform dashboards: diff --git a/quickstarts/gcp/google-cloud-spanner-otel/config.yml b/quickstarts/gcp/google-cloud-spanner-otel/config.yml index 06ece872b9..c93649d55c 100644 --- a/quickstarts/gcp/google-cloud-spanner-otel/config.yml +++ b/quickstarts/gcp/google-cloud-spanner-otel/config.yml @@ -2,30 +2,20 @@ id: 52bd4e38-5f13-4b78-add8-d5c70bb34fba slug: google-cloud-spanner-otel description: |- ## What is Google Cloud Spanner? - Google Cloud Spanner is a Globally-distributed relational database service built for the cloud. Add schemas, write and modify data, and run queries. - ### How it works - This quickstart works by using the [Prometheus OTel exporter](https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/exporter/prometheusexporter) to send Spanner metrics to New Relic. - ### Get started! - The metric data available with this quickstart pairs alongside the [infrastructure monitoring quickstart](https://newrelic.com/instant-observability/google-cloud-spanner) for full stack observability on your cloud spanner intance. This integration focuses on Query metrics, Transaction metrics, and other DB monitoring metrics, while the infra integration focuses on monitoring the infrastructure. - ### About this quickstart - This integration gives you visibility into key metrics on your Spanner isntance. The metrics included give you deep insights into your Reads, queries, and transactions occuring in your cloud spanner instance. - - ### Key Tips for using this quickstart - - The dashboard included in this quickstart works by using finding `instrumentation.source = gcpspanner.` If you want to use this without changing the queries, be sure to use this as the name to identify the data source from the prometheus link. - You can add key identifying variables like project, instance, and database to your dashboard by selecting the `Add variable` option at the top of the dashboard summary: Leverage OTel to monitor GCP Cloud Spanner icon: gcpspanner.png -level: verified +level: Verified authors: - New Relic title: Google Cloud Spanner (OTel monitoring) @@ -46,9 +36,7 @@ keywords: - otel - NR1_addData - NR1_sys -installPlans: - - cloud-spanner dataSourceIds: - cloud-spanner dashboards: - - gcp-cloud-spanner + - gcp-cloud-spanner \ No newline at end of file diff --git a/quickstarts/gcp/google-cloud-spanner/config.yml b/quickstarts/gcp/google-cloud-spanner/config.yml index a335255ce8..0bb50bda04 100644 --- a/quickstarts/gcp/google-cloud-spanner/config.yml +++ b/quickstarts/gcp/google-cloud-spanner/config.yml @@ -33,7 +33,5 @@ keywords: - database dashboards: - gcp-spanner -installPlans: - - gcp-infrastructure-monitoring dataSourceIds: - google-cloud-platform diff --git a/quickstarts/gcp/google-cloud-sql/config.yml b/quickstarts/gcp/google-cloud-sql/config.yml index ca84adc4d5..02ce8b41e7 100644 --- a/quickstarts/gcp/google-cloud-sql/config.yml +++ b/quickstarts/gcp/google-cloud-sql/config.yml @@ -31,8 +31,6 @@ keywords: - gcp - google cloud platform - database -installPlans: - - gcp-infrastructure-monitoring dataSourceIds: - google-cloud-platform dashboards: diff --git a/quickstarts/gcp/google-cloud-storage/config.yml b/quickstarts/gcp/google-cloud-storage/config.yml index fc9ae65c71..8c6f97e9c7 100644 --- a/quickstarts/gcp/google-cloud-storage/config.yml +++ b/quickstarts/gcp/google-cloud-storage/config.yml @@ -31,8 +31,6 @@ keywords: - gcp - google cloud platform - storage -installPlans: - - gcp-infrastructure-monitoring dataSourceIds: - google-cloud-platform dashboards: diff --git a/quickstarts/gcp/google-compute-engine/config.yml b/quickstarts/gcp/google-compute-engine/config.yml index eba3c205ca..ec0b7c32f4 100644 --- a/quickstarts/gcp/google-compute-engine/config.yml +++ b/quickstarts/gcp/google-compute-engine/config.yml @@ -30,7 +30,5 @@ documentation: keywords: - gcp - google cloud platform -installPlans: - - gcp-infrastructure-monitoring dataSourceIds: - google-cloud-platform diff --git a/quickstarts/gcp/google-load-balancing/config.yml b/quickstarts/gcp/google-load-balancing/config.yml index ea84e9a85d..b4018b1b73 100644 --- a/quickstarts/gcp/google-load-balancing/config.yml +++ b/quickstarts/gcp/google-load-balancing/config.yml @@ -32,8 +32,6 @@ keywords: - google cloud platform - load balancer - networking -installPlans: - - gcp-infrastructure-monitoring dataSourceIds: - google-cloud-platform dashboards: diff --git a/quickstarts/gcp/google-pub-sub/config.yml b/quickstarts/gcp/google-pub-sub/config.yml index ccfbb55c38..7b390c69e6 100644 --- a/quickstarts/gcp/google-pub-sub/config.yml +++ b/quickstarts/gcp/google-pub-sub/config.yml @@ -28,8 +28,6 @@ keywords: - gcp - google cloud platform - queue -installPlans: - - gcp-infrastructure-monitoring dataSourceIds: - google-cloud-platform dashboards: diff --git a/quickstarts/gigamon-appinsights/config.yml b/quickstarts/gigamon-appinsights/config.yml index 8f98f2aa0d..413f19c0fe 100644 --- a/quickstarts/gigamon-appinsights/config.yml +++ b/quickstarts/gigamon-appinsights/config.yml @@ -1,14 +1,13 @@ id: 77af041f-de6c-45d1-9ac1-8d77d48ab9a9 - slug: gigamon-appinsights title: Gigamon Application Insights description: | ## Deep Application Visibility - Analytics tools are only as smart as the data they receive. Gigamon Application Metadata Intelligence empowers - New Relic with critical metadata attributes across thousands of business, consumer and IT applications and services. + Analytics tools are only as smart as the data they receive. Gigamon Application Metadata Intelligence empowers + New Relic with critical metadata attributes across thousands of business, consumer and IT applications and services. Get deep application visibility to rapidly pinpoint performance bottlenecks, quality issues and potential network security risks. summary: | @@ -41,8 +40,5 @@ icon: gigamon-appint.png dashboards: - gigamon-appinsights -installPlans: - - third-party-gigamon-appinsights - dataSourceIds: - gigamon-appinsights diff --git a/quickstarts/gigamon/config.yml b/quickstarts/gigamon/config.yml index aa7d6968e3..e76b67063f 100644 --- a/quickstarts/gigamon/config.yml +++ b/quickstarts/gigamon/config.yml @@ -18,8 +18,6 @@ keywords: - newrelic partner - NR1_addData - NR1_sys -installPlans: - - third-party-gigamon dataSourceIds: - gigamon-appinsights documentation: @@ -28,6 +26,5 @@ documentation: description: | An overview of the architecture and deployment methodology for Gigamon Hawk integrated with New Relic icon: logo.png -website: https://www.gigamon.com dashboards: - gigamon-hawk diff --git a/quickstarts/github-repo/config.yml b/quickstarts/github-repo/config.yml index 66cafda020..ce591cfd10 100644 --- a/quickstarts/github-repo/config.yml +++ b/quickstarts/github-repo/config.yml @@ -6,7 +6,7 @@ description: |- ## What is GitHub? GitHub is where over 100 million developers shape the future of software, together. - + Contribute to the open source community, manage your Git repositories, review code like a pro, track bugs and features, power your CI/CD and DevOps workflows, and secure code before you commit it. summary: | Monitor GitHub Repositories in New Relic by adding Headerless Log API endpoint as a GitHub Repository Webhook. @@ -26,5 +26,3 @@ documentation: url: https://docs.newrelic.com/docs/logs/log-api/introduction-log-api/ description: Generate your log API endpoint in New Relic with your Api-Key as the query parameter. icon: logo.png -website: https://www.newrelic.com - diff --git a/quickstarts/github/config.yml b/quickstarts/github/config.yml index 3f4b0b9808..74e66247ba 100644 --- a/quickstarts/github/config.yml +++ b/quickstarts/github/config.yml @@ -20,7 +20,7 @@ description: |+ ### More info - Check out the [documentation](https://docs.newrelic.com/docs/vulnerability-management/integrations/dependabot) to learn more about New Relic ingestion for GitHub Dependabot. + Check out the [documentation](https://docs.newrelic.com/docs/vulnerability-management/integrations/dependabot) to learn more about New Relic ingestion for GitHub Dependabot. summary: Ingest GitHub Dependabot events by connecting GitHub to New Relic level: New Relic @@ -35,8 +35,6 @@ documentation: - name: GitHub Dependabot integration installation docs description: Automatic integration for ingesting Dependabot vulnerabilities. url: https://docs.newrelic.com/docs/vulnerability-management/integrations/dependabot -installPlans: - - github-dependabot-install dataSourceIds: - dependabot icon: logo.png diff --git a/quickstarts/gitlab/config.yml b/quickstarts/gitlab/config.yml index aaa5663ce5..1d6f646200 100644 --- a/quickstarts/gitlab/config.yml +++ b/quickstarts/gitlab/config.yml @@ -20,8 +20,6 @@ keywords: - pipelines dashboards: - gitlab -installPlans: - - third-party-gitlab-integration dataSourceIds: - gitlab-integration documentation: @@ -29,5 +27,3 @@ documentation: url: https://github.com/newrelic-experimental/gitlab description: Monitor your Gitlab pipelines with New Relic, making it easier to get observability into your CI/CD pipeline health and performance. icon: logo.svg -website: https://www.newrelic.com - diff --git a/quickstarts/glassbox/config.yml b/quickstarts/glassbox/config.yml index 1eb70159de..e384720343 100644 --- a/quickstarts/glassbox/config.yml +++ b/quickstarts/glassbox/config.yml @@ -21,8 +21,6 @@ keywords: - session replay - NR1_addData - NR1_sys -installPlans: - - third-party-glassbox dataSourceIds: - glassbox documentation: diff --git a/quickstarts/golang/echo/config.yml b/quickstarts/golang/echo/config.yml index c148a18d9e..c280bbc2ba 100644 --- a/quickstarts/golang/echo/config.yml +++ b/quickstarts/golang/echo/config.yml @@ -11,7 +11,7 @@ description: |- ## More info - Check out the [documentation](https://docs.newrelic.com/docs/agents/go-agent/) to learn more about New Relic monitoring for Echo. + Check out the [documentation](https://docs.newrelic.com/docs/agents/go-agent/) to learn more about New Relic monitoring for Echo. summary: Monitor Echo with New Relic's Golang agent icon: logo.svg level: New Relic @@ -25,8 +25,6 @@ documentation: keywords: - apm - golang -installPlans: - - setup-go-agent dataSourceIds: - golang dashboards: diff --git a/quickstarts/golang/gin/config.yml b/quickstarts/golang/gin/config.yml index 3b6a739d04..5f3e21bffa 100644 --- a/quickstarts/golang/gin/config.yml +++ b/quickstarts/golang/gin/config.yml @@ -11,7 +11,7 @@ description: |- ## More info - Check out the [documentation](https://docs.newrelic.com/docs/agents/go-agent/) to learn more about New Relic monitoring for Gin. + Check out the [documentation](https://docs.newrelic.com/docs/agents/go-agent/) to learn more about New Relic monitoring for Gin. summary: Monitor Gin with New Relic's Golang agent icon: logo.png level: New Relic @@ -25,8 +25,6 @@ documentation: keywords: - apm - golang -installPlans: - - setup-go-agent dataSourceIds: - golang dashboards: diff --git a/quickstarts/golang/golang/config.yml b/quickstarts/golang/golang/config.yml index c0fa6b0dde..9e062e574a 100644 --- a/quickstarts/golang/golang/config.yml +++ b/quickstarts/golang/golang/config.yml @@ -26,8 +26,6 @@ keywords: - apm - golang - language agent -installPlans: - - setup-go-agent dataSourceIds: - golang dashboards: diff --git a/quickstarts/golang/httprouter/config.yml b/quickstarts/golang/httprouter/config.yml index 72e03de2dd..d53114444c 100644 --- a/quickstarts/golang/httprouter/config.yml +++ b/quickstarts/golang/httprouter/config.yml @@ -13,7 +13,7 @@ description: | ### New Relic and HTTPRouter features - Track Golang language apps and microservices with [New Relic’s HTTPRouter and Golang](https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/introduction-new-relic-go/) monitoring quickstart, including throughput, transaction errors, and response times. + Track Golang language apps and microservices with [New Relic’s HTTPRouter and Golang](https://docs.newrelic.com/docs/apm/agents/go-agent/get-started/introduction-new-relic-go/) monitoring quickstart, including throughput, transaction errors, and response times. With a clear view into garbage collection behavior, memory usage, and CPU usage over time, your Golang development team can better understand your application’s runtime health. HTTPRouter infrastructure monitoring also provides a comprehensive view of host and server data. @@ -48,8 +48,6 @@ keywords: - golang - NR1_addData - NR1_sys -installPlans: - - setup-go-agent dataSourceIds: - golang dashboards: diff --git a/quickstarts/golang/lambda-go/config.yml b/quickstarts/golang/lambda-go/config.yml index d114c679a8..118de57acd 100644 --- a/quickstarts/golang/lambda-go/config.yml +++ b/quickstarts/golang/lambda-go/config.yml @@ -33,8 +33,6 @@ keywords: - serverless - NR1_addData - NR1_sys -installPlans: - - setup-go-agent dataSourceIds: - golang dashboards: diff --git a/quickstarts/golang/logrus/config.yml b/quickstarts/golang/logrus/config.yml index 5139d6b982..6eab4e98f2 100644 --- a/quickstarts/golang/logrus/config.yml +++ b/quickstarts/golang/logrus/config.yml @@ -34,8 +34,6 @@ keywords: - logging - NR1_addData - NR1_sys -installPlans: - - setup-go-agent dataSourceIds: - golang dashboards: diff --git a/quickstarts/golang/logxi/config.yml b/quickstarts/golang/logxi/config.yml index 2bbf19b602..d4a1dbb6d9 100644 --- a/quickstarts/golang/logxi/config.yml +++ b/quickstarts/golang/logxi/config.yml @@ -34,8 +34,6 @@ keywords: - logging - NR1_addData - NR1_sys -installPlans: - - setup-go-agent dataSourceIds: - golang dashboards: diff --git a/quickstarts/golang/micro/config.yml b/quickstarts/golang/micro/config.yml index 77e6458c5b..c4c2e9544f 100644 --- a/quickstarts/golang/micro/config.yml +++ b/quickstarts/golang/micro/config.yml @@ -30,8 +30,6 @@ documentation: keywords: - apm - golang -installPlans: - - setup-go-agent dataSourceIds: - golang dashboards: diff --git a/quickstarts/golang/mux/config.yml b/quickstarts/golang/mux/config.yml index 75536a4c38..8077435d78 100644 --- a/quickstarts/golang/mux/config.yml +++ b/quickstarts/golang/mux/config.yml @@ -30,8 +30,6 @@ documentation: keywords: - apm - golang -installPlans: - - setup-go-agent dataSourceIds: - golang dashboards: diff --git a/quickstarts/golang/nats/config.yml b/quickstarts/golang/nats/config.yml index 3ed86fb195..297e5b7852 100644 --- a/quickstarts/golang/nats/config.yml +++ b/quickstarts/golang/nats/config.yml @@ -11,7 +11,7 @@ description: |- ## More info - Check out the [documentation](https://docs.newrelic.com/docs/agents/go-agent/) to learn more about New Relic monitoring for NATS. + Check out the [documentation](https://docs.newrelic.com/docs/agents/go-agent/) to learn more about New Relic monitoring for NATS. summary: Monitor NATS with New Relic's Golang agent icon: logo.svg level: New Relic @@ -27,8 +27,6 @@ keywords: - golang - NR1_addData - NR1_sys -installPlans: - - setup-go-agent dataSourceIds: - golang dashboards: diff --git a/quickstarts/golang/pkg-errors/config.yml b/quickstarts/golang/pkg-errors/config.yml index e4ed92b5fd..2afab7a666 100644 --- a/quickstarts/golang/pkg-errors/config.yml +++ b/quickstarts/golang/pkg-errors/config.yml @@ -23,8 +23,6 @@ keywords: - golang - errors - pkg/errors -installPlans: - - setup-go-agent dataSourceIds: - golang documentation: diff --git a/quickstarts/golang/zap/config.yml b/quickstarts/golang/zap/config.yml index 59c72bed5d..89cd327b7c 100644 --- a/quickstarts/golang/zap/config.yml +++ b/quickstarts/golang/zap/config.yml @@ -11,7 +11,7 @@ description: |- ## More info - Check out the [documentation](https://docs.newrelic.com/docs/agents/go-agent/) to learn more about New Relic monitoring for Zap. + Check out the [documentation](https://docs.newrelic.com/docs/agents/go-agent/) to learn more about New Relic monitoring for Zap. summary: Monitor Zap with New Relic's Golang agent icon: logo.svg level: New Relic @@ -25,8 +25,6 @@ documentation: keywords: - apm - golang -installPlans: - - setup-go-agent dataSourceIds: - golang dashboards: diff --git a/quickstarts/golden-signals-dashboard/config.yml b/quickstarts/golden-signals-dashboard/config.yml index 6b9e0bae5d..5270c72df3 100644 --- a/quickstarts/golden-signals-dashboard/config.yml +++ b/quickstarts/golden-signals-dashboard/config.yml @@ -44,22 +44,22 @@ documentation: - name: Install APM agent url: https://docs.newrelic.com/introduction-apm/ description: Monitor everything from the hundreds of dependencies of a modern stack down to simple web-transaction times and throughput of an app. - + - name: Install Infrastructure agent url: https://docs.newrelic.com/docs/infrastructure/install-infrastructure-agent/get-started/install-infrastructure-agent/ description: New Relic's infrastructure monitoring agent collects data about your hosts. It also reports data from some third party services, if enabled, and also log data. - name: Set up Synthetic monitor url: https://docs.newrelic.com/docs/synthetics/synthetic-monitoring/getting-started/get-started-synthetic-monitoring/ - description: Synthetic monitoring helps you proactively catch and resolve issues before they affect your customers, all without an installation. + description: Synthetic monitoring helps you proactively catch and resolve issues before they affect your customers, all without an installation. - name: Install Browser agent url: https://docs.newrelic.com/docs/browser/browser-monitoring/installation/install-browser-monitoring-agent/ - description: The browser agent is a snippet of JavaScript code that monitors the performance of your app/site. - + description: The browser agent is a snippet of JavaScript code that monitors the performance of your app/site. + - name: Install Mobile agent url: https://docs.newrelic.com/docs/mobile-monitoring/new-relic-mobile/get-started/introduction-mobile-monitoring/ - description: New Relic's mobile monitoring capabilities provide deeper visibility into the performance and crash troubleshooting of your Android, iOS, or hybrid mobile applications. + description: New Relic's mobile monitoring capabilities provide deeper visibility into the performance and crash troubleshooting of your Android, iOS, or hybrid mobile applications. dataSourceIds: - golang @@ -73,7 +73,6 @@ dataSourceIds: - new-relic-synthetics - new-relic-browser - mobile-getting-started - + # Content / Design icon: logo.svg -website: https://www.newrelic.com diff --git a/quickstarts/golden-signals-web/config.yml b/quickstarts/golden-signals-web/config.yml index 62fa1bfb15..db6180c8ff 100644 --- a/quickstarts/golden-signals-web/config.yml +++ b/quickstarts/golden-signals-web/config.yml @@ -25,8 +25,6 @@ authors: - New Relic - Alec Swanson -installPlans: - - infra-agent-targeted dataSourceIds: - new-relic-infrastructure-agent diff --git a/quickstarts/grafana/grafana-dashboard-migration/config.yml b/quickstarts/grafana/grafana-dashboard-migration/config.yml index be18cd5d7e..a253ee7e84 100644 --- a/quickstarts/grafana/grafana-dashboard-migration/config.yml +++ b/quickstarts/grafana/grafana-dashboard-migration/config.yml @@ -24,9 +24,6 @@ documentation: - name: Convert Grafana Prometheus dashboards to New Relic dashboards. url: https://github.com/newrelic-experimental/nr-grafana-migration description: Toolset to help New Relic customers migrate from Grafana and Prometheus to New Relic. -installPlans: - - third-party-grafana-dashboard-migration dataSourceIds: - grafana-dashboard-migration icon: logo.png -website: https://grafana.com/ diff --git a/quickstarts/grafana/grafana-prometheus-integration/config.yml b/quickstarts/grafana/grafana-prometheus-integration/config.yml index ef0e90c344..e301c99b81 100644 --- a/quickstarts/grafana/grafana-prometheus-integration/config.yml +++ b/quickstarts/grafana/grafana-prometheus-integration/config.yml @@ -13,8 +13,6 @@ keywords: - prometheus - NR1_addData - NR1_sys -installPlans: - - third-party-grafana-prometheus-integration dataSourceIds: - grafana-prometheus-integration documentation: @@ -22,4 +20,3 @@ documentation: url: https://docs.newrelic.com/docs/integrations/grafana-integrations/get-started/grafana-support-prometheus-promql/ description: In Grafana, you can configure New Relic as a Prometheus data source. icon: logo.png -website: https://grafana.com/ diff --git a/quickstarts/gridgain/config.yml b/quickstarts/gridgain/config.yml index 302b6a5159..5275c775ef 100644 --- a/quickstarts/gridgain/config.yml +++ b/quickstarts/gridgain/config.yml @@ -8,7 +8,7 @@ description: | GridGain is a unified real-time data platform that is designed to tackle speed and scale challenges. It is built on Apache Ignite, a top 5 ASF project. - + ## Getting started GridGain exports extensive metrics and this quickstart allows you to @@ -22,17 +22,17 @@ description: | included are reasonable defaults but will likely need to be updated depending on your configuration (persistence), use case (compute, caching) and product (snapshots, data center replication). - + ## More information More information can be found in [our documentation](https://docs.gridgain.com). Download GridGain [here](https://www.gridgain.com/download) or launch your own cluster in the cloud [here](https://portal.gridgain.com). - + summary: | A quickstart for monitoring GridGain and Apache Ignite clusters. - + level: Community authors: @@ -66,4 +66,3 @@ documentation: description: Capture the logs and metrics from GridGain in New Relic. icon: gridgain.svg -website: https://www.gridgain.com/ diff --git a/quickstarts/haproxy/config.yml b/quickstarts/haproxy/config.yml index 56d25954b6..7a74352cd1 100644 --- a/quickstarts/haproxy/config.yml +++ b/quickstarts/haproxy/config.yml @@ -6,14 +6,14 @@ description: | HAProxy monitoring helps maintain system performance and provides the visibility you need to identify and resolve the cause of errors and latency. When you monitor HAProxy in real-time, you can see the entire service topology of your data pipeline and applications in an HAProxy dashboard. - Keep track of TCP and HTTP-based applications powered by the highly available and stable TCP/HTTP load-balancing software and proxy solution. + Keep track of TCP and HTTP-based applications powered by the highly available and stable TCP/HTTP load-balancing software and proxy solution. ### New Relic HAProxy quickstart highlights [New Relic's HAProxy monitoring agent](https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/haproxy-monitoring-integration/) tracks server capacity to ensure that it can handle all concurrent sessions. You can efficiently manage your resources and run applications optimally by keeping an eye on real-time HAProxy status and statistics. - New Relic's HAProxy monitoring quickstart has the following out-of-the-box features so you can monitor your frontend/server inventory and the health/availability of your backend servers: - - Alerts (latency and errors) + New Relic's HAProxy monitoring quickstart has the following out-of-the-box features so you can monitor your frontend/server inventory and the health/availability of your backend servers: + - Alerts (latency and errors) - Dashboards (bytes sent and received per second, frontend statuses, request errors per second, sessions per second, and active servers - same dashboards for both front and backend) ### New Relic - The complete HAProxy dashboard tool @@ -23,7 +23,7 @@ summary: | New Relic's instant observability quickstart provides alerts, multiple instance monitoring, and dashboards to detect the health and availability of servers to resolve issues before impacting end-users. level: New Relic icon: logo.png -website: https://www.haproxy.org/ + authors: - New Relic - Jakub Kotkowiak @@ -32,8 +32,6 @@ documentation: description: | Free, open-source software load balancer and proxy server for TCP and HTTP-based applications that spreads traffic across multiple servers. url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/haproxy-monitoring-integration/ -installPlans: - - haproxy-integration dataSourceIds: - haproxy keywords: diff --git a/quickstarts/harbor/config.yml b/quickstarts/harbor/config.yml index 40916c8e5c..379e8b78d2 100644 --- a/quickstarts/harbor/config.yml +++ b/quickstarts/harbor/config.yml @@ -36,9 +36,6 @@ documentation: url: https://goharbor.io/docs/2.3.0/administration/metrics/ description: | Learn more about the Prometheus metrics available for Harbor -installPlans: - - setup-prometheus - - setup-prometheus-agent-mode dataSourceIds: - prometheus - prometheus-agent-mode @@ -47,4 +44,3 @@ dashboards: alertPolicies: - harbor icon: logo.svg -website: https://goharbor.io/ diff --git a/quickstarts/hardware-sentry/config.yml b/quickstarts/hardware-sentry/config.yml index 5a4ef3a38c..8835434a86 100644 --- a/quickstarts/hardware-sentry/config.yml +++ b/quickstarts/hardware-sentry/config.yml @@ -45,4 +45,3 @@ documentation: url: https://www.sentrysoftware.com/docs/hws-doc/latest/integration/newrelic.html description: This documentation explains how to integrate Hardware Sentry with New Relic. icon: logo.png -website: https://www.sentrysoftware.com/ diff --git a/quickstarts/hashicorp/hcp-consul/config.yml b/quickstarts/hashicorp/hcp-consul/config.yml index 60fa6f5be9..7ef2adfd42 100644 --- a/quickstarts/hashicorp/hcp-consul/config.yml +++ b/quickstarts/hashicorp/hcp-consul/config.yml @@ -3,7 +3,7 @@ slug: hcp-consul title: HCP Consul description: |- ## HCP Consul - HCP (Hashicorp Cloud Platform) Consul is a version of Consul in which the control plane is managed by HashiCorp Cloud Platform. + HCP (Hashicorp Cloud Platform) Consul is a version of Consul in which the control plane is managed by HashiCorp Cloud Platform. HCP Consul is a service mesh and service discovery solution provided by Hashicorp. It enables platform operators to quickly deploy a fully managed, secure-by-default service mesh, helping developers discover and securely connect any application on any runtime, including Kubernetes, Nomad, and Amazon ECS. @@ -40,8 +40,6 @@ documentation: url: https://docs.newrelic.com/docs/infrastructure/infrastructure-integrations/cloud-integrations/hcp-consul-monitoring description: HCP Consul configuration documentation icon: logo.svg -installPlans: - - third-party-hashicorp-hcp-consul dataSourceIds: - hcp-consul dashboards: diff --git a/quickstarts/hashicorp/hcp-vault/config.yml b/quickstarts/hashicorp/hcp-vault/config.yml index c64ab2ac77..e596ee8695 100644 --- a/quickstarts/hashicorp/hcp-vault/config.yml +++ b/quickstarts/hashicorp/hcp-vault/config.yml @@ -3,13 +3,13 @@ slug: hcp-vault title: HCP Vault description: |- ## HCP Vault - + Secure, store, and tightly control access to tokens, passwords, certificates, encryption keys for protecting secrets, and other sensitive data using a UI, CLI, or HTTP API. - + ### Monitor HCP Vault metrics with New Relic Metrics observability is essential for ensuring the performance and security of your HCP Vault cluster. It's also useful for business operations, like understanding client-related usage. - + ### HCP Vault integration highlights The HCP Vault integration with New Relic provides a pre-made dashboard with HCP Vault metrics and audit logs to get started easily. This dashboard provides visibility into the health of your HCP Vault environment. @@ -39,8 +39,6 @@ documentation: url: https://developer.hashicorp.com/vault/tutorials/cloud-monitoring/vault-audit-log-new-relic description: HCP Vault audit logs guide icon: logo.svg -installPlans: - - third-party-hcp-vault dataSourceIds: - hcp-vault-logs - hcp-vault-metrics diff --git a/quickstarts/heroku/config.yml b/quickstarts/heroku/config.yml index 487b289636..c67d0a5cb9 100644 --- a/quickstarts/heroku/config.yml +++ b/quickstarts/heroku/config.yml @@ -12,8 +12,6 @@ keywords: - logs - heroku - paas -installPlans: - - logs-heroku dataSourceIds: - heroku documentation: @@ -21,7 +19,7 @@ documentation: url: https://docs.newrelic.com/docs/logs/enable-log-management-new-relic/enable-log-monitoring-new-relic/heroku-log-forwarding/ description: You can stream your Heroku logs to New Relic using Heroku's built-in Logplex router. icon: logo.svg -website: https://www.heroku.com/ + dashboards: - heroku-connect - heroku-dyno-db diff --git a/quickstarts/hivemq/config.yml b/quickstarts/hivemq/config.yml index 866a7fa27b..055e4f6a6f 100644 --- a/quickstarts/hivemq/config.yml +++ b/quickstarts/hivemq/config.yml @@ -33,7 +33,6 @@ level: New Relic # Design icon: logo.svg -website: https://www.hivemq.com/ # Authors of the quickstart authors: @@ -45,9 +44,6 @@ documentation: MQTT broker that makes it easy to move data to and from connected devices. url: https://github.com/newrelic/newrelic-opentelemetry-examples/tree/main/other-examples/collector/hivemq -installPlans: - - hivemq-integration-docs - dataSourceIds: - hivemq-integration-docs diff --git a/quickstarts/hugging-face/config.yml b/quickstarts/hugging-face/config.yml index 9c69f6b56d..bbacbfe997 100644 --- a/quickstarts/hugging-face/config.yml +++ b/quickstarts/hugging-face/config.yml @@ -20,8 +20,7 @@ description: | summary: | Improve the visibility of your Hugging Face usage with New Relic Hugging Face quickstart. icon: logo.png -level: - - New Relic +level: New Relic authors: - New Relic title: Hugging Face diff --git a/quickstarts/ibmmq/config.yml b/quickstarts/ibmmq/config.yml index 1888f24e64..62d4e4337b 100644 --- a/quickstarts/ibmmq/config.yml +++ b/quickstarts/ibmmq/config.yml @@ -25,7 +25,7 @@ summary: | The IBM MQ integration enables performance monitoring of IBM MQ infrastructure. level: New Relic icon: logo.png -website: https://www.ibm.com/products/mq + keywords: - infrastructure - ibm mq @@ -44,10 +44,7 @@ documentation: description: | Our IBM MQ integration collects and sends dimensional metrics from IBM MQ. url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/ibmmq-monitoring-integration/ -installPlans: - - ibmmq-integration-docs dataSourceIds: - ibmmq-integration-docs dashboards: - ibmmq - diff --git a/quickstarts/infrastructure-signals/config.yml b/quickstarts/infrastructure-signals/config.yml index dcbdd3ba11..a5fd2610bb 100644 --- a/quickstarts/infrastructure-signals/config.yml +++ b/quickstarts/infrastructure-signals/config.yml @@ -12,28 +12,26 @@ description: | ## 1. CPU Usage: - This metric measures the percentage of the CPU's processing capacity that is being utilized at a given time. It indicates how much of the CPU's resources are being used by various processes and applications. A higher CPU usage may indicate heavy computational tasks or processes consuming resources, potentially impacting system performance. - + ## 2. Storage Usage: - This metric represents the proportion of available storage space that is currently being used. It indicates the level of data storage consumption on the system. Consistent or increasing storage usage may suggest growing data volumes or inadequate storage management practices. - + ## 3. Memory Usage: - Memory usage measures the percentage of available RAM (Random Access Memory) that is currently in use by running processes and applications. It reflects how efficiently the system is managing its memory resources. Higher memory usage can lead to performance degradation or even system instability if the available memory becomes insufficient for running processes. - + ## 4. Network Traffic Tx (Transmission): - This metric tracks the amount of data being transmitted over the network, specifically outbound traffic. It indicates the volume of data being sent from the system to other devices or servers on the network. Significant changes in network traffic can indicate variations in user activity, application behavior, or potential network issues affecting communication between systems. - - - + + + ### Benefits: - Performance Optimization: By monitoring CPU usage, memory usage, and storage usage, administrators can identify resource-intensive processes or applications. They can take actions such as optimizing code, fine-tuning configurations, or allocating additional resources to ensure smooth system operation and performance. - Capacity Planning: Continuous monitoring of storage usage and memory usage allows administrators to anticipate future resource requirements. They can make informed decisions about upgrading hardware or provisioning additional resources to accommodate growing demands, thereby preventing resource shortages and performance degradation. - Troubleshooting and Issue Resolution: Monitoring network traffic can help detect abnormalities or performance bottlenecks in the network infrastructure. Administrators can investigate network congestion, latency issues, or potential security threats and take appropriate actions to resolve them promptly, ensuring uninterrupted communication and data transfer. - - # Displayed in search results and recommendations. Summarizes a quickstarts functionality. summary: | - Monitoring CPU usage, storage usage, memory usage, and network traffic provides valuable insights into system performance and resource utilization. This allows administrators to optimize performance, plan for future capacity needs, troubleshoot issues, perform proactive maintenance, allocate resources efficiently, and set alerts for abnormal conditions. Ultimately, monitoring these metrics enhances system reliability, security, and efficiency. + Monitoring CPU usage, storage usage, memory usage, and network traffic provides valuable insights into system performance and resource utilization. This allows administrators to optimize performance, plan for future capacity needs, troubleshoot issues, perform proactive maintenance, allocate resources efficiently, and set alerts for abnormal conditions. Ultimately, monitoring these metrics enhances system reliability, security, and efficiency. # Support level: New Relic | Verified | Community (required) level: New Relic @@ -53,17 +51,15 @@ keywords: # Reference to dashboards to be included in this quickstart dashboards: - infrastructure-signals - + # Documentation references documentation: - name: Infrastructure url: https://docs.newrelic.com/docs/infrastructure/infrastructure-monitoring/get-started/get-started-infrastructure-monitoring/ description: With infrastructure monitoring, modern operations teams get complete observability of complex and hybrid systems, from a datacenter to thousands of Amazon, Google Cloud, or Azure instances. - # Content / Design icon: logo.svg -website: https://www.newrelic.com dataSourceIds: - infrastructure-signals diff --git a/quickstarts/infrastructure/config.yml b/quickstarts/infrastructure/config.yml index 2fac2efe8b..4216e08d8e 100644 --- a/quickstarts/infrastructure/config.yml +++ b/quickstarts/infrastructure/config.yml @@ -45,8 +45,6 @@ level: New Relic authors: - New Relic - Darren Doyle -installPlans: - - guided-install dataSourceIds: - guided-install keywords: @@ -57,4 +55,4 @@ dashboards: documentation: - name: Infrastructure installation documentation description: Monitor your Infrastructure with New Relic. - url: https://docs.newrelic.com/docs/infrastructure/infrastructure-monitoring/get-started/get-started-infrastructure-monitoring/ \ No newline at end of file + url: https://docs.newrelic.com/docs/infrastructure/infrastructure-monitoring/get-started/get-started-infrastructure-monitoring/ diff --git a/quickstarts/ios/config.yml b/quickstarts/ios/config.yml index 849216a784..a948b45df3 100644 --- a/quickstarts/ios/config.yml +++ b/quickstarts/ios/config.yml @@ -21,8 +21,6 @@ documentation: Default operating system for Apple mobile devices, including the iPhone and iPad. url: https://docs.newrelic.com/docs/mobile-monitoring/new-relic-mobile-ios/get-started/introduction-new-relic-mobile-ios -installPlans: - - ios-mobile dataSourceIds: - ios keywords: diff --git a/quickstarts/java/adobe-cq/config.yml b/quickstarts/java/adobe-cq/config.yml index 82b34d2328..6291c22b02 100644 --- a/quickstarts/java/adobe-cq/config.yml +++ b/quickstarts/java/adobe-cq/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Adobe CQ with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Adobe CQ with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -27,8 +27,6 @@ documentation: Java-based Content Management platform solution for building website, mobile apps and forms. url: https://docs.newrelic.com/docs/agents/java-agent/getting-started/compatibility-requirements-java-agent -installPlans: - - setup-java-agent dataSourceIds: - java keywords: diff --git a/quickstarts/java/akka/config.yml b/quickstarts/java/akka/config.yml index f2e2f9b549..317895e1e7 100644 --- a/quickstarts/java/akka/config.yml +++ b/quickstarts/java/akka/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Akka with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Akka with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -31,8 +31,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/anorm/config.yml b/quickstarts/java/anorm/config.yml index 74602498a8..3705bc7724 100644 --- a/quickstarts/java/anorm/config.yml +++ b/quickstarts/java/anorm/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Anorm with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Anorm with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -31,8 +31,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/asynchttpclient/config.yml b/quickstarts/java/asynchttpclient/config.yml index 800184e86a..b2320ec4f2 100644 --- a/quickstarts/java/asynchttpclient/config.yml +++ b/quickstarts/java/asynchttpclient/config.yml @@ -32,8 +32,6 @@ keywords: - http - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/camel/config.yml b/quickstarts/java/camel/config.yml index 038ef72d37..51ea7e3dc8 100644 --- a/quickstarts/java/camel/config.yml +++ b/quickstarts/java/camel/config.yml @@ -6,7 +6,7 @@ description: | Camel is an Open Source integration framework that empowers you to quickly and easily integrate various systems consuming or producing data. - Camel empowers you to define routing and mediation rules in a variety of domain-specific languages (DSL, such as Java, XML, Groovy, Kotlin, and YAML). + Camel empowers you to define routing and mediation rules in a variety of domain-specific languages (DSL, such as Java, XML, Groovy, Kotlin, and YAML). This means you get smart completion of routing rules in your IDE, whether in a Java or XML editor. Apache Camel uses URIs to work directly with any kind of transport or messaging model such as HTTP, ActiveMQ, JMS, JBI, SCA, MINA or CXF, as well as pluggable Components and Data Format options. summary: | @@ -14,7 +14,7 @@ summary: | Once installed, the instrumentation will enable visibility parts of your Camel flows up in transaction traces. icon: logo.svg level: Community -website: https://camel.apache.org/ + keywords: - nrlabs - nrlabs-data @@ -25,8 +25,6 @@ keywords: - language agent authors: - New Relic Labs -installPlans: - - third-party-camel dataSourceIds: - camel documentation: diff --git a/quickstarts/java/coldfusion/config.yml b/quickstarts/java/coldfusion/config.yml index a819462280..824fb6f4b6 100644 --- a/quickstarts/java/coldfusion/config.yml +++ b/quickstarts/java/coldfusion/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments ColdFusion with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments ColdFusion with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -31,8 +31,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/cxf/config.yml b/quickstarts/java/cxf/config.yml index 97d2b8ca88..2bb1d347d5 100644 --- a/quickstarts/java/cxf/config.yml +++ b/quickstarts/java/cxf/config.yml @@ -26,8 +26,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/datastax-cassandra/config.yml b/quickstarts/java/datastax-cassandra/config.yml index 9481890938..908497c86c 100644 --- a/quickstarts/java/datastax-cassandra/config.yml +++ b/quickstarts/java/datastax-cassandra/config.yml @@ -16,7 +16,5 @@ keywords: - java - database - language agent -installPlans: - - setup-java-agent dataSourceIds: - java diff --git a/quickstarts/java/derby/config.yml b/quickstarts/java/derby/config.yml index 4024575895..94031b7917 100644 --- a/quickstarts/java/derby/config.yml +++ b/quickstarts/java/derby/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Derby with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Derby with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -32,8 +32,6 @@ keywords: - java - database - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/ejb-session-beans/config.yml b/quickstarts/java/ejb-session-beans/config.yml index f33aa900c2..20f4a8bcac 100644 --- a/quickstarts/java/ejb-session-beans/config.yml +++ b/quickstarts/java/ejb-session-beans/config.yml @@ -7,7 +7,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments EJB session beans with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments EJB session beans with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -30,8 +30,6 @@ keywords: - apm - java - language agent -installPlans: - - third-party-ejb-session-beans dataSourceIds: - java dashboards: diff --git a/quickstarts/java/elasticsearch-query/config.yml b/quickstarts/java/elasticsearch-query/config.yml index 58aef2095e..006ef9f78b 100644 --- a/quickstarts/java/elasticsearch-query/config.yml +++ b/quickstarts/java/elasticsearch-query/config.yml @@ -9,11 +9,11 @@ description: | The elastic search query java agent extension enables monitoring of elasticsearch queries in a java application. Once deployed elasticsearch queries begin to show up in the New Relic UI under Databases section summary: | - Java agent extension to monitor elasticsearch queries as dataStore queries with New Relic. + Java agent extension to monitor elasticsearch queries as dataStore queries with New Relic. Once deployed elasticsearch queries begin to show up in the New Relic UI under Databases for the application using elasticsearch queries. icon: logo.svg level: Community -website: https://www.elastic.co/ + keywords: - nrlabs - nrlabs-data @@ -23,8 +23,6 @@ keywords: - language agent authors: - New Relic Labs -installPlans: - - third-party-elasticsearch-query dataSourceIds: - elasticsearch-query documentation: diff --git a/quickstarts/java/gcp-pubsub/config.yml b/quickstarts/java/gcp-pubsub/config.yml index 37bb033639..0be17da45c 100644 --- a/quickstarts/java/gcp-pubsub/config.yml +++ b/quickstarts/java/gcp-pubsub/config.yml @@ -16,7 +16,7 @@ summary: | In addition, the instrumentation will take care of distributed tracing so that the publish will provide the distributed tracing headers on the message and the subscribe will read the headers and process them appropriately. icon: logo.svg level: Community -website: https://cloud.google.com/pubsub + keywords: - nrlabs - nrlabs-data @@ -32,8 +32,6 @@ documentation: description: | Java Agent instrumentation extension for the Google Cloud Platform PubSub framework url: https://github.com/newrelic-experimental/newrelic-java-gcp-pubsub -installPlans: - - third-party-gcp-pubsub dataSourceIds: - gcp-pubsub dashboards: diff --git a/quickstarts/java/generic-jdbc/config.yml b/quickstarts/java/generic-jdbc/config.yml index 408b526313..04f35cea0a 100644 --- a/quickstarts/java/generic-jdbc/config.yml +++ b/quickstarts/java/generic-jdbc/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Generic JDBC with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Generic JDBC with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -27,8 +27,6 @@ documentation: Java Database Connectivity is a standard Java API for database-independent connectivity between Java and a wide range of databases. url: https://docs.newrelic.com/docs/agents/java-agent/getting-started/compatibility-requirements-java-agent -installPlans: - - setup-java-agent dataSourceIds: - java keywords: diff --git a/quickstarts/java/glassfish/config.yml b/quickstarts/java/glassfish/config.yml index a74b1c4116..3eccfc064a 100644 --- a/quickstarts/java/glassfish/config.yml +++ b/quickstarts/java/glassfish/config.yml @@ -26,8 +26,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/grails/config.yml b/quickstarts/java/grails/config.yml index fbca8437ec..6087628e7d 100644 --- a/quickstarts/java/grails/config.yml +++ b/quickstarts/java/grails/config.yml @@ -24,8 +24,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/grpc/config.yml b/quickstarts/java/grpc/config.yml index b966b7b2d9..3e8856ff71 100644 --- a/quickstarts/java/grpc/config.yml +++ b/quickstarts/java/grpc/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments gRPC with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments gRPC with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -31,8 +31,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/h2/config.yml b/quickstarts/java/h2/config.yml index a4495e7f62..f033fe4fc3 100644 --- a/quickstarts/java/h2/config.yml +++ b/quickstarts/java/h2/config.yml @@ -25,8 +25,6 @@ keywords: - java - database - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/hibernate/config.yml b/quickstarts/java/hibernate/config.yml index 348190c760..d8ce392712 100644 --- a/quickstarts/java/hibernate/config.yml +++ b/quickstarts/java/hibernate/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Hibernate with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Hibernate with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -32,8 +32,6 @@ keywords: - java - database - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/hsql/config.yml b/quickstarts/java/hsql/config.yml index 5719c8a19d..3b06147d11 100644 --- a/quickstarts/java/hsql/config.yml +++ b/quickstarts/java/hsql/config.yml @@ -27,8 +27,6 @@ keywords: - java - database - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/hystrix/config.yml b/quickstarts/java/hystrix/config.yml index 15ca2a2e80..1b5ecf336e 100644 --- a/quickstarts/java/hystrix/config.yml +++ b/quickstarts/java/hystrix/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Hystrix with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Hystrix with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -31,8 +31,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/ibm-db2/config.yml b/quickstarts/java/ibm-db2/config.yml index e79cedbf35..4753be6806 100644 --- a/quickstarts/java/ibm-db2/config.yml +++ b/quickstarts/java/ibm-db2/config.yml @@ -25,8 +25,6 @@ keywords: - java - database - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/inet-merlia/config.yml b/quickstarts/java/inet-merlia/config.yml index 0d571a4354..189de3b07d 100644 --- a/quickstarts/java/inet-merlia/config.yml +++ b/quickstarts/java/inet-merlia/config.yml @@ -24,8 +24,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/java/config.yml b/quickstarts/java/java/config.yml index 0ec999da01..954f7c8f9c 100644 --- a/quickstarts/java/java/config.yml +++ b/quickstarts/java/java/config.yml @@ -3,9 +3,9 @@ slug: java description: | ## Why monitoring Java is so important - Java is a compiled language, with the potential to be very fast. However, there are a a lot of Java-specific quirks that make the average program slow such as high default memory usage and lags in the startup time of the JVM. + Java is a compiled language, with the potential to be very fast. However, there are a a lot of Java-specific quirks that make the average program slow such as high default memory usage and lags in the startup time of the JVM. - In order to get the most performance out of your Java applications, it’s important to continuously monitor them with tools such as the New Relic Java agent. + In order to get the most performance out of your Java applications, it’s important to continuously monitor them with tools such as the New Relic Java agent. ### New Relic Java quickstart features @@ -14,7 +14,7 @@ description: | ### New Relic - the perfect Java observability tool - [Proactive Java monitoring](https://docs.newrelic.com/docs/agents/java-agent/getting-started/introduction-new-relic-java/) yields reductions in site latency and improves the user experience. Our Java agent monitors app servers, databases, and message queuing systems, giving insight into all the key components which allow a web app to run. Custom instrumentation is also available for the add-on Java frameworks and libraries which may be used. + [Proactive Java monitoring](https://docs.newrelic.com/docs/agents/java-agent/getting-started/introduction-new-relic-java/) yields reductions in site latency and improves the user experience. Our Java agent monitors app servers, databases, and message queuing systems, giving insight into all the key components which allow a web app to run. Custom instrumentation is also available for the add-on Java frameworks and libraries which may be used. The agent reports metric time-slice and event data, giving insight at scheduled intervals. It also provides JVM-level observability, providing thread pools data, HTTP sessions, and transactions. You can trace request flows through distributed systems, allowing you to pinpoint points of failure and proactively prevent downtime. All metrics and interfaces are unified via an included dashboard which provides a visual display of an application’s performance. @@ -38,8 +38,6 @@ keywords: - java - language agent - most popular -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/jax-rs/config.yml b/quickstarts/java/jax-rs/config.yml index 2d5aae30e0..30da8a8e49 100644 --- a/quickstarts/java/jax-rs/config.yml +++ b/quickstarts/java/jax-rs/config.yml @@ -26,8 +26,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/jcache-api/config.yml b/quickstarts/java/jcache-api/config.yml index e051a1bce8..4ffcef4670 100644 --- a/quickstarts/java/jcache-api/config.yml +++ b/quickstarts/java/jcache-api/config.yml @@ -24,8 +24,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/jdbc-executebatch/config.yml b/quickstarts/java/jdbc-executebatch/config.yml index 118f0402fe..fd8d5697ce 100644 --- a/quickstarts/java/jdbc-executebatch/config.yml +++ b/quickstarts/java/jdbc-executebatch/config.yml @@ -5,19 +5,19 @@ description: | # What is executeBatch call? ExecuteBatch method in jdbc submits a batch of commands to the database for execution. You - If all commands execute successfully, the call returns an array of update counts. + If all commands execute successfully, the call returns an array of update counts. - Once the instrumentation is deployed it will start to track the call to the executeBatch method as a database call in distributed traces. + Once the instrumentation is deployed it will start to track the call to the executeBatch method as a database call in distributed traces. The Performance tab for the call will show the query as "Batch Execute n Queries" where n is the number of queries executed as part of the batch. - - For calls to addBatch(String sql), it will represent the number of calls to this method before the executeBatch method is executed. + - For calls to addBatch(String sql), it will represent the number of calls to this method before the executeBatch method is executed. - For PreparedStatment and CallableStatment it will represent the number of times that addBatch() is called. summary: | Java agent extension to monitor the executeBatch method of the Statement, PreparedStatement and CallableStatement interfaces as a database call. icon: logo.svg level: Community -website: https://docs.oracle.com/javase/7/docs/api/java/sql/Statement.html#executeBatch() + keywords: - nrlabs - nrlabs-data @@ -33,8 +33,6 @@ documentation: description: | Java Agent instrumentation extension for tracking executeBatch method of the Statement, PreparedStatement and CallableStatement interfaces as a database call. url: https://github.com/newrelic-experimental/newrelic-java-JDBC-ExecuteBatch -installPlans: - - third-party-jdbc-executebatch dataSourceIds: - jdbc-executebatch dashboards: diff --git a/quickstarts/java/jersey/config.yml b/quickstarts/java/jersey/config.yml index 9484c0c216..64dbf00c0c 100644 --- a/quickstarts/java/jersey/config.yml +++ b/quickstarts/java/jersey/config.yml @@ -24,8 +24,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/jetty/config.yml b/quickstarts/java/jetty/config.yml index c9ab5af66c..d44b856c23 100644 --- a/quickstarts/java/jetty/config.yml +++ b/quickstarts/java/jetty/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Jetty with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Jetty with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -32,8 +32,6 @@ keywords: - java - server - language agent -installPlans: - - setup-java-targeted-install dataSourceIds: - java dashboards: diff --git a/quickstarts/java/jms/config.yml b/quickstarts/java/jms/config.yml index 1e713b3561..ceb06e47a6 100644 --- a/quickstarts/java/jms/config.yml +++ b/quickstarts/java/jms/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments JMS with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments JMS with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -31,8 +31,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/jsf/config.yml b/quickstarts/java/jsf/config.yml index 1c135ea893..baef964761 100644 --- a/quickstarts/java/jsf/config.yml +++ b/quickstarts/java/jsf/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments JSF with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments JSF with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -31,8 +31,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/jsp/config.yml b/quickstarts/java/jsp/config.yml index 2c79a43ea9..b234900737 100644 --- a/quickstarts/java/jsp/config.yml +++ b/quickstarts/java/jsp/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments JSP with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments JSP with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -31,8 +31,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/mule-esb/config.yml b/quickstarts/java/mule-esb/config.yml index 7d8016cdae..5ecb383830 100644 --- a/quickstarts/java/mule-esb/config.yml +++ b/quickstarts/java/mule-esb/config.yml @@ -35,8 +35,6 @@ keywords: - NR1_addData - NR1_sys - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/netty/config.yml b/quickstarts/java/netty/config.yml index 36b88fadab..d421977c6a 100644 --- a/quickstarts/java/netty/config.yml +++ b/quickstarts/java/netty/config.yml @@ -2,7 +2,7 @@ id: 6c25b345-1377-42be-b265-d511e0d170f8 slug: netty description: | ## Why monitor Netty? - Netty is a tool for building performant, low-level network servers and clients in Java. It operates on an asynchronous, non-blocking I/O model, meaning that it can serve or receive multiple requests simultaneously while maintaining running background processes. + Netty is a tool for building performant, low-level network servers and clients in Java. It operates on an asynchronous, non-blocking I/O model, meaning that it can serve or receive multiple requests simultaneously while maintaining running background processes. While Netty is powerful and runs with lower resource usage than its blocking counterparts, its non-blocking paradigm makes the code it creates harder to test and more difficult to read. The fact that it operates at a low level close to the hardware makes it prone to difficult-to-debug errors. Thus, actively monitoring each Netty instance is vital to keeping all the servers and clients on which it is based running smoothly. The Netty quickstart provides dashboards and alerts that enable continuous monitoring of Netty application health. @@ -10,7 +10,7 @@ description: | The Netty quickstart contains a number of helpful dashboards and alerts that monitor your Netty performance. These include - #### Dashboards + #### Dashboards - Transactions overview provides information about average transaction duration, slowest 10% duration transactions, total transactions, and success rates. - The errors overview gives insight into total transactions and failed transactions by both percentages and total numbers. - The VM overview lets you introspect average CPU utilization, average physical memory usage, and total average memory used. @@ -48,8 +48,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/oc4j/config.yml b/quickstarts/java/oc4j/config.yml index 9bad2b1137..995381c879 100644 --- a/quickstarts/java/oc4j/config.yml +++ b/quickstarts/java/oc4j/config.yml @@ -24,8 +24,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/play-ws/config.yml b/quickstarts/java/play-ws/config.yml index d35ba54dc2..8651273432 100644 --- a/quickstarts/java/play-ws/config.yml +++ b/quickstarts/java/play-ws/config.yml @@ -24,8 +24,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/play/config.yml b/quickstarts/java/play/config.yml index c6580069a8..02c9adee60 100644 --- a/quickstarts/java/play/config.yml +++ b/quickstarts/java/play/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Play with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Play with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -31,8 +31,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/quartz-job-scheduler/config.yml b/quickstarts/java/quartz-job-scheduler/config.yml index e524769153..b3f4897f00 100644 --- a/quickstarts/java/quartz-job-scheduler/config.yml +++ b/quickstarts/java/quartz-job-scheduler/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Quartz Job Scheduler with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Quartz Job Scheduler with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -31,8 +31,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/resin/config.yml b/quickstarts/java/resin/config.yml index 4b22fbea00..55c77fc257 100644 --- a/quickstarts/java/resin/config.yml +++ b/quickstarts/java/resin/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Resin with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Resin with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -31,8 +31,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/resteasy/config.yml b/quickstarts/java/resteasy/config.yml index e4874b0e22..aa01867baf 100644 --- a/quickstarts/java/resteasy/config.yml +++ b/quickstarts/java/resteasy/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments RESTeasy with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments RESTeasy with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -31,8 +31,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/scala/config.yml b/quickstarts/java/scala/config.yml index 3bea5c5b54..0fb82b0a69 100644 --- a/quickstarts/java/scala/config.yml +++ b/quickstarts/java/scala/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Scala with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Scala with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -31,8 +31,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/slick/config.yml b/quickstarts/java/slick/config.yml index b12d83215e..ab41c021ac 100644 --- a/quickstarts/java/slick/config.yml +++ b/quickstarts/java/slick/config.yml @@ -24,8 +24,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/solr/config.yml b/quickstarts/java/solr/config.yml index 558f0fdd71..c0cac47f2d 100644 --- a/quickstarts/java/solr/config.yml +++ b/quickstarts/java/solr/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Solr with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Solr with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -31,8 +31,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/spray-can/config.yml b/quickstarts/java/spray-can/config.yml index 546c811bb0..96b583b059 100644 --- a/quickstarts/java/spray-can/config.yml +++ b/quickstarts/java/spray-can/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Spray-can with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Spray-can with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -31,8 +31,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/spring-jms/config.yml b/quickstarts/java/spring-jms/config.yml index 1167c670ee..54d78bcd5b 100644 --- a/quickstarts/java/spring-jms/config.yml +++ b/quickstarts/java/spring-jms/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Spring-JMS with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Spring-JMS with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -31,8 +31,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/spring/config.yml b/quickstarts/java/spring/config.yml index cfb19c10cc..8109187ac5 100644 --- a/quickstarts/java/spring/config.yml +++ b/quickstarts/java/spring/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Spring with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Spring with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -31,8 +31,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/spymemcached/config.yml b/quickstarts/java/spymemcached/config.yml index 095cb2c21f..6f4e56666b 100644 --- a/quickstarts/java/spymemcached/config.yml +++ b/quickstarts/java/spymemcached/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments SpyMemcached with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments SpyMemcached with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -31,8 +31,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/struts/config.yml b/quickstarts/java/struts/config.yml index 853a5ee868..0e6df407e5 100644 --- a/quickstarts/java/struts/config.yml +++ b/quickstarts/java/struts/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Struts with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Struts with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -31,8 +31,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/thrift/config.yml b/quickstarts/java/thrift/config.yml index cd276729fa..6b74af49ea 100644 --- a/quickstarts/java/thrift/config.yml +++ b/quickstarts/java/thrift/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Thrift with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Thrift with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -31,8 +31,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/tomcat/config.yml b/quickstarts/java/tomcat/config.yml index dc8aa8adf8..fa84098c8c 100644 --- a/quickstarts/java/tomcat/config.yml +++ b/quickstarts/java/tomcat/config.yml @@ -39,8 +39,6 @@ keywords: - server - most popular - language agent -installPlans: - - setup-java-targeted-install dataSourceIds: - java dashboards: diff --git a/quickstarts/java/tomee/config.yml b/quickstarts/java/tomee/config.yml index e6fcbe2f05..3eb84e1ce0 100644 --- a/quickstarts/java/tomee/config.yml +++ b/quickstarts/java/tomee/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments TomEE with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments TomEE with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -31,8 +31,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-targeted-install dataSourceIds: - java dashboards: diff --git a/quickstarts/java/vert-x/config.yml b/quickstarts/java/vert-x/config.yml index 0e2b7f3ca3..d3d6acd1e3 100644 --- a/quickstarts/java/vert-x/config.yml +++ b/quickstarts/java/vert-x/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Vert.x with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments Vert.x with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -27,8 +27,6 @@ documentation: Application framework for development of reactive and event-driven software in Java or a variety of other languages. url: https://docs.newrelic.com/docs/agents/java-agent/getting-started/compatibility-requirements-java-agent -installPlans: - - setup-java-agent dataSourceIds: - java keywords: diff --git a/quickstarts/java/weblogic/config.yml b/quickstarts/java/weblogic/config.yml index 942ef65b16..4c208f42e8 100644 --- a/quickstarts/java/weblogic/config.yml +++ b/quickstarts/java/weblogic/config.yml @@ -24,8 +24,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/websphere-liberty-profile/config.yml b/quickstarts/java/websphere-liberty-profile/config.yml index cc8a7ce186..4be0a2db62 100644 --- a/quickstarts/java/websphere-liberty-profile/config.yml +++ b/quickstarts/java/websphere-liberty-profile/config.yml @@ -35,8 +35,6 @@ keywords: - java - apm - language agent -installPlans: - - setup-java-agent dataSourceIds: - java documentation: @@ -47,4 +45,4 @@ documentation: dashboards: - websphere-liberty-profile alertPolicies: - - websphere-liberty-profile \ No newline at end of file + - websphere-liberty-profile diff --git a/quickstarts/java/websphere/config.yml b/quickstarts/java/websphere/config.yml index f4dcb744bf..759545a2f0 100644 --- a/quickstarts/java/websphere/config.yml +++ b/quickstarts/java/websphere/config.yml @@ -24,8 +24,6 @@ keywords: - apm - java - language agent -installPlans: - - setup-java-agent dataSourceIds: - java dashboards: diff --git a/quickstarts/java/wildfly/config.yml b/quickstarts/java/wildfly/config.yml index 6e4a779ba1..1e4e350edf 100644 --- a/quickstarts/java/wildfly/config.yml +++ b/quickstarts/java/wildfly/config.yml @@ -8,7 +8,7 @@ description: | ## Get started! - Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments WildFly with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. + Leverage community expertise and instantly get value out of your telemetry data. This quickstart automatically instruments WildFly with the New Relic Java agent, and allows you to instantly monitor your Java application with out-of-the-box dashboards and alerts. Further leverage New Relic's APM capabilities by setting up [errors inbox](https://docs.newrelic.com/docs/apm/apm-ui-pages/errors-inbox/errors-inbox/), [transaction tracing](https://docs.newrelic.com/docs/apm/transactions/transaction-traces/introduction-transaction-traces/), and [service maps](https://docs.newrelic.com/docs/understand-dependencies/understand-system-dependencies/service-maps/introduction-service-maps/). ## More info @@ -32,8 +32,6 @@ keywords: - java - server - language agent -installPlans: - - setup-java-targeted-install dataSourceIds: - java dashboards: diff --git a/quickstarts/jenkins/config.yml b/quickstarts/jenkins/config.yml index a1f86ac03a..8fa42e87ad 100644 --- a/quickstarts/jenkins/config.yml +++ b/quickstarts/jenkins/config.yml @@ -17,14 +17,14 @@ description: |- Check out the [documentation](https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/monitoring-jenkins-ot/) to learn more about New Relic monitoring for Jenkins. ### Tie software performance to recent changes and deployments with New Relic change tracking - + With [New Relic change tracking](https://newrelic.com/platform/change-tracking), engineers now have the context to quickly understand the impact of changes on a system's performance and quality---then take action to find and fix problems fast. - See deployments in context with errors, logs, traces, incidents, and more. - Correlate deployments and change events to shifts in golden signals, errors, log attributes, incidents, and other key metrics. - Automatically mark charts with change details and metadata from any source, including the [Jenkins](https://docs.newrelic.com/docs/change-tracking/ci-cd/change-tracking-jenkins/) plugin. Learn how to automatically record deployments with the brand new [GraphQL API](https://docs.newrelic.com/docs/change-tracking/change-tracking-graphql/), [New Relic CLI](https://docs.newrelic.com/docs/change-tracking/change-tracking-cli/), and third-party CI/CD sources in the [docs](https://docs.newrelic.com/docs/change-tracking/change-tracking-introduction/). - + # Displayed in search results and recommendations. Summarizes a quickstarts functionality. summary: | @@ -41,8 +41,6 @@ keywords: - newrelic partner - NR1_addData - NR1_sys -installPlans: - - third-party-jenkins-integration dataSourceIds: - otel-jenkins-integration dashboards: @@ -52,4 +50,3 @@ documentation: url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/monitoring-jenkins-ot/ description: Monitor Jenkins with the OpenTelemetry plugin by visualizing jobs and pipeline executions as distributed traces. icon: logo.svg -website: https://www.newrelic.com diff --git a/quickstarts/jfrog-platform-cloud/config.yml b/quickstarts/jfrog-platform-cloud/config.yml new file mode 100644 index 0000000000..3e5e422230 --- /dev/null +++ b/quickstarts/jfrog-platform-cloud/config.yml @@ -0,0 +1,46 @@ +id: 932a9cb3-ba60-4766-a8c5-261ac3d06d84 +slug: jfrog-platform-cloud +title: JFrog Software Supply Chain Cloud Platform +description: | + ## Why monitor the JFrog Platform + + The JFrog Platform is a leading universal end-to-end DevOps and DevSecOps platform for automating, managing, securing, distributing, orchestrating, monitoring, and optimizing your Cl/ CD pipeline. Monitor the JFrog Platform to get real-time insights about the health, performance, and security of your software supply chain. + + ### JFrog Platform quickstart highlights + + The integration surfaces critical platform logs available through pre-built dashboards + + - Monitor the JFrog Cloud instance inside the convenient New Relic observability platform + - Curated dashboards surface performance data, artifact usage for operations teams, DevSecOps teams, and business stakeholders. + + ### Quickstart benefits + - **Faster and more reliable software delivery.** Monitor all your JFrog applications, artifacts, and dependencies in real time with pre-built dashboards. + - **Better compliance and security.** Identify urgent vulnerabilities, identify malicious users, and deliver more secure software with less toil. + - **Improve software supply chain performance.** Proactively manage suspicious activity, remediate issues and boost release velocity and quality. + +summary: | + Monitor your JFrog Artifactory Cloud instance for faster, more secure software delivery +level: Verified +authors: + - JFrog + - Daniel Miakotkin +keywords: + - newrelic + - newrelic partner + - apm + - open source monitoring + - artifactory + - saas + - security + - featured + - NR1_addData +documentation: + - name: JFrog Cloud Log Streaming + url: https://jfrog.com/help/r/jfrog-hosting-models-documentation/jfrog-cloud-log-streaming + description: | + JFrog Cloud Log Streaming integration documentation +icon: icon.svg +dashboards: + - jfrog-artifactory-cloud +dataSourceIds: + - jfrog-platform-cloud diff --git a/quickstarts/jfrog-platform-cloud/icon.svg b/quickstarts/jfrog-platform-cloud/icon.svg new file mode 100644 index 0000000000..3dd38ec59a --- /dev/null +++ b/quickstarts/jfrog-platform-cloud/icon.svg @@ -0,0 +1,18 @@ + + + + + + + + + + + + diff --git a/quickstarts/jfrog-platform/config.yml b/quickstarts/jfrog-platform/config.yml index cb48405615..2ac84723c0 100644 --- a/quickstarts/jfrog-platform/config.yml +++ b/quickstarts/jfrog-platform/config.yml @@ -3,21 +3,21 @@ slug: jfrog-platform title: JFrog Software Supply Chain Platform description: | ## Why monitor the JFrog Platform - + The JFrog Platform is a leading universal end-to-end DevOps and DevSecOps platform for automating, managing, securing, distributing, orchestrating, monitoring, and optimizing your Cl/ CD pipeline. Monitor the JFrog Platform to get real-time insights about the health, performance, and security of your software supply chain. - + ### JFrog Platform quickstart highlights The integration surfaces critical platform logs, JFrog Xray violations data, and system performance data available through OpenMetrics as pre-built dashboards - Monitor the JFrom platform inside the convenient New Relic observability platform - - Utilizes Fluentd, an open source, lightweight log processor and forwarder - - Curated dashboards surface performance data, artifact usage, and security metrics for operations teams, DevSecOps teams, and business stakeholders. - + - Utilizes Fluentd, an open source, lightweight log processor and forwarder + - Curated dashboards surface performance data, artifact usage, and security metrics for operations teams, DevSecOps teams, and business stakeholders. + ### Quickstart benefits - **Faster and more reliable software delivery.** Monitor all your JFrog applications, artifacts, and dependencies in real time with pre-built dashboards to correlate performance alongside the rest of your telemetry data in a unified view. - **Better compliance and security.** Identify urgent vulnerabilities, identify malicious users, and deliver more secure software with less toil. - - **Improve software supply chain performance.** Proactively manage performance degradation and remediate issues and boost release velocity and quality. + - **Improve software supply chain performance.** Proactively manage performance degradation and remediate issues and boost release velocity and quality. summary: | Monitor your JFrog Artifactory and JFrog Xray environments for faster, more secure software delivery @@ -44,7 +44,5 @@ icon: icon.svg dashboards: - jfrog-artifactory - jfrog-xray -installPlans: - - third-party-jfrog-platform dataSourceIds: - jfrog-platform diff --git a/quickstarts/jina-ai/config.yml b/quickstarts/jina-ai/config.yml index fc9181a507..96edc80081 100644 --- a/quickstarts/jina-ai/config.yml +++ b/quickstarts/jina-ai/config.yml @@ -20,11 +20,10 @@ description: | summary: | Improve the visibility of your Jina AI usage with New Relic Jina AI quickstart. icon: logo.jpeg -level: - - New Relic +level: New Relic authors: - New Relic -title: Jina AI +title: Jina AI documentation: - name: Jina AI integration documentation description: | diff --git a/quickstarts/jira-errors/config.yml b/quickstarts/jira-errors/config.yml index 9a406381f7..358f4b9473 100644 --- a/quickstarts/jira-errors/config.yml +++ b/quickstarts/jira-errors/config.yml @@ -19,8 +19,6 @@ keywords: - error tracking - newrelic partner - NR1_addData -installPlans: - - third-party-jira-errors-inbox dataSourceIds: - jira-errors-inbox documentation: @@ -28,4 +26,3 @@ documentation: url: https://docs.newrelic.com/docs/errors-inbox/error-external-services#jira description: How to integrate Jira with New Relic Errors Inbox icon: logo.svg -website: https://www.newrelic.com diff --git a/quickstarts/jmx/config.yml b/quickstarts/jmx/config.yml index ee42a1ba8a..19cfad409e 100644 --- a/quickstarts/jmx/config.yml +++ b/quickstarts/jmx/config.yml @@ -19,7 +19,6 @@ level: New Relic # Design icon: logo.png -website: https://docs.oracle.com/javase/tutorial/jmx/overview/index.html # Authors of the quickstart authors: @@ -31,9 +30,6 @@ documentation: Java technology that supplies tools for managing and monitoring applications, system objects, devices, and service-oriented networks. url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/jmx-monitoring-integration/ -installPlans: - - infra-agent-targeted - - jmx-integration-docs dataSourceIds: - new-relic-infrastructure-agent - jmx diff --git a/quickstarts/kafka/config.yml b/quickstarts/kafka/config.yml index 5e0ed334ad..33cc50807d 100644 --- a/quickstarts/kafka/config.yml +++ b/quickstarts/kafka/config.yml @@ -10,19 +10,19 @@ title: Kafka description: | ## Quickstart for Kafka monitoring - Kafka monitoring is important to track services running on multiple Kafka servers in real-time. Observe key metrics like CPU usage, memory, and consumer lag at a glance in a Kafka dashboard. + Kafka monitoring is important to track services running on multiple Kafka servers in real-time. Observe key metrics like CPU usage, memory, and consumer lag at a glance in a Kafka dashboard. ### Why monitoring kafka is so important Apache Kafka is a fault-tolerant, scalable messaging system used to build real-time data pipelines. Kafka also supports replications natively, and you can build streaming applications that run inside production environments. - Leveraging a Kafka monitoring tool to monitor data replication, retention, and issues like consumer lag is important. New Relic’s Kafka quickstart lets you look at performance metrics and inventory data, create your own custom charts and queries, and create alert policies. + Leveraging a Kafka monitoring tool to monitor data replication, retention, and issues like consumer lag is important. New Relic’s Kafka quickstart lets you look at performance metrics and inventory data, create your own custom charts and queries, and create alert policies. ### New Relic Kafka quickstart features [New Relic’s Kafka monitoring](https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/kafka-monitoring-integration/) tracks space and time retention, leverages replication alerts to uncover potential issues, and uses queries and a Kafka dashboard to explore them. - ### New Relic + Kafka quickstart + ### New Relic + Kafka quickstart New Relic’s performance monitoring provides instant observability out-of-the-box. This quickstart includes: @@ -34,7 +34,7 @@ description: | Provide total visibility into key performance metrics like the number of client requests and bytes served per second with New Relic’s Kafka monitoring and also track inventory data and metadata in real-time. - One of the key features of New Relic’s Kafka monitoring is that you can configure your retention settings by time and by space and set up real-time alerts. + One of the key features of New Relic’s Kafka monitoring is that you can configure your retention settings by time and by space and set up real-time alerts. Track key metrics like gauge, count, and summary as well with New Relic’s instant observability quickstart. Ensure that your infrastructure remains robust and running while averting potential data loss by monitoring Kafka brokers and Kafka producers. summary: | @@ -45,7 +45,6 @@ level: New Relic # Design icon: logo.png -website: https://kafka.apache.org/ # Authors of the quickstart authors: @@ -58,10 +57,6 @@ documentation: Distributed streaming platform built for scalability, fault-tolerance, and building real-time data pipelines and streaming applications. url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/kafka-monitoring-integration/ -installPlans: - - infra-agent-targeted - - kafka-integration-docs - dataSourceIds: - new-relic-infrastructure-agent - kafka diff --git a/quickstarts/kamon/config.yml b/quickstarts/kamon/config.yml index bc0edfe359..3a8deb6b3f 100644 --- a/quickstarts/kamon/config.yml +++ b/quickstarts/kamon/config.yml @@ -15,8 +15,6 @@ level: New Relic authors: - New Relic title: Kamon -installPlans: - - third-party-kamon dataSourceIds: - kamon documentation: diff --git a/quickstarts/kentik/config.yml b/quickstarts/kentik/config.yml index aaaac1e9fa..22c2a5fcaa 100644 --- a/quickstarts/kentik/config.yml +++ b/quickstarts/kentik/config.yml @@ -32,8 +32,6 @@ keywords: - newrelic partner - NR1_addData - NR1_sys -installPlans: - - third-party-kentik-firehose dataSourceIds: - kentik documentation: @@ -41,7 +39,7 @@ documentation: url: https://kb.kentik.com/v0/Fc19.htm#Fc19-Firehose_Overview description: Learn how to configure the Kentik Firehose and send data to New Relic icon: logo.png -website: https://kentik.com + dashboards: - network-syslog - network-synthetics diff --git a/quickstarts/kong/config.yml b/quickstarts/kong/config.yml new file mode 100644 index 0000000000..40aef56530 --- /dev/null +++ b/quickstarts/kong/config.yml @@ -0,0 +1,24 @@ +id: 25eaa503-6864-4467-bc25-0bee8a0e5862 +slug: kong-gateway-logs +title: Kong Gateway Logs +description: | + # About this integration + Kong Gateway is a lightweight, fast, and flexible cloud-native API gateway. Forwarding Kong Gateway logs to New Relic provides valuable insights into API gateway performance, health, security, and usage. +summary: | + Collect Kong Gateway logs to New Relic to monitor API gateway performance, health, security, and usage. +level: New Relic +authors: + - New Relic +keywords: + - logs + - logging + - kong + - gateway + - newrelic partner +documentation: + - name: Forward Kong Gateway Logs + url: https://docs.newrelic.com/docs/logs/forward-logs/kong-gateway/ + description: This document outlines how to direct the File Log plugin from Kong Gateway to forward logs from Kong Gateway to New Relic. +icon: logo.svg +dataSourceIds: + - kong-gateway-logs \ No newline at end of file diff --git a/quickstarts/kong/logo.svg b/quickstarts/kong/logo.svg new file mode 100644 index 0000000000..0092c89433 --- /dev/null +++ b/quickstarts/kong/logo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/quickstarts/kubernetes-opentelemetry/config.yml b/quickstarts/kubernetes-opentelemetry/config.yml new file mode 100644 index 0000000000..aa9eed87af --- /dev/null +++ b/quickstarts/kubernetes-opentelemetry/config.yml @@ -0,0 +1,63 @@ +id: 7cc82a78-e523-4d35-bba9-aee81029d0f7 +slug: kubernetes-opentelemetry +title: Kubernetes (OpenTelemetry) +description: | + ## Why monitor Kubernetes using OpenTelemetry? + Kubernetes is an open-source system for automating deployment, scaling, and, management of containerized applications. + OpenTelemetry is an open source observability framework that provides IT teams with standardized protocols and tools for collecting and routing telemetry. + Organizations adopting OpenTelemetry will get advantage of vendor neutrality by using flexible and open-source agents and/or SDKs. + + New Relic provides OpenTelemetry observability for Kubernetes which aims not only to ingest all the data sent but also to provide first-class K8s experiences and insights. + + This quicktart gives you visibility into your Kubernetes clusters and workloads in minutes, whether your clusters are hosted on-premises or in the cloud. + ### Kubernetes (OpenTelemetry) quickstart highlights + Included in this quickstart you will find: + + * Instructions to install our [K8s instrumentation with OpenTelemetry](https://docs.newrelic.com/docs/kubernetes-pixie/kubernetes-integration/installation/k8s-otel/). + * A complete recommended alert policy including alert conditions to be notified on most of the common relevant issues. + * Container CPU throttling is high (alert condition) + * Container high CPU utilization (alert condition) + * Container high memory utilization (alert condition) + * Container is restarting (alert condition) + * Container is waiting (alert condition) + * Daemonset is missing pods (alert condition) + * Deployment is missing pods (alert condition) + * Etcd fie descriptor utilization is high (alert condition) + * Etcd has no leader (alert condition) + * HPA current replicas < desired replicas (alert condition) + * HPA has reached maximum replicas (alert condition) + * Job Failed (alert condition) + * More than 5 pods failing in namespace (alert condition) + * Node allocatable CPU utilization is high (alert condition) + * Node allocatable memory utilization is high (alert condition) + * Node is not ready (alert condition) + * Node is unschedulable (alert condition) + * Node pod count nearing capacity (alert condition) + * Node root file system capacity utilization is high (alert condition) + * Persistent volume has errors (alert condition) + * Pod cannot be scheduled (alert condition) + * Pod is not ready (alert condition) + * Statefulset is missing pods (alert condition) + ### New Relic + Kubernetes = Optimum performance monitoring +summary: | + Monitoring Kubernetes with OpenTelemetry is crucial to gain instant visibility into Kubernetes clusters and workloads using open-source agents which provide vendor neutrality. + +icon: logo.svg +level: New Relic +authors: + - New Relic +documentation: + - name: Kubernetes (Opentelemetry) installation docs + description: | + OpenTelemetry observability for Kubernetes provides complete, open-source setup paired with a top-notch Kubernetes UI that is already compatible with our proprietary Kubernetes instrumentation. Our K8s UIs are designed to be provider agnostic, allowing you to select either OpenTelemetry or New Relic instrumentation based on your needs. + url: >- + https://docs.newrelic.com/docs/kubernetes-pixie/kubernetes-integration/installation/k8s-otel/#install +dataSourceIds: + - kubernetes-opentelemetry +keywords: + - kubernetes + - containers + - k8s + - opentelemetry +alertPolicies: + - kubernetes-opentelemetry diff --git a/quickstarts/kubernetes-opentelemetry/logo.svg b/quickstarts/kubernetes-opentelemetry/logo.svg new file mode 100644 index 0000000000..e33c0ab527 --- /dev/null +++ b/quickstarts/kubernetes-opentelemetry/logo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/quickstarts/kubernetes-prometheus/config.yml b/quickstarts/kubernetes-prometheus/config.yml index 9152e137e8..fb58994d84 100644 --- a/quickstarts/kubernetes-prometheus/config.yml +++ b/quickstarts/kubernetes-prometheus/config.yml @@ -4,23 +4,23 @@ title: Kubernetes (Prometheus) description: | ## What is Kubernetes? Kubernetes is an open-source system for automating deployment, scaling, and, management of containerized applications. The New Relic Kubernetes (Prometheus) monitoring quickstart utilizes Prometheus to give you visibility into your Kubernetes clusters and workloads in minutes, whether your clusters are hosted on-premises or in the cloud. - Follow the instructions [here](https://docs.newrelic.com/docs/kubernetes-pixie/kubernetes-integration/get-started/introduction-kubernetes-integration/) to install the New Relic Kubernetes integration. + Follow the instructions [here](https://docs.newrelic.com/docs/kubernetes-pixie/kubernetes-integration/get-started/introduction-kubernetes-integration/) to install the New Relic Kubernetes integration. - ## What is Prometheus? - Prometheus is an open-source monitoring and alerting toolkit. + ## What is Prometheus? + Prometheus is an open-source monitoring and alerting toolkit. ### Kubernetes (Prometheus) quickstart highlights The New Relic Prometheus quickstart for Kubernetes utilizes the [New Relic Prometheus agent](https://docs.newrelic.com/docs/infrastructure/prometheus-integrations/install-configure-prometheus-agent/install-prometheus-agent/) to build dashboards that allow you to proactively monitor your metrics, like: - - memory and cpu utilization - - running pods and containers - - kubelet pod start metrics - - compute resources by pod, node, cluster, and namespace and more. + - memory and cpu utilization + - running pods and containers + - kubelet pod start metrics + - compute resources by pod, node, cluster, and namespace and more. ### Requirements - - Follow the instructions [here](https://docs.newrelic.com/docs/infrastructure/prometheus-integrations/install-configure-prometheus-agent/install-prometheus-agent/) to install the New Relic Prometheus agent. - - **The default installation of the New Relic Prometheus configurator does not enable all of the metrics needed to work with this quickstart's dashboards. Follow the instructions [here](https://github.com/newrelic/newrelic-prometheus-configurator/blob/main/examples/kubernetes/README.md) to enable those metrics. + - Follow the instructions [here](https://docs.newrelic.com/docs/infrastructure/prometheus-integrations/install-configure-prometheus-agent/install-prometheus-agent/) to install the New Relic Prometheus agent. + - **The default installation of the New Relic Prometheus configurator does not enable all of the metrics needed to work with this quickstart's dashboards. Follow the instructions [here](https://github.com/newrelic/newrelic-prometheus-configurator/blob/main/examples/kubernetes/README.md) to enable those metrics. summary: | - Monitoring Kubernetes is crucial to gain instant visibility into Kubernetes clusters and workloads. + Monitoring Kubernetes is crucial to gain instant visibility into Kubernetes clusters and workloads. Prometheus' ability to monitor a wide variety of data necessitates monitoring the toolkit itself. New Relic helps store, manage, and view telemetry data from your Prometheus setup, relieving you of a significant operational burden. Download the New Relic Kubernetes (Prometheus) quickstart to proactively monitor Kubernetes cluster health and capacity. level: Community @@ -33,14 +33,12 @@ documentation: url: https://docs.newrelic.com/docs/infrastructure/prometheus-integrations/install-configure-prometheus-agent/install-prometheus-agent/ - name: Kubernetes Prometheus agent REQUIRED configuration description: | - The default installation of the New Relic Prometheus agent does not enable all of the metrics needed to work with this quickstart's dashboards. Follow the instructions here to enable those metrics. + The default installation of the New Relic Prometheus agent does not enable all of the metrics needed to work with this quickstart's dashboards. Follow the instructions here to enable those metrics. url: https://github.com/newrelic/newrelic-prometheus-configurator/blob/main/examples/kubernetes/README.md - name: Kubernetes integration description: | - The New Relic Kubernetes integration has multiple components that work together to give you end-to-end observability across your clusters. While you have the flexibility to deploy the components that you prefer, to achieve full observability, you need to install the complete package to monitor all metrics. + The New Relic Kubernetes integration has multiple components that work together to give you end-to-end observability across your clusters. While you have the flexibility to deploy the components that you prefer, to achieve full observability, you need to install the complete package to monitor all metrics. url: https://docs.newrelic.com/docs/kubernetes-pixie/kubernetes-integration/get-started/introduction-kubernetes-integration/ -installPlans: - - setup-prometheus-agent-mode dataSourceIds: - prometheus-agent-mode keywords: diff --git a/quickstarts/kubernetes/azure-kubernetes-service/config.yml b/quickstarts/kubernetes/azure-kubernetes-service/config.yml index 09b19b114d..ef44009ed1 100644 --- a/quickstarts/kubernetes/azure-kubernetes-service/config.yml +++ b/quickstarts/kubernetes/azure-kubernetes-service/config.yml @@ -26,8 +26,6 @@ keywords: - aks - NR1_addData - NR1_sys -installPlans: - - kubernetes-install dataSourceIds: - kubernetes dashboards: diff --git a/quickstarts/kubernetes/google-kubernetes-engine/config.yml b/quickstarts/kubernetes/google-kubernetes-engine/config.yml index d214f1fa26..557956da9f 100644 --- a/quickstarts/kubernetes/google-kubernetes-engine/config.yml +++ b/quickstarts/kubernetes/google-kubernetes-engine/config.yml @@ -24,8 +24,6 @@ keywords: - containers - k8s - google -installPlans: - - kubernetes-install dataSourceIds: - kubernetes dashboards: diff --git a/quickstarts/kubernetes/kubernetes/config.yml b/quickstarts/kubernetes/kubernetes/config.yml index 4590c0f7a4..3be2d50d47 100644 --- a/quickstarts/kubernetes/kubernetes/config.yml +++ b/quickstarts/kubernetes/kubernetes/config.yml @@ -50,8 +50,6 @@ keywords: - containers - pixie - k8s -installPlans: - - kubernetes-install dataSourceIds: - kubernetes diff --git a/quickstarts/kubernetes/nginx/config.yml b/quickstarts/kubernetes/nginx/config.yml index 0c55e6340e..3e8406a4a1 100644 --- a/quickstarts/kubernetes/nginx/config.yml +++ b/quickstarts/kubernetes/nginx/config.yml @@ -33,9 +33,6 @@ keywords: - config - NR1_addData - NR1_sys -installPlans: - - setup-prometheus - - setup-prometheus-agent-mode dataSourceIds: - prometheus - prometheus-agent-mode @@ -49,7 +46,7 @@ documentation: NGINX Ingress Controller Prometheus Integration Documentation url: https://docs.newrelic.com/docs/infrastructure/prometheus-integrations/integrations-list/ingress-controller-integration/ icon: logo.svg -website: https://www.nginx.com/ + dashboards: - nginx-ingress alertPolicies: diff --git a/quickstarts/lacework/config.yml b/quickstarts/lacework/config.yml index 46253d17fd..3df42298c6 100644 --- a/quickstarts/lacework/config.yml +++ b/quickstarts/lacework/config.yml @@ -8,13 +8,13 @@ description: | Lacework is a comprehensive cloud security platform. We aim to turn security into a data problem and replace the frictionful processes for things like breach investigations or achieving compliance standards with simple, contextualized workflows. Technically, our approach is that we replace the traditional 'rules' based mentality that requires you to predict attacker patterns ahead of time with a fully ML based approach. We baseline what normal user, application and network behaviors look like across your workloads and cloud accounts automatically and then only alert you to deviations from the norm. This significantly reduces the amount of toil in setting up and maintaining our solution, but also drastically improves the efficacy and amount of security alerts you will receive. - + This integration with Lacework and New Relic brings the curated security alerts for misconfigurations and anomalous security behaviors into the New Relic platform so you can easily triage against your wealth of observability data or easily transition from monitoring to security investigations from a single interface! - + For more information/support, head over to [support.lacework.com](https://support.lacework.com/)! icon: logo.jpg level: Verified -website: https://lacework.com/ + authors: - Lacework, Inc documentation: @@ -30,8 +30,6 @@ keywords: - newrelic partner - NR1_addData - NR1_sys -installPlans: - - third-party-lacework-integration dataSourceIds: - lacework dashboards: diff --git a/quickstarts/lambdatest/config.yml b/quickstarts/lambdatest/config.yml index 4547bd6d62..fc87127a28 100644 --- a/quickstarts/lambdatest/config.yml +++ b/quickstarts/lambdatest/config.yml @@ -5,7 +5,7 @@ description: | ## About LambdaTest ​ LambdaTest is an AI-powered test orchestration and execution platform to run manual and automated tests at scale. With LambdaTest, developers and testers can test their websites and mobile applications across 3000+ real browsers, devices, and operating systems. - + ## About LambdaTest and New Relic Integration The integration of LambdaTest with New Relic offers a seamless experience for users aiming to optimize and monitor their stats during automated test execution. By bridging the gap between testing and performance monitoring, this integration brings forward an out-of-the-box dashboard that enables users to visualize and understand their testing metrics in real-time, set against the backdrop of broader application performance insights offered by New Relic. @@ -20,14 +20,14 @@ description: | - Displays key metrics such as test execution counts, pass rates, durations, etc. - Insights on website compatibility across different browsers and devices. - Immediate understanding of application's cross-browser functionality. - + ### Test Errors Overview - + - Focuses on discrepancies and anomalies in tests. - Deep insights into test failures. - Highlights the nature and frequency of errors. - Provides information on environments where errors occurred. - + # Displayed in search results and recommendations. Summarizes a quickstarts functionality. summary: | @@ -56,8 +56,8 @@ documentation: dataSourceIds: - lambdatest - + icon: logo.svg -website: https://www.lambdatest.com/ + dashboards: - - lambdatest \ No newline at end of file + - lambdatest diff --git a/quickstarts/lamp/config.yml b/quickstarts/lamp/config.yml index 4c26e8e690..dfa8c05140 100644 --- a/quickstarts/lamp/config.yml +++ b/quickstarts/lamp/config.yml @@ -12,10 +12,6 @@ level: New Relic authors: - New Relic - Stijn Polfliet -installPlans: - - mysql-integration - - apache-integration - - php-agent dataSourceIds: - mysql - apache diff --git a/quickstarts/lampy/config.yml b/quickstarts/lampy/config.yml index ac87f54756..b32aa9cdca 100644 --- a/quickstarts/lampy/config.yml +++ b/quickstarts/lampy/config.yml @@ -10,19 +10,19 @@ summary: | With New Relic LAMPy integration, you can monitor your apps, infrastructure, web servers, databases, and databases, using Linux, Apache, MySQL, and Python agents. # Description of the quickstart description: | - ## Comprehensive LAMPy stack monitoring system: - LAMPy is a free, open source software stack used for building web sites and applications. LAMPy is an acronym for the operating system (Linux), the webserver (Apache), the database server (MySQL), and the programming language (Python). - ## What should you look for in a LAMPy dashboard? - - Linux: CPU usage, total memory usage, disk usage, etc - - Apache: Requests per second, bytes per second, workers status, etc - - MySQL: Operations per second, InnoDB read & writes, etc - - Python: Throughput, transaction overview, WSGI, etc - - In addition, you are free to create your own charts using the stored metrics - ## What’s included in the LAMPy quickstart? - This quickstart includes the following preconfigured observability solutions: - - Application metrics with your server’s primary health metrics, like CPU usage, memory, disk usage and more - - Multiple high-value alerts including latest number of questions per second, error transactions percentage, memory usage and CPU utilization - - Informative dashboards (Busy worker status, operations, InnoDB read and write, etc) + ## Comprehensive LAMPy stack monitoring system: + LAMPy is a free, open source software stack used for building web sites and applications. LAMPy is an acronym for the operating system (Linux), the webserver (Apache), the database server (MySQL), and the programming language (Python). + ## What should you look for in a LAMPy dashboard? + - Linux: CPU usage, total memory usage, disk usage, etc + - Apache: Requests per second, bytes per second, workers status, etc + - MySQL: Operations per second, InnoDB read & writes, etc + - Python: Throughput, transaction overview, WSGI, etc + - In addition, you are free to create your own charts using the stored metrics + ## What’s included in the LAMPy quickstart? + This quickstart includes the following preconfigured observability solutions: + - Application metrics with your server’s primary health metrics, like CPU usage, memory, disk usage and more + - Multiple high-value alerts including latest number of questions per second, error transactions percentage, memory usage and CPU utilization + - Informative dashboards (Busy worker status, operations, InnoDB read and write, etc) # The logo of the quickstart icon: logo.png @@ -35,11 +35,6 @@ authors: - New Relic - Ramana Reddy -installPlans: - - apache-integration - - mysql-integration - - setup-python-agent - keywords: - LAMPy - linux diff --git a/quickstarts/launchdarkly/config.yml b/quickstarts/launchdarkly/config.yml index 7e0247036c..eb9b92f2ac 100644 --- a/quickstarts/launchdarkly/config.yml +++ b/quickstarts/launchdarkly/config.yml @@ -21,7 +21,5 @@ keywords: - testing - NR1_addData - NR1_sys -installPlans: - - third-party-launchdarkly dataSourceIds: - launchdarkly diff --git a/quickstarts/lighthouse/config.yml b/quickstarts/lighthouse/config.yml index 03232e9001..032b68620d 100644 --- a/quickstarts/lighthouse/config.yml +++ b/quickstarts/lighthouse/config.yml @@ -7,8 +7,6 @@ level: New Relic authors: - New Relic title: Lighthouse -installPlans: - - third-party-lighthouse dataSourceIds: - lighthouse documentation: diff --git a/quickstarts/linux/config.yml b/quickstarts/linux/config.yml index 910ab8b123..7cd8d0e66c 100644 --- a/quickstarts/linux/config.yml +++ b/quickstarts/linux/config.yml @@ -25,8 +25,6 @@ keywords: - os - operating system - featured -installPlans: - - guided-install dataSourceIds: - guided-install dashboards: diff --git a/quickstarts/loadmill/config.yml b/quickstarts/loadmill/config.yml index 57c0ccd5f4..43f432d3ae 100644 --- a/quickstarts/loadmill/config.yml +++ b/quickstarts/loadmill/config.yml @@ -43,4 +43,3 @@ documentation: # Content / Design icon: logo.svg -website: https://www.loadmill.com diff --git a/quickstarts/logstash-plugin-for-logs/config.yml b/quickstarts/logstash-plugin-for-logs/config.yml index 5e2ca08bd6..bd152d5dd7 100644 --- a/quickstarts/logstash-plugin-for-logs/config.yml +++ b/quickstarts/logstash-plugin-for-logs/config.yml @@ -11,8 +11,6 @@ level: New Relic authors: - New Relic title: Logstash plugin for Logs -installPlans: - - third-party-logstash-plugin-for-logs dataSourceIds: - logstash documentation: diff --git a/quickstarts/macos/config.yml b/quickstarts/macos/config.yml index 61c2e275f7..28e662316c 100644 --- a/quickstarts/macos/config.yml +++ b/quickstarts/macos/config.yml @@ -24,9 +24,6 @@ documentation: - name: Get started with infrastructure monitoring url: https://docs.newrelic.com/docs/infrastructure/infrastructure-monitoring/get-started/get-started-infrastructure-monitoring/ description: Learn more about New Relic infrastructure -installPlans: - - guided-install dataSourceIds: - guided-install icon: logo.png -website: https://developer.apple.com/macos/ diff --git a/quickstarts/mariadb/config.yml b/quickstarts/mariadb/config.yml index e420aa76bc..b0533d34e0 100644 --- a/quickstarts/mariadb/config.yml +++ b/quickstarts/mariadb/config.yml @@ -23,8 +23,6 @@ keywords: - newrelic partner - NR1_addData - NR1_sys -installPlans: - - mysql-integration dataSourceIds: - mysql dashboards: diff --git a/quickstarts/memcached/config.yml b/quickstarts/memcached/config.yml index fc6f786dc5..1adbc30168 100644 --- a/quickstarts/memcached/config.yml +++ b/quickstarts/memcached/config.yml @@ -8,7 +8,7 @@ summary: | Monitor Memcached with New Relic's On Host Integration. level: New Relic icon: logo.png -website: https://www.newrelic.com + authors: - New Relic - Daniel Gola @@ -17,8 +17,6 @@ documentation: description: | Open-source distributed memory caching system to reduce the number of calls to external databases or APIs. url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/memcached-monitoring-integration/ -installPlans: - - memcached-integration dataSourceIds: - memcached keywords: diff --git a/quickstarts/micrometer/config.yml b/quickstarts/micrometer/config.yml index d044cc2171..670492842f 100644 --- a/quickstarts/micrometer/config.yml +++ b/quickstarts/micrometer/config.yml @@ -16,8 +16,6 @@ level: New Relic authors: - New Relic title: Micrometer -installPlans: - - third-party-micrometer dataSourceIds: - micrometer documentation: diff --git a/quickstarts/mlops/aporia/config.yml b/quickstarts/mlops/aporia/config.yml index 40eae7e56e..a041327c5b 100644 --- a/quickstarts/mlops/aporia/config.yml +++ b/quickstarts/mlops/aporia/config.yml @@ -30,8 +30,6 @@ keywords: - model-ops - explainability - newrelic partner -installPlans: - - aporia-mlops dataSourceIds: - aporia documentation: @@ -40,6 +38,6 @@ documentation: Documentation on the workings of the Aporia integration url: https://docs.newrelic.com/docs/alerts-applied-intelligence/applied-intelligence/mlops-integrations/aporia-mlops-integration/ icon: logo.svg -website: https://aporia.com/ + dashboards: - aporia diff --git a/quickstarts/mlops/bring-your-own/config.yml b/quickstarts/mlops/bring-your-own/config.yml index 97a4c0bdf5..b85bcd6cd5 100644 --- a/quickstarts/mlops/bring-your-own/config.yml +++ b/quickstarts/mlops/bring-your-own/config.yml @@ -14,8 +14,6 @@ keywords: - ai - bring-your-own - machine-learning -installPlans: - - third-party-mlops-bring-your-own dataSourceIds: - bring-your-own-data documentation: @@ -23,6 +21,6 @@ documentation: url: https://github.com/newrelic-experimental/ml-performance-monitoring description: Documentation on how to bring your own ML data icon: logo.svg -website: https://github.com/newrelic-experimental/ml-performance-monitoring + alertPolicies: - bring-your-own-data diff --git a/quickstarts/mlops/comet/config.yml b/quickstarts/mlops/comet/config.yml index b306f38148..69b42c9d66 100644 --- a/quickstarts/mlops/comet/config.yml +++ b/quickstarts/mlops/comet/config.yml @@ -21,8 +21,6 @@ keywords: - monitoring - data monitoring - newrelic partner -installPlans: - - comet-mlops dataSourceIds: - comet documentation: @@ -30,6 +28,6 @@ documentation: url: https://docs.newrelic.com/docs/alerts-applied-intelligence/applied-intelligence/mlops-integrations/comet-mlops-integration/ description: Documentation about Integrating Comet with New Relic icon: logo.png -website: https://www.comet.ml/site + dashboards: - comet diff --git a/quickstarts/mlops/dagshub/config.yml b/quickstarts/mlops/dagshub/config.yml index ddfae4b50b..c9493ae71c 100644 --- a/quickstarts/mlops/dagshub/config.yml +++ b/quickstarts/mlops/dagshub/config.yml @@ -15,8 +15,6 @@ keywords: - dagshub - machine-learning - newrelic partner -installPlans: - - dagshub-mlops dataSourceIds: - dagshub documentation: @@ -24,6 +22,6 @@ documentation: url: https://docs.newrelic.com/docs/integrations/mlops-integrations/dagshub-mlops-integration/ description: Documentation on the workings of the DagsHub integration icon: logo.svg -website: https://dagshub.com/ + dashboards: - dagshub diff --git a/quickstarts/mlops/google-jax/config.yml b/quickstarts/mlops/google-jax/config.yml index ddc0619ae8..b6b97632a9 100644 --- a/quickstarts/mlops/google-jax/config.yml +++ b/quickstarts/mlops/google-jax/config.yml @@ -12,24 +12,23 @@ description: | Active monitoring allows for quick detection and rectification of errors, ensuring the reliability and robustness of your Google JAX models. ## Comprehensive monitoring quickstart for Google JAX models With New Relic's Google JAX quickstart, you can actively oversee the performance of your Google JAX models, gaining insights to ensure they run effectively and efficiently, especially in real-world deep learning applications. - + ## What’s included in the Google JAX quickstart? New Relic Google JAX monitoring quickstart provides quality out-of-the-box reporting: - Obtain insights into how your Google JAX models are performing in real-time - Alerts on model performance: Set up proactive notifications for any unusual behavior or degradation in the performance of your models - + summary: | Use New Relic quickstart to monitor and analyze your Google JAX models. icon: logo.png -level: - - New Relic +level: New Relic authors: - New Relic title: Google JAX documentation: - name: Google JAX integration documentation description: | - Implement monitoring and instrumentation for your Google JAX models, and ensure that your observability data is integrated into New Relic for effective performance analysis and insights. + Implement monitoring and instrumentation for your Google JAX models, and ensure that your observability data is integrated into New Relic for effective performance analysis and insights. url: https://github.com/newrelic-experimental/ml-performance-monitoring dataSourceIds: - bring-your-own-data diff --git a/quickstarts/mlops/keras/config.yml b/quickstarts/mlops/keras/config.yml index e386009de2..7cb9ea31e2 100644 --- a/quickstarts/mlops/keras/config.yml +++ b/quickstarts/mlops/keras/config.yml @@ -9,7 +9,7 @@ description: | Over time, the distribution of input data might change, a phenomenon known as data drift. Monitoring allows for the early detection of such scenarios, ensuring the model remains robust and accurate. ### Data quality: As models make predictions on new, unseen data, ensuring the quality and consistency of input data is vital. Monitoring can help detect anomalies or inconsistencies in real-time data that could adversely affect model output. - + ## Comprehensive monitoring for Keras models during inference Properly monitoring your Keras models during the inference phase ensures optimal performance and sustained accuracy. Tracking key metrics will help maintain model health and swiftly detect potential issues. @@ -20,10 +20,9 @@ description: | - Proactive alerts: Receive immediate notifications about critical issues affecting your Keras model's performance or reliability during inference. - Resource Utilization: Monitor the computational resources (CPU, GPU, memory) being used during the inference process to optimize deployments and control costs. summary: | - Boost the performance of your Keras models by integrating with New Relic, providing comprehensive monitoring and optimization for the entire inference process. + Boost the performance of your Keras models by integrating with New Relic, providing comprehensive monitoring and optimization for the entire inference process. icon: logo.png -level: - - New Relic +level: New Relic authors: - New Relic - Jyothi Surampudi @@ -31,7 +30,7 @@ title: Keras documentation: - name: Keras integration documentation description: | - Implement monitoring and instrumentation for your Keras models, and ensure that your monitoring data is integrated into New Relic for effective performance analysis and insights. + Implement monitoring and instrumentation for your Keras models, and ensure that your monitoring data is integrated into New Relic for effective performance analysis and insights. url: https://github.com/newrelic-experimental/ml-performance-monitoring dataSourceIds: - bring-your-own-data @@ -44,4 +43,4 @@ keywords: - NR1_addData - ai alertPolicies: - - bring-your-own-data \ No newline at end of file + - bring-your-own-data diff --git a/quickstarts/mlops/langchain/config.yml b/quickstarts/mlops/langchain/config.yml index 1de31e2fe3..3aa3659d28 100644 --- a/quickstarts/mlops/langchain/config.yml +++ b/quickstarts/mlops/langchain/config.yml @@ -23,8 +23,7 @@ description: | summary: | Improve your LangChain app's performance with New Relic LangChain quickstart. icon: logo.png -level: - - New Relic +level: New Relic authors: - New Relic - Jyothi Surampudi @@ -32,7 +31,7 @@ title: LangChain documentation: - name: LangChain integration using Python description: | - Enhance the performance monitoring and instrumentation of your LangChain by using the Python agent. + Enhance the performance monitoring and instrumentation of your LangChain by using the Python agent. url: https://docs.newrelic.com/install/python - name: LangChain integration using Node.js description: | @@ -40,7 +39,7 @@ documentation: url: https://docs.newrelic.com/docs/apm/agents/nodejs-agent/installation-configuration/install-nodejs-agent dataSourceIds: - - nr-ai-monitoring + - llm-application keywords: - langchain - langchain ai @@ -55,9 +54,7 @@ keywords: - NR1_addData - NR1_sys - generative ai - - genai + - genai - orchestration alertPolicies: - langchain -dashboards: - - langchain diff --git a/quickstarts/mlops/lightgbm/config.yml b/quickstarts/mlops/lightgbm/config.yml index 33467fb02f..20b0726fd6 100644 --- a/quickstarts/mlops/lightgbm/config.yml +++ b/quickstarts/mlops/lightgbm/config.yml @@ -12,24 +12,23 @@ description: | Active monitoring allows for quick detection and rectification of errors, ensuring the reliability and robustness of your LightGBM models. ## Comprehensive monitoring quickstart for LightGBM models With New Relic's LightGBM quickstart, you can actively oversee the performance of your LightGBM models, gaining insights to ensure they run effectively and efficiently, especially in real-world deep learning applications. - + ## What’s included in the LightGBM quickstart? New Relic LightGBM monitoring quickstart provides quality out-of-the-box reporting: - Obtain insights into how your LightGBM models are performing in real-time - Alerts on model performance: Set up proactive notifications for any unusual behavior or degradation in the performance of your models - + summary: | Use New Relic quickstart to monitor and analyze your LightGBM models. icon: logo.png -level: - - New Relic +level: New Relic authors: - New Relic title: LightGBM documentation: - name: LightGBM integration documentation description: | - Implement monitoring and instrumentation for your LightGBM models, and ensure that your observability data is integrated into New Relic for effective performance analysis and insights. + Implement monitoring and instrumentation for your LightGBM models, and ensure that your observability data is integrated into New Relic for effective performance analysis and insights. url: https://github.com/newrelic-experimental/ml-performance-monitoring dataSourceIds: - bring-your-own-data @@ -46,4 +45,4 @@ keywords: - mlops - NR1_addData alertPolicies: - - bring-your-own-data \ No newline at end of file + - bring-your-own-data diff --git a/quickstarts/mlops/mona/config.yml b/quickstarts/mlops/mona/config.yml index a8308d9edd..fa3a8a1363 100644 --- a/quickstarts/mlops/mona/config.yml +++ b/quickstarts/mlops/mona/config.yml @@ -20,8 +20,6 @@ keywords: - integrity - data integrity - newrelic partner -installPlans: - - monalabs-mlops dataSourceIds: - mona documentation: @@ -30,6 +28,6 @@ documentation: Documentation on the workings of the Mona Labs integration url: https://docs.newrelic.com/docs/alerts-applied-intelligence/applied-intelligence/mlops-integrations/mona-mlops-integration/ icon: logo.png -website: https://monalabs.io/ + dashboards: - mona diff --git a/quickstarts/mlops/pytorch/config.yml b/quickstarts/mlops/pytorch/config.yml index a7b46a1a2f..e07f70c695 100644 --- a/quickstarts/mlops/pytorch/config.yml +++ b/quickstarts/mlops/pytorch/config.yml @@ -12,17 +12,16 @@ description: | Active monitoring allows for quick detection and rectification of errors, ensuring the reliability and robustness of your PyTorch models. ## Comprehensive monitoring quickstart for PyTorch models With New Relic's PyTorch quickstart, you can actively oversee the performance of your PyTorch models, gaining insights to ensure they run effectively and efficiently, especially in real-world deep learning applications. - + ## What’s included in the PyTorch quickstart? New Relic PyTorch monitoring quickstart provides quality out-of-the-box reporting: - Obtain insights into how your PyTorch models are performing in real-time - Alerts on model performance: Set up proactive notifications for any unusual behavior or degradation in the performance of your models - + summary: | Use New Relic quickstart to monitor and analyze your PyTorch models. icon: logo.png -level: - - New Relic +level: New Relic authors: - New Relic - Jyothi Surampudi @@ -30,7 +29,7 @@ title: PyTorch documentation: - name: PyTorch integration documentation description: | - Implement monitoring and instrumentation for your PyTorch models, and ensure that your observability data is integrated into New Relic for effective performance analysis and insights. + Implement monitoring and instrumentation for your PyTorch models, and ensure that your observability data is integrated into New Relic for effective performance analysis and insights. url: https://github.com/newrelic-experimental/ml-performance-monitoring dataSourceIds: - bring-your-own-data @@ -47,4 +46,4 @@ keywords: - mlops - NR1_addData alertPolicies: - - bring-your-own-data \ No newline at end of file + - bring-your-own-data diff --git a/quickstarts/mlops/scikit-learn/config.yml b/quickstarts/mlops/scikit-learn/config.yml index ae9c3efed9..ab1e560a4f 100644 --- a/quickstarts/mlops/scikit-learn/config.yml +++ b/quickstarts/mlops/scikit-learn/config.yml @@ -9,7 +9,7 @@ description: | Through vigilant monitoring, problems such as delayed inference times or unexpected outputs can be identified early on, allowing for swift interventions and minimal service disruption. ### Assured Reliability: Active monitoring guarantees that the scikit-learn models remain dependable, reinforcing user trust in the predictions and insights provided. - + ## Comprehensive monitoring quickstart for scikit-learn By placing emphasis on real-time monitoring during the inference phase, you not only ensure the efficacy of your training but also guarantee that your scikit-learn models are robust and reliable when serving users. @@ -19,10 +19,9 @@ description: | - Alerts on model performance: Set up proactive notifications for any unusual behavior or degradation in the performance of your models summary: | - Use the New Relic scikit-learn quickstart to improve the performance of your scikit-learn. + Use the New Relic scikit-learn quickstart to improve the performance of your scikit-learn. icon: logo.png -level: - - New Relic +level: New Relic authors: - New Relic - Jyothi Surampudi @@ -30,7 +29,7 @@ title: scikit-learn documentation: - name: scikit-learn integration documentation description: | - Implement monitoring and instrumentation for your scikit-learn, and ensure that your scikit-learn's data is integrated into New Relic for effective performance analysis and insights. + Implement monitoring and instrumentation for your scikit-learn, and ensure that your scikit-learn's data is integrated into New Relic for effective performance analysis and insights. url: https://github.com/newrelic-experimental/ml-performance-monitoring dataSourceIds: - bring-your-own-data @@ -46,4 +45,4 @@ keywords: - mlops - NR1_addData alertPolicies: - - bring-your-own-data \ No newline at end of file + - bring-your-own-data diff --git a/quickstarts/mlops/tensorflow/config.yml b/quickstarts/mlops/tensorflow/config.yml index 112b8986a8..ab9d9d24a7 100644 --- a/quickstarts/mlops/tensorflow/config.yml +++ b/quickstarts/mlops/tensorflow/config.yml @@ -12,24 +12,23 @@ description: | Active monitoring allows for quick detection and rectification of errors, ensuring the reliability and robustness of your TensorFlow models. ## Comprehensive monitoring quickstart for TensorFlow models With New Relic's TensorFlow quickstart, you can actively oversee the performance of your TensorFlow models, gaining insights to ensure they run effectively and efficiently, especially in real-world deep learning applications. - + ## What’s included in the TensorFlow quickstart? New Relic TensorFlow monitoring quickstart provides quality out-of-the-box reporting: - Obtain insights into how your TensorFlow models are performing in real-time - Alerts on model performance: Set up proactive notifications for any unusual behavior or degradation in the performance of your models - + summary: | Use New Relic quickstart to monitor and analyze your TensorFlow models. icon: logo.png -level: - - New Relic +level: New Relic authors: - New Relic title: TensorFlow documentation: - name: TensorFlow integration documentation description: | - Implement monitoring and instrumentation for your TensorFlow models, and ensure that your observability data is integrated into New Relic for effective performance analysis and insights. + Implement monitoring and instrumentation for your TensorFlow models, and ensure that your observability data is integrated into New Relic for effective performance analysis and insights. url: https://github.com/newrelic-experimental/ml-performance-monitoring dataSourceIds: - bring-your-own-data diff --git a/quickstarts/mlops/truera/config.yml b/quickstarts/mlops/truera/config.yml index a5cf3bb057..59d535aea2 100644 --- a/quickstarts/mlops/truera/config.yml +++ b/quickstarts/mlops/truera/config.yml @@ -21,8 +21,6 @@ keywords: - explanability - truera - newrelic partner -installPlans: - - truera-mlops dataSourceIds: - truera documentation: @@ -31,6 +29,6 @@ documentation: Documentation on the workings of the Truera integration url: https://docs.newrelic.com/docs/alerts-applied-intelligence/applied-intelligence/mlops-integrations/truera-integration/ icon: logo.svg -website: https://truera.com/ + dashboards: - truera diff --git a/quickstarts/mlops/xgboost/config.yml b/quickstarts/mlops/xgboost/config.yml index fca8e5dd00..d0b58d139b 100644 --- a/quickstarts/mlops/xgboost/config.yml +++ b/quickstarts/mlops/xgboost/config.yml @@ -12,24 +12,23 @@ description: | Active monitoring allows for quick detection and rectification of errors, ensuring the reliability and robustness of your XGBoost models. ## Comprehensive monitoring quickstart for XGBoost models With New Relic's XGBoost quickstart, you can actively oversee the performance of your XGBoost models, gaining insights to ensure they run effectively and efficiently, especially in real-world deep learning applications. - + ## What’s included in the XGBoost quickstart? New Relic XGBoost monitoring quickstart provides quality out-of-the-box reporting: - Obtain insights into how your XGBoost models are performing in real-time - Alerts on model performance: Set up proactive notifications for any unusual behavior or degradation in the performance of your models - + summary: | Use New Relic quickstart to monitor and analyze your XGBoost models. icon: logo.png -level: - - New Relic +level: New Relic authors: - New Relic title: XGBoost documentation: - name: XGBoost integration documentation description: | - Implement monitoring and instrumentation for your XGBoost models, and ensure that your observability data is integrated into New Relic for effective performance analysis and insights. + Implement monitoring and instrumentation for your XGBoost models, and ensure that your observability data is integrated into New Relic for effective performance analysis and insights. url: https://github.com/newrelic-experimental/ml-performance-monitoring dataSourceIds: - bring-your-own-data @@ -46,4 +45,4 @@ keywords: - mlops - NR1_addData alertPolicies: - - bring-your-own-data \ No newline at end of file + - bring-your-own-data diff --git a/quickstarts/mobile-crash-analytics/config.yml b/quickstarts/mobile-crash-analytics/config.yml index 8c06879500..31807db382 100644 --- a/quickstarts/mobile-crash-analytics/config.yml +++ b/quickstarts/mobile-crash-analytics/config.yml @@ -4,13 +4,13 @@ title: Mobile Crash Analytics description: | ## Crash Analytics Monitoring Quickstart - Get deeper insights into the mobile application crash frequency, affected versions, crash impact on users. + Get deeper insights into the mobile application crash frequency, affected versions, crash impact on users. - Receive details about the last interactions before crash. + Receive details about the last interactions before crash. - Help page on the dashboard will guide you on how to enable data filtering. + Help page on the dashboard will guide you on how to enable data filtering. summary: | - Real time mobile application crash & network analysis to ensure ongoing reliability and performance. + Real time mobile application crash & network analysis to ensure ongoing reliability and performance. level: Community icon: icon.png authors: @@ -41,8 +41,6 @@ documentation: description: How to set up alerts for your mobile app dashboards: - mobile-crash-analytics -installPlans: - - mobile-dashboard-install dataSourceIds: - mobile-getting-started alertPolicies: diff --git a/quickstarts/mobile-network-performance/config.yml b/quickstarts/mobile-network-performance/config.yml index 8fc2100276..934f41a1ac 100644 --- a/quickstarts/mobile-network-performance/config.yml +++ b/quickstarts/mobile-network-performance/config.yml @@ -6,9 +6,9 @@ title: Mobile Network Performance description: | ## Network performance Quickstart - Get deeper insights into the networking details from your mobile application perspective. + Get deeper insights into the networking details from your mobile application perspective. - Receive details about the HTTP errors, Network failure, HTTP Request data, type of network errors. + Receive details about the HTTP errors, Network failure, HTTP Request data, type of network errors. Help page on the dashboard will guide you on how to enable data filtering. @@ -45,7 +45,5 @@ documentation: dashboards: - mobile-network-performance -installPlans: - - mobile-network-performance-install dataSourceIds: - mobile-network-performance-install diff --git a/quickstarts/mobile-signals/config.yml b/quickstarts/mobile-signals/config.yml index 1d87ebc35c..7a07e67409 100644 --- a/quickstarts/mobile-signals/config.yml +++ b/quickstarts/mobile-signals/config.yml @@ -9,10 +9,10 @@ title: Mobile Signals # Long-form description of the quickstart (required) description: | **Mobile Signals Dashboard** - + ## 1. Launch Count: - This metric tracks the number of times an application is launched on mobile devices. It provides insights into user engagement and application popularity. Monitoring launch count helps developers and product managers understand user behavior, identify trends, and gauge the effectiveness of marketing campaigns or feature updates. - + ## 2. Crash Count: - Crash count measures the frequency of application crashes on mobile devices. It indicates the stability and reliability of the application. Monitoring crash count allows developers to identify and prioritize fixing critical bugs or issues that lead to crashes, thereby improving the overall user experience and preventing user frustration or app abandonment. @@ -24,7 +24,7 @@ description: | # Displayed in search results and recommendations. Summarizes a quickstarts functionality. summary: | - In summary, monitoring these mobile signal metrics—launch count, crash count, network failures count, and HTTP response time—provides valuable insights into user engagement, application stability, network connectivity, and backend performance. This enables developers and product teams to enhance app quality, address issues promptly, and deliver a seamless and satisfying user experience. + In summary, monitoring these mobile signal metrics—launch count, crash count, network failures count, and HTTP response time—provides valuable insights into user engagement, application stability, network connectivity, and backend performance. This enables developers and product teams to enhance app quality, address issues promptly, and deliver a seamless and satisfying user experience. # Support level: New Relic | Verified | Community (required) level: New Relic @@ -46,17 +46,15 @@ keywords: # Reference to dashboards to be included in this quickstart dashboards: - mobile-signals - + # Documentation references documentation: - name: apm url: https://docs.newrelic.com/docs/mobile-monitoring/new-relic-mobile/get-started/introduction-mobile-monitoring/ description: New Relic's mobile monitoring capabilities provide deeper visibility into the performance and crash troubleshooting of your Android, iOS, or hybrid mobile applications. You can use mobile monitoring to improve your app's user experience or examine HTTP and network performance to collaborate more effectively with your backend teams. - # Content / Design icon: logo.svg -website: https://www.newrelic.com dataSourceIds: - mobile-signals diff --git a/quickstarts/mobile/config.yml b/quickstarts/mobile/config.yml index 75fbf6af3e..f6ee606f31 100644 --- a/quickstarts/mobile/config.yml +++ b/quickstarts/mobile/config.yml @@ -32,8 +32,6 @@ documentation: icon: icon.png dashboards: - mobile -installPlans: - - mobile-dashboard-install dataSourceIds: - mobile-getting-started alertPolicies: diff --git a/quickstarts/mongodb-atlas-vector-search/config.yml b/quickstarts/mongodb-atlas-vector-search/config.yml index 90b65ebe3c..b9ffd5e16a 100644 --- a/quickstarts/mongodb-atlas-vector-search/config.yml +++ b/quickstarts/mongodb-atlas-vector-search/config.yml @@ -21,8 +21,7 @@ description: | summary: | Monitor your Vector search's performance and quality with New Relic MongoDB Atlas Vector Search quickstart icon: logo.svg -level: - - New Relic +level: New Relic authors: - New Relic - Ramana Reddy diff --git a/quickstarts/mongodb-prometheus/config.yml b/quickstarts/mongodb-prometheus/config.yml index 6ff4e253f1..4e04ea48b3 100644 --- a/quickstarts/mongodb-prometheus/config.yml +++ b/quickstarts/mongodb-prometheus/config.yml @@ -33,7 +33,7 @@ summary: | New Relic's MongoDB quickstart provides insights including total commands, requests per second, and database size. Install the quickstart to better understand the utilization of resources and monitor performance issues. level: New Relic icon: logo.jpeg -website: https://www.mongodb.com/ + authors: - New Relic documentation: diff --git a/quickstarts/mongodb/config.yml b/quickstarts/mongodb/config.yml index 0d490e2176..7f2d5c2934 100644 --- a/quickstarts/mongodb/config.yml +++ b/quickstarts/mongodb/config.yml @@ -4,11 +4,11 @@ title: MongoDB description: | ## MongoDB Monitoring - MongoDB enables the unlimited virtual scaling of applications. Utilities like mongostat and mongotop offer immediate results but fail to provide insights into trends in a highly graphical visual dashboard. MongoDB dashboards provide insights into key metrics like RAM usage, operations per second, page fault, disk size, lock %, and app and database performance at a glance. + MongoDB enables the unlimited virtual scaling of applications. Utilities like mongostat and mongotop offer immediate results but fail to provide insights into trends in a highly graphical visual dashboard. MongoDB dashboards provide insights into key metrics like RAM usage, operations per second, page fault, disk size, lock %, and app and database performance at a glance. - Avoid slow queries with proper indexes that impact performance. Instantly monitor your entire MongoDB database with our instant observability kit or the MongoDB free monitoring tool. + Avoid slow queries with proper indexes that impact performance. Instantly monitor your entire MongoDB database with our instant observability kit or the MongoDB free monitoring tool. - The critical differences between MongoDB free monitoring and monitoring MongoDB with New Relic’s instant observability quickstart are efficiency, usability, scope, and cost. MongoDB free monitoring focuses on standalone instances and replica sets. Data collected on disk utilization, memory, and operation execution times are uploaded periodically. + The critical differences between MongoDB free monitoring and monitoring MongoDB with New Relic’s instant observability quickstart are efficiency, usability, scope, and cost. MongoDB free monitoring focuses on standalone instances and replica sets. Data collected on disk utilization, memory, and operation execution times are uploaded periodically. ### What’s Included? @@ -16,9 +16,9 @@ description: | New Relic + MongoDB quickstart - New Relic’s instant observability quickstart provides multiple monitoring parameters like operations per second, transactions, and queries by default (with Nagios, you must configure each parameter). New Relic’s MongoDB quickstart contains multiple dashboards, including: - - Total Commands, failed commands per second, bytes in & out per second, available connections, and more. + - Total Commands, failed commands per second, bytes in & out per second, available connections, and more. - Monitor MongoDB with New Relic to quickly gain improved distribution and increased visibility into real-time user and app response times, throughput and breakdown by component and layer, and long-term data trends over time. + Monitor MongoDB with New Relic to quickly gain improved distribution and increased visibility into real-time user and app response times, throughput and breakdown by component and layer, and long-term data trends over time. ### Value of MongoDB Quickstarts @@ -32,7 +32,7 @@ summary: | New Relic's MongoDB quickstart provides multiple customized dashboards including total commands, requests per second, and database size. Install the quickstart to better understand utilization of resources and monitor performance issues. level: New Relic icon: logo.jpeg -website: https://www.mongodb.com/ + authors: - New Relic - Daniel Gola @@ -41,8 +41,6 @@ documentation: description: | Open source, document-oriented database where you store data in JSON-like files with dynamic schemas. url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/mongodb-monitoring-integration/ -installPlans: - - mongodb-integration dataSourceIds: - mongodb keywords: diff --git a/quickstarts/mosaicml/config.yml b/quickstarts/mosaicml/config.yml index 64aa69506d..8fbebcf638 100644 --- a/quickstarts/mosaicml/config.yml +++ b/quickstarts/mosaicml/config.yml @@ -20,8 +20,7 @@ description: | summary: | Improve the visibility of your MosaicML usage with New Relic MosaicML quickstart. icon: logo.svg -level: - - New Relic +level: New Relic authors: - New Relic title: MosaicML @@ -36,7 +35,6 @@ keywords: - mosaicml - mosaicml ai - langchain - - mlops - large language model - natural language processing - machine learning @@ -49,4 +47,4 @@ keywords: alertPolicies: - langchain dashboards: - - langchain \ No newline at end of file + - langchain diff --git a/quickstarts/mssql/config.yml b/quickstarts/mssql/config.yml index fe436e0a8f..ed9baa9d67 100644 --- a/quickstarts/mssql/config.yml +++ b/quickstarts/mssql/config.yml @@ -20,7 +20,5 @@ documentation: keywords: - infrastructure - database -installPlans: - - microsoft-sql-server-integration dataSourceIds: - microsoft-sql-server diff --git a/quickstarts/mysql/config.yml b/quickstarts/mysql/config.yml index 69b7650c99..491ecbdb43 100644 --- a/quickstarts/mysql/config.yml +++ b/quickstarts/mysql/config.yml @@ -4,9 +4,9 @@ title: MySQL description: |+ ## MySQL monitoring quickstart - Applications powered by relational database management systems demand the user to understand how the application uses it. Quickly identify and resolve the source server issues with [MySQL performance monitoring tools](https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/mysql-monitoring-integration/). + Applications powered by relational database management systems demand the user to understand how the application uses it. Quickly identify and resolve the source server issues with [MySQL performance monitoring tools](https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/mysql-monitoring-integration/). - Identify query optimization metrics and more within a single New Relic MySQL dashboard and ensure the highest application performance with this approach. + Identify query optimization metrics and more within a single New Relic MySQL dashboard and ensure the highest application performance with this approach. ### MySQL monitoring @@ -14,7 +14,7 @@ description: |+ ### New Relic + MySQL - your ideal tool for better monitoring - Install this quickstart to access pre-configured observability solutions. Unlike other performance monitoring tools, New Relic is a powerful proactive remote monitoring solution that provides a comprehensive view from a single MySQL dashboard. + Install this quickstart to access pre-configured observability solutions. Unlike other performance monitoring tools, New Relic is a powerful proactive remote monitoring solution that provides a comprehensive view from a single MySQL dashboard. ### What’s included? @@ -33,7 +33,7 @@ summary: |+ level: New Relic icon: logo.png -website: https://en.wikipedia.org/wiki/MySQL + authors: - New Relic - Zack Mutchler @@ -42,8 +42,6 @@ documentation: description: | Open source relational database with more than 20 years of community development and support. url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/mysql-monitoring-integration/ -installPlans: - - mysql-integration dataSourceIds: - mysql keywords: diff --git a/quickstarts/nagios/config.yml b/quickstarts/nagios/config.yml index 73d6ef579c..a19eb793de 100644 --- a/quickstarts/nagios/config.yml +++ b/quickstarts/nagios/config.yml @@ -7,7 +7,7 @@ summary: | Run your custom Nagios scripts and see the data in New Relic level: New Relic icon: logo.jpeg -website: https://www.nagios.org/ + authors: - New Relic - Jakub Kotkowiak @@ -16,8 +16,6 @@ documentation: description: | Nagios is a free and open-source computer-software application that monitors systems, networks and infrastructure. url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/nagios-monitoring-integration/ -installPlans: - - nagios-integration dataSourceIds: - nagios keywords: diff --git a/quickstarts/netlify/netlify-builds/config.yml b/quickstarts/netlify/netlify-builds/config.yml index e066d719a4..a247041686 100644 --- a/quickstarts/netlify/netlify-builds/config.yml +++ b/quickstarts/netlify/netlify-builds/config.yml @@ -36,8 +36,6 @@ keywords: - newrelic partner - NR1_addData - NR1_sys -installPlans: - - third-party-netlify dataSourceIds: - netlify-builds documentation: @@ -45,7 +43,7 @@ documentation: url: https://github.com/newrelic-experimental/netlify-plugin#installation description: Install the New Relic plugin for Netlify icon: logo.png -website: https://www.netlify.com + dashboards: - netlify-builds alertPolicies: diff --git a/quickstarts/netlify/netlify-logs/config.yml b/quickstarts/netlify/netlify-logs/config.yml index ebb8bf0a73..86e052a603 100644 --- a/quickstarts/netlify/netlify-logs/config.yml +++ b/quickstarts/netlify/netlify-logs/config.yml @@ -6,14 +6,14 @@ description: | ### Netlify Logs quickstart highlights - The Netlify Logs quickstart is the fastest way to explore and visualize data from traffic and function logs provided by [Netlify log drains](https://docs.netlify.com/monitor-sites/log-drains/). + The Netlify Logs quickstart is the fastest way to explore and visualize data from traffic and function logs provided by [Netlify log drains](https://docs.netlify.com/monitor-sites/log-drains/). With this quickstart, you can easily understand: - Changes in your sites' traffic over time - Percentage of successful requests, warnings, and errors - Requests by status - - Average duration of requests + - Average duration of requests - Changes in Functions utilization over time - Number of successful Function Invocations, warnings, and errors - Number of Function Invocations over time @@ -43,8 +43,6 @@ keywords: - newrelic partner - NR1_addData - NR1_sys -installPlans: - - third-party-netlify-logs dataSourceIds: - netlify-logs documentation: @@ -52,6 +50,6 @@ documentation: url: https://docs.netlify.com/monitor-sites/log-drains/ description: Configuring Netlify log drains for New Relic icon: logo.png -website: https://www.netlify.com + dashboards: - netlify-logs diff --git a/quickstarts/netscaler/config.yml b/quickstarts/netscaler/config.yml new file mode 100644 index 0000000000..7b151de3d7 --- /dev/null +++ b/quickstarts/netscaler/config.yml @@ -0,0 +1,41 @@ +id: c0fb3275-8ffe-4a37-9ee2-35eb1d95fd50 +slug: netscaler +title: NetScaler +description: | + ## What is NetScaler? + + NetScaler is a networking product and application delivery controller (ADC) that improves the delivery of applications to end users. + + ### About this integration + + With the NetScaler New Relic integration, you can gain visibility into your NetScaler analytics. + + ### Using the NetScaler dashboard + + This dashboard is created assuming the 'Bot' event. For other events (WAF etc.) you can change the event name in the query, or explore the events directly in [New Relic's events explorer](https://docs.newrelic.com/docs/query-your-data/explore-query-data/browse-data/introduction-data-explorer/) + +summary: | + Monitor NetScaler Console in New Relic +level: New Relic +icon: logo.png + +authors: + - New Relic + - Joseph Counts +documentation: + - name: NetScaler documentation + description: | + You can now integrate NetScaler Console with New Relic to view analytics for WAF and Bot violations in New Relic. + url: https://docs.netscaler.com/en-us/netscaler-application-delivery-management-software/current-release/analytics/security/new-relic-integration.html +dataSourceIds: + - netscaler +keywords: + - citrix + - web + - netscaler + - NR1_addData + - NR1_sys + - newrelic partner + +dashboards: + - netscaler \ No newline at end of file diff --git a/quickstarts/netscaler/logo.png b/quickstarts/netscaler/logo.png new file mode 100644 index 0000000000..69461df386 Binary files /dev/null and b/quickstarts/netscaler/logo.png differ diff --git a/quickstarts/network-monitoring/arista-switches/config.yml b/quickstarts/network-monitoring/arista-switches/config.yml index c549318f77..688b476ea8 100644 --- a/quickstarts/network-monitoring/arista-switches/config.yml +++ b/quickstarts/network-monitoring/arista-switches/config.yml @@ -26,8 +26,6 @@ documentation: url: https://docs.newrelic.com/docs/network-performance-monitoring/setup-performance-monitoring/snmp-performance-monitoring/ description: | Install Network Monitoring for SNMP data collection using a simple Docker container. -installPlans: - - network-snmp dataSourceIds: - network-routers-and-switches icon: logo.svg diff --git a/quickstarts/network-monitoring/bgpNeighbor/config.yml b/quickstarts/network-monitoring/bgpNeighbor/config.yml index 6a97891287..df0486f5ae 100644 --- a/quickstarts/network-monitoring/bgpNeighbor/config.yml +++ b/quickstarts/network-monitoring/bgpNeighbor/config.yml @@ -22,8 +22,6 @@ documentation: url: https://docs.newrelic.com/docs/network-performance-monitoring/setup-performance-monitoring/snmp-performance-monitoring/ description: | Install Network Monitoring for SNMP data collection using a simple Docker container. -installPlans: - - network-snmp dataSourceIds: - network-routers-and-switches icon: logo.svg diff --git a/quickstarts/network-monitoring/cisco-ip-sla-operations/config.yml b/quickstarts/network-monitoring/cisco-ip-sla-operations/config.yml index 4485180f0b..0a94800dec 100644 --- a/quickstarts/network-monitoring/cisco-ip-sla-operations/config.yml +++ b/quickstarts/network-monitoring/cisco-ip-sla-operations/config.yml @@ -26,8 +26,6 @@ documentation: url: https://docs.newrelic.com/docs/network-performance-monitoring/setup-performance-monitoring/snmp-performance-monitoring/ description: | Install Network Monitoring for SNMP data collection using a simple Docker container. -installPlans: - - network-snmp dataSourceIds: - network-routers-and-switches icon: logo.svg diff --git a/quickstarts/network-monitoring/ciscoHardware/config.yml b/quickstarts/network-monitoring/ciscoHardware/config.yml index 4d1e1c485f..da20fab4b7 100644 --- a/quickstarts/network-monitoring/ciscoHardware/config.yml +++ b/quickstarts/network-monitoring/ciscoHardware/config.yml @@ -21,8 +21,6 @@ documentation: url: https://docs.newrelic.com/docs/network-performance-monitoring/get-started/npm-introduction/ description: | Learn about deploying ktranslate to monitor SNMP based devices. -installPlans: - - network-cisco-hardware dataSourceIds: - kentik icon: logo.svg diff --git a/quickstarts/network-monitoring/network-routers-and-switches/config.yml b/quickstarts/network-monitoring/network-routers-and-switches/config.yml index ec79eb6a2d..7d1b8342c2 100644 --- a/quickstarts/network-monitoring/network-routers-and-switches/config.yml +++ b/quickstarts/network-monitoring/network-routers-and-switches/config.yml @@ -28,8 +28,6 @@ documentation: url: https://docs.newrelic.com/docs/network-performance-monitoring/setup-performance-monitoring/snmp-performance-monitoring/ description: | Install Network Monitoring for SNMP data collection using a simple Docker container. -installPlans: - - network-snmp dataSourceIds: - network-routers-and-switches icon: logo.svg diff --git a/quickstarts/network-monitoring/network-syslog/config.yml b/quickstarts/network-monitoring/network-syslog/config.yml index f302f519f4..d68584bcf6 100644 --- a/quickstarts/network-monitoring/network-syslog/config.yml +++ b/quickstarts/network-monitoring/network-syslog/config.yml @@ -26,8 +26,6 @@ documentation: url: https://docs.newrelic.com/docs/network-performance-monitoring/setup-performance-monitoring/network-syslog-monitoring/ description: | Install Network Monitoring for syslog collection using a simple Docker container. -installPlans: - - network-syslog dataSourceIds: - network-syslog icon: logo.svg diff --git a/quickstarts/nextcloud/config.yml b/quickstarts/nextcloud/config.yml index 4d1047ac8c..b7c06d4e42 100644 --- a/quickstarts/nextcloud/config.yml +++ b/quickstarts/nextcloud/config.yml @@ -3,20 +3,20 @@ slug: nextcloud description: | ## Comprehensive monitoring for your Nextcloud server Empower yourself with New Relic's cutting-edge Nextcloud monitoring system and gain complete control over the health of your platform. Stay ahead of the curve by monitoring your Nextcloud in real-time, connecting the dots between transactions across your application environment, and swiftly troubleshoot any issues that arise with ease. - + ## Why monitor Nextcloud? - + ### Solve login problems - Users may experience issues with logging into their Nextcloud accounts, such as incorrect login credentials or connection errors. + Users may experience issues with logging into their Nextcloud accounts, such as incorrect login credentials or connection errors. ### Quickly identify performance issues - Nextcloud can become slow or unresponsive, especially if the server is running low on resources or if the network connection is slow. + Nextcloud can become slow or unresponsive, especially if the server is running low on resources or if the network connection is slow. ### Identify storage limitations - Nextcloud can experience storage limitations if the server's disk space is running low, or if there are issues with the underlying storage infrastructure. + Nextcloud can experience storage limitations if the server's disk space is running low, or if there are issues with the underlying storage infrastructure. ### Catch file syncing issues - Users may experience issues with file syncing, such as conflict errors or delayed updates, which can result in data loss or corruption. + Users may experience issues with file syncing, such as conflict errors or delayed updates, which can result in data loss or corruption. ### What’s included? @@ -24,7 +24,7 @@ description: | - Be alerted on things like excessive heap memory usage and scrape errors. - Use dashboards to monitor crucial performance metrics, such as uptime, free space, total active users, and more. - Enable your Nextcloud admins to keep track of the status and operation of your server installations. - + summary: | Achieve greater control over your productivity with our self-hosted platform. Stay on top of the performance of your server and ensure the optimal functioning of your system by monitoring it through our Infrastructure agent and utilizing the powerful integration with Prometheus open metrics. @@ -33,8 +33,6 @@ icon: logo.png authors: - New Relic title: Nextcloud -installPlans: - - nextcloud dataSourceIds: - nextcloud dashboards: diff --git a/quickstarts/nginx/config.yml b/quickstarts/nginx/config.yml index 5dbdb767a4..33f7833120 100644 --- a/quickstarts/nginx/config.yml +++ b/quickstarts/nginx/config.yml @@ -23,7 +23,7 @@ summary: | NGINX New Relic integration makes your NGINX servers healthy and prevents poor user experience in your web applications. Download the New Relic NGINX quickstart now to monitor NGINX’s critical metrics and improve NGINX performance. level: New Relic icon: logo.jpeg -website: https://nginx.org/ + authors: - New Relic - Daniel Gola @@ -32,8 +32,6 @@ documentation: description: | Web server which can also be used as a reverse proxy, load balancer, mail proxy, and HTTP cache. url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/nginx-monitoring-integration/ -installPlans: - - nginx-integration dataSourceIds: - nginx keywords: diff --git a/quickstarts/node-exporter/config.yml b/quickstarts/node-exporter/config.yml index 18a020e302..a874f1fd7e 100644 --- a/quickstarts/node-exporter/config.yml +++ b/quickstarts/node-exporter/config.yml @@ -28,7 +28,6 @@ authors: - New Relic keywords: - prometheus - - node - exporter - remote - write @@ -39,8 +38,6 @@ keywords: - network - NR1_addData - NR1_sys -installPlans: - - setup-prometheus dataSourceIds: - prometheus documentation: diff --git a/quickstarts/node-js/express/config.yml b/quickstarts/node-js/express/config.yml index 0d028e2fd3..b01bcc7113 100644 --- a/quickstarts/node-js/express/config.yml +++ b/quickstarts/node-js/express/config.yml @@ -31,8 +31,6 @@ keywords: - apm - node.js - language agent -installPlans: - - node-agent dataSourceIds: - node-js dashboards: diff --git a/quickstarts/node-js/hapi/config.yml b/quickstarts/node-js/hapi/config.yml index 83eeb5a5ba..a4bcd87552 100644 --- a/quickstarts/node-js/hapi/config.yml +++ b/quickstarts/node-js/hapi/config.yml @@ -33,8 +33,6 @@ keywords: - apm - node.js - language agent -installPlans: - - node-agent dataSourceIds: - node-js dashboards: diff --git a/quickstarts/node-js/koa/config.yml b/quickstarts/node-js/koa/config.yml index 15dcbce98e..a00de89cd7 100644 --- a/quickstarts/node-js/koa/config.yml +++ b/quickstarts/node-js/koa/config.yml @@ -31,8 +31,6 @@ keywords: - apm - node.js - language agent -installPlans: - - node-agent dataSourceIds: - node-js dashboards: diff --git a/quickstarts/node-js/node-js/config.yml b/quickstarts/node-js/node-js/config.yml index b41f2d60c7..4766f0fb16 100644 --- a/quickstarts/node-js/node-js/config.yml +++ b/quickstarts/node-js/node-js/config.yml @@ -3,17 +3,17 @@ slug: node-js description: | ## The comprehensive Node.js monitoring system - Node.js is an open-source platform built on Chrome's JavaScript runtime used to develop fast and scalable applications quickly with an event-driven, non-blocking input/output architecture. + Node.js is an open-source platform built on Chrome's JavaScript runtime used to develop fast and scalable applications quickly with an event-driven, non-blocking input/output architecture. However, these attributes can be inconvenient because verifying the correctness of an application with asynchronous nested callbacks is complex. So, it’s important to watch executing Node.js systems closely. Monitoring your Node.js applications ensures optimal performance, allows the maximization of system availability, and ensures that a system’s health is well maintained. - ### What should you look for in a Node.js dashboard? + ### What should you look for in a Node.js dashboard? - A [reliable Node.js network monitor](https://docs.newrelic.com/docs/agents/nodejs-agent/getting-started/introduction-new-relic-nodejs/) must provide enough information to identify the problem sources. Some crucial information includes process ID, log management, request rate, application availability, resource usage, uptime, downtime, system health, error rates and handling, number of connections, load average, and latency. + A [reliable Node.js network monitor](https://docs.newrelic.com/docs/agents/nodejs-agent/getting-started/introduction-new-relic-nodejs/) must provide enough information to identify the problem sources. Some crucial information includes process ID, log management, request rate, application availability, resource usage, uptime, downtime, system health, error rates and handling, number of connections, load average, and latency. ### What’s included in the Node.js quickstart? - Install this quickstart to install preconfigured observability solutions: + Install this quickstart to install preconfigured observability solutions: - Multiple high-value alerts, including Apdex score and CPU utilization - Informative dashboards (Slowest transactions, throughput comparisons, and more) @@ -41,8 +41,6 @@ keywords: - node - language agent - most popular -installPlans: - - node-agent dataSourceIds: - node-js dashboards: diff --git a/quickstarts/node-js/restify/config.yml b/quickstarts/node-js/restify/config.yml index c27abccddd..0a2d5f84be 100644 --- a/quickstarts/node-js/restify/config.yml +++ b/quickstarts/node-js/restify/config.yml @@ -31,8 +31,6 @@ keywords: - apm - node.js - language agent -installPlans: - - node-agent dataSourceIds: - node-js dashboards: diff --git a/quickstarts/node-js/typescript/config.yml b/quickstarts/node-js/typescript/config.yml index 3997e11405..c6460c6ae2 100644 --- a/quickstarts/node-js/typescript/config.yml +++ b/quickstarts/node-js/typescript/config.yml @@ -37,8 +37,6 @@ keywords: - node.js - typescript - language agent -installPlans: - - node-agent dataSourceIds: - node-js dashboards: diff --git a/quickstarts/notification-channels/servicenow-notifications/config.yml b/quickstarts/notification-channels/servicenow-notifications/config.yml index d73a1923cf..c2dcddf34f 100644 --- a/quickstarts/notification-channels/servicenow-notifications/config.yml +++ b/quickstarts/notification-channels/servicenow-notifications/config.yml @@ -35,7 +35,6 @@ keywords: - Destinations - NR1_addData - NR1_sys -website: https://www.servicenow.com/ dataSourceIds: - servicenow-notifications diff --git a/quickstarts/notification-channels/slack-notifications/config.yml b/quickstarts/notification-channels/slack-notifications/config.yml index 4a222f6e72..6432d0d863 100644 --- a/quickstarts/notification-channels/slack-notifications/config.yml +++ b/quickstarts/notification-channels/slack-notifications/config.yml @@ -33,6 +33,6 @@ keywords: - AIOps - Incident Intelligence - Destinations -website: https://slack.com/ + dataSourceIds: - slack-notifications diff --git a/quickstarts/nr-reports/config.yml b/quickstarts/nr-reports/config.yml index 89fd109011..84d714e04d 100644 --- a/quickstarts/nr-reports/config.yml +++ b/quickstarts/nr-reports/config.yml @@ -41,6 +41,9 @@ keywords: - NR1_addData - NR1_sys +dataSourceIds: + - nr-reports + # Reference to alert policies to be included in this quickstart alertPolicies: [] @@ -58,7 +61,6 @@ documentation: - name: New Relic Reports Repository url: https://github.com/newrelic/nr-reports description: The New Relic Reports repository. - + # Content / Design icon: logo.svg -website: https://github.com/newrelic/nr-reports diff --git a/quickstarts/nrm4sap/config.yml b/quickstarts/nrm4sap/config.yml index d2f9db96d1..d5896f3040 100644 --- a/quickstarts/nrm4sap/config.yml +++ b/quickstarts/nrm4sap/config.yml @@ -1,9 +1,9 @@ id: 89f6d534-1164-4007-8f7a-ead2889b386d # Sets the URL name of the quickstart on public I/O (required) -slug: nrm4sql +slug: nrm4sql # Displayed in the UI (required) -title: New Relic Monitoring for SAP® Solutions +title: New Relic Monitoring for SAP® Solutions # Long-form description of the quickstart (required) description: | @@ -23,17 +23,17 @@ summary: | A SAP-Certified integration that brings together all your SAP and non-SAP telemetry–events, metrics, logs and traces into a unified data platform, for a single view of infrastructure, application and business processes. # Support level: New Relic | Verified | Community (required) -level: New Relic +level: New Relic # Authors of the quickstart (required) authors: - - New Relic + - New Relic # Keywords for filtering / searching criteria in the UI keywords: - - sap + - sap - hana - - integration + - integration - idoc - rfc - NR1_addData @@ -42,17 +42,17 @@ keywords: # Reference to install plans located under /install directory # Allows us to construct reusable "install plans" and just use their ID in the quickstart config alertPolicies: - - nrm4sap + - nrm4sap dashboards: - - nrm4sap + - nrm4sap + - nrm4sap-cockpit - nrm4sap-datacollect - nrm4sap-datasize # Documentation references documentation: - - name: New Relic Monitoring for SAP® Solutions - description: New Relic Monitoring for SAP® Solutions feature overview + - name: New Relic Monitoring for SAP® Solutions + description: New Relic Monitoring for SAP® Solutions feature overview url: https://docs.newrelic.com/docs/data-apis/custom-data/sap-integration/ # Content / Design icon: logo.svg -website: https://www.newrelic.com diff --git a/quickstarts/nrql-query-performance/config.yml b/quickstarts/nrql-query-performance/config.yml new file mode 100644 index 0000000000..941f90f064 --- /dev/null +++ b/quickstarts/nrql-query-performance/config.yml @@ -0,0 +1,27 @@ +id: 47436e4a-f74c-4d87-8756-afc203a0f0d9 +slug: nrql-query-performance +title: NRQL Query Performance +description: | + This quickstart provides resources to better understand your NRQL query performance. +summary: | + Find out what kinds of telemetry and query patterns are responsible for slower queries. The dashbaords in this quickstart will help you pinpoint hot spots and opitimze your queries. +level: New Relic +authors: + - Jim Hagan + - Marcel Schlapfer +keywords: + - NRQL + - Slow Queries + - Query Performance + - Query Optimization + - Query Timeouts +dataSourceIds: + - solutions-hub-dashboards +documentation: + - name: NRQL Query Performance + url: https://docs.newrelic.com/docs/nrql/nrql-syntax-clauses-functions/ + description: Find slow query patterns and optimize your queries. +icon: logo.svg + +dashboards: + - nrql-query-performance diff --git a/quickstarts/nrql-query-performance/logo.svg b/quickstarts/nrql-query-performance/logo.svg new file mode 100644 index 0000000000..ea60419c6b --- /dev/null +++ b/quickstarts/nrql-query-performance/logo.svg @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/quickstarts/observability-as-code/ansible/config.yml b/quickstarts/observability-as-code/ansible/config.yml index e8b4e34c0a..003be0da6c 100644 --- a/quickstarts/observability-as-code/ansible/config.yml +++ b/quickstarts/observability-as-code/ansible/config.yml @@ -24,8 +24,6 @@ keywords: - devops - sre - gitops -installPlans: - - third-party-ansible dataSourceIds: - ansible-install documentation: @@ -42,4 +40,3 @@ documentation: description: Github repository for the New Relic Role. url: https://github.com/newrelic/ansible-install icon: logo.svg -website: https://galaxy.ansible.com/newrelic/newrelic_install diff --git a/quickstarts/observability-as-code/chef/config.yml b/quickstarts/observability-as-code/chef/config.yml index 2cd5057689..8dc8fcba74 100644 --- a/quickstarts/observability-as-code/chef/config.yml +++ b/quickstarts/observability-as-code/chef/config.yml @@ -22,8 +22,6 @@ keywords: - devops - sre - gitops -installPlans: - - third-party-chef dataSourceIds: - chef-install documentation: @@ -37,4 +35,3 @@ documentation: description: Github repository for the New Relic Cookbook. url: https://github.com/newrelic/chef-install icon: logo.svg -website: https://supermarket.chef.io/cookbooks/newrelic-install diff --git a/quickstarts/observability-as-code/cli/config.yml b/quickstarts/observability-as-code/cli/config.yml index 770311e14a..c18912c4d2 100644 --- a/quickstarts/observability-as-code/cli/config.yml +++ b/quickstarts/observability-as-code/cli/config.yml @@ -15,8 +15,6 @@ documentation: description: | This guide walks you through the essentials of New Relic CLI, from install and configuration to basic usage. url: https://developer.newrelic.com/automate-workflows/get-started-new-relic-cli/ -installPlans: - - third-party-newrelic-cli dataSourceIds: - newrelic-cli keywords: diff --git a/quickstarts/observability-as-code/pulumi/config.yml b/quickstarts/observability-as-code/pulumi/config.yml index 0e3da6b5b1..2e31238a0d 100644 --- a/quickstarts/observability-as-code/pulumi/config.yml +++ b/quickstarts/observability-as-code/pulumi/config.yml @@ -23,8 +23,6 @@ keywords: - gitops - NR1_addData - NR1_sys -installPlans: - - third-party-pulumi dataSourceIds: - pulumi documentation: @@ -39,4 +37,3 @@ documentation: description: Github repository for the New Relic Package. url: https://github.com/pulumi/pulumi-newrelic icon: logo.svg -website: https://www.pulumi.com/registry/packages/newrelic/ diff --git a/quickstarts/observability-as-code/puppet/config.yml b/quickstarts/observability-as-code/puppet/config.yml index 341f93472a..93c2f34ca1 100644 --- a/quickstarts/observability-as-code/puppet/config.yml +++ b/quickstarts/observability-as-code/puppet/config.yml @@ -20,8 +20,6 @@ keywords: - devops - sre - gitops -installPlans: - - third-party-puppet dataSourceIds: - puppet-install documentation: @@ -37,4 +35,3 @@ documentation: description: Github repository for the New Relic Provider. url: https://github.com/newrelic/puppet-install icon: logo.svg -website: https://forge.puppet.com/modules/newrelic/newrelic_installer diff --git a/quickstarts/observability-as-code/terraform/config.yml b/quickstarts/observability-as-code/terraform/config.yml index ddfd35add7..93d93b5275 100644 --- a/quickstarts/observability-as-code/terraform/config.yml +++ b/quickstarts/observability-as-code/terraform/config.yml @@ -21,8 +21,6 @@ keywords: - devops - sre - gitops -installPlans: - - third-party-terraform dataSourceIds: - terraform documentation: @@ -37,4 +35,3 @@ documentation: description: Github repository for the New Relic Provider. url: https://github.com/newrelic/terraform-provider-newrelic icon: logo.png -website: https://registry.terraform.io/providers/newrelic/newrelic/latest/docs diff --git a/quickstarts/ocsf/config.yml b/quickstarts/ocsf/config.yml new file mode 100644 index 0000000000..682cb870dc --- /dev/null +++ b/quickstarts/ocsf/config.yml @@ -0,0 +1,41 @@ +id: 53e4e324-b77c-4b90-8c69-5b9cac4125c6 + + +slug: ocsf +description: | + ## Why monitor OCSF? + By leveraging New Relic, monitoring OCSF means keeping a close eye on the health, efficiency, and effectiveness of the standardized data exchange within your cybersecurity ecosystem. + + ## Comprehensive monitoring quickstart for OCSF + Integrating the OCSF with New Relic allows you to establish a robust monitoring infrastructure adept at capturing, visualizing, and alerting on critical security metrics. You can quickly identify and address issues, which leads to swift problem resolution. Such proactive monitoring is key to boosting the overall reliability and efficiency of your cybersecurity defenses. + + ## What’s included in this quickstart? + New Relic OCSF monitoring quickstart provides quality out-of-the-box reporting: + - Dashboards (security findings, data security findings etc) + - Alerts for OCSF (security high risk findings, security findings over time etc) + + +summary: | + Real-time Monitoring and Ingestion of Vulnerability Scanner Data into New Relic using OCSF. +icon: logo.png +level: New Relic +authors: + - New Relic +title: Open Cybersecurity Schema Framework (OCSF) +documentation: + - name: OCSF integration documentation + description: | + Integration documentation for vulnerability ingestion through Security. + url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/ocsf-integration/ +keywords: + - ocsf + - security + - Vulnerability + - NR1_addData + - NR1_sys +dataSourceIds: + - ocsf +dashboards: + - ocsf +alertPolicies: + - ocsf \ No newline at end of file diff --git a/quickstarts/ocsf/logo.png b/quickstarts/ocsf/logo.png new file mode 100644 index 0000000000..f3d0dff317 Binary files /dev/null and b/quickstarts/ocsf/logo.png differ diff --git a/quickstarts/okhttp/config.yml b/quickstarts/okhttp/config.yml index 99cc9cc33f..eaced1b3c5 100644 --- a/quickstarts/okhttp/config.yml +++ b/quickstarts/okhttp/config.yml @@ -11,8 +11,6 @@ level: New Relic authors: - New Relic title: OKHTTP -installPlans: - - third-party-okhttp dataSourceIds: - okhttp documentation: diff --git a/quickstarts/ollama/config.yml b/quickstarts/ollama/config.yml index 1c52e9107d..74ae3f4ab1 100644 --- a/quickstarts/ollama/config.yml +++ b/quickstarts/ollama/config.yml @@ -20,18 +20,17 @@ description: | summary: | Improve the visibility of your Ollama usage with New Relic Ollama quickstart. icon: logo.png -level: - - New Relic +level: New Relic authors: - New Relic -title: Ollama +title: Ollama documentation: - name: Ollama integration documentation description: | Implement monitoring and instrumentation for your Ollama app to ensure that your observability data is integrated into New Relic for effective performance analysis and insights. url: https://github.com/newrelic/nr-openai-observability dataSourceIds: - - langchain + - llm-application keywords: - ollama - large language model @@ -50,5 +49,3 @@ keywords: - NR1_sys alertPolicies: - langchain -dashboards: - - langchain diff --git a/quickstarts/oma-aqm/config.yml b/quickstarts/oma-aqm/config.yml index 2e7ac8678f..6a250707c2 100644 --- a/quickstarts/oma-aqm/config.yml +++ b/quickstarts/oma-aqm/config.yml @@ -22,11 +22,9 @@ documentation: url: https://docs.newrelic.com/docs/new-relic-solutions/observability-maturity/uptime-performance-reliability/aqm-implementation-guide/ description: | The implementation guide will show you how to implement the AQM process, including the webhook required to generate the data that feeds this dashboard. -installPlans: - - third-party-alert-quality-management dataSourceIds: - alert-quality-management icon: logo.png -website: https://www.newrelic.com + dashboards: - oma-aqm diff --git a/quickstarts/oma-bofu/config.yml b/quickstarts/oma-bofu/config.yml index 711f4bb0f9..943eb73722 100644 --- a/quickstarts/oma-bofu/config.yml +++ b/quickstarts/oma-bofu/config.yml @@ -2,11 +2,11 @@ id: 8d339aa7-69e3-4efa-abc2-9eba600db91c slug: customer-experience-bottom-funnel-analysis title: Customer Experience Bottom of the funnel analysis description: | - Bottom of the funnel analysis uses cart abandonment reduction techniques and applies them to any user journey where conversion (completing the user journey) matters. + Bottom of the funnel analysis uses cart abandonment reduction techniques and applies them to any user journey where conversion (completing the user journey) matters. For more information view the [implementation guide](https://docs.newrelic.com/docs/new-relic-solutions/observability-maturity/customer-experience/bottom-funnel-analysis-customer-journey-guide) summary: | - Use cart abandonment reduction techniques to improve completion rates of any user journey + Use cart abandonment reduction techniques to improve completion rates of any user journey level: New Relic authors: - Kim Hickey @@ -30,11 +30,9 @@ documentation: description: | Explains what bottom of the funnel analysis is and how to apply it url: https://docs.newrelic.com/docs/new-relic-solutions/observability-maturity/customer-experience/bottom-funnel-analysis-customer-journey-guide -installPlans: - - third-party-customer-experience-bottom-funnel-analysis dataSourceIds: - customer-experience-bottom-funnel-analysis icon: logo.svg -website: https://www.newrelic.com + dashboards: - om-bofu-analysis diff --git a/quickstarts/oma-data-gov/config.yml b/quickstarts/oma-data-gov/config.yml index 6114b2b229..cacffccab3 100644 --- a/quickstarts/oma-data-gov/config.yml +++ b/quickstarts/oma-data-gov/config.yml @@ -14,8 +14,6 @@ keywords: - Data Governance - Data Consumption - Manage Data Ingest -installPlans: - - solutions-hub-dashboards dataSourceIds: - solutions-hub-dashboards documentation: @@ -23,7 +21,7 @@ documentation: url: https://docs.newrelic.com/docs/new-relic-solutions/observability-maturity/introduction description: Observability Maturity Solutions Guide icon: logo.svg -website: https://www.newrelic.com + dashboards: - data-ingest-baseline - data-ingest-entity-breakdown diff --git a/quickstarts/oma-qf/config.yml b/quickstarts/oma-qf/config.yml index f1a2a2fde4..46ad545eab 100644 --- a/quickstarts/oma-qf/config.yml +++ b/quickstarts/oma-qf/config.yml @@ -2,7 +2,7 @@ id: 7a5739bf-30ee-4be9-9705-14871cafd7f4 slug: customer-experience-quality-foundation title: Customer Experience Quality Foundation description: | - Quality foundation helps you see what your user's perception of web performance is. It does this in two ways: (1) focuses on user experience metrics for availability, page load, and in-page actions (2) segments data by device type, region, and user journey + Quality foundation helps you see what your user's perception of web performance is. It does this in two ways: (1) focuses on user experience metrics for availability, page load, and in-page actions (2) segments data by device type, region, and user journey For more information view the [implementation guide](https://docs.newrelic.com/docs/new-relic-solutions/observability-maturity/customer-experience/quality-foundation-implementation-guide) summary: | @@ -26,12 +26,10 @@ documentation: description: | Explains what quality foundation is and how to apply it url: https://docs.newrelic.com/docs/new-relic-solutions/observability-maturity/customer-experience/quality-foundation-implementation-guide -installPlans: - - third-party-customer-experience-quality-foundation dataSourceIds: - customer-experience-quality-foundation icon: logo.svg -website: https://www.newrelic.com + dashboards: - om-quality-foundation - om-qf-retail-user-journey diff --git a/quickstarts/onepane/config.yml b/quickstarts/onepane/config.yml index 86a7e17c1d..baf084dd51 100644 --- a/quickstarts/onepane/config.yml +++ b/quickstarts/onepane/config.yml @@ -5,7 +5,7 @@ slug: onepane title: Onepane description: | - + ## Onepane Onepane acts as a central hub, bringing together information from various systems like Cloud, DevOps and Monitoring tools. @@ -24,7 +24,7 @@ description: | - You can access additional document on [Onepane documentation](https://www.onepane.ai/docs/en/articles/8999270-adding-onepane-change-tracking-to-your-new-relic-deployment). - To know more about Onepane hosted plans or live demo book a meeting on [Onepane website](https://www.onepane.ai/about). -summary: Onepane is an GenAI tool that helps you faster incident resolution with automated Root Cause Analysis. +summary: Onepane is an GenAI tool that helps you faster incident resolution with automated Root Cause Analysis. level: Verified @@ -33,7 +33,6 @@ authors: dashboards: - onepane -website: https://www.onepane.ai keywords: - devops - newrelic partner diff --git a/quickstarts/opencensus/config.yml b/quickstarts/opencensus/config.yml index 4c2faffc25..6a5753a202 100644 --- a/quickstarts/opencensus/config.yml +++ b/quickstarts/opencensus/config.yml @@ -17,8 +17,6 @@ level: New Relic authors: - New Relic title: OpenCensus -installPlans: - - third-party-opencensus dataSourceIds: - opencensus documentation: diff --git a/quickstarts/openllm/config.yml b/quickstarts/openllm/config.yml index 4f14af1343..b4d6d08f96 100644 --- a/quickstarts/openllm/config.yml +++ b/quickstarts/openllm/config.yml @@ -20,11 +20,10 @@ description: | summary: | Improve the visibility of your OpenLLM usage with New Relic OpenLLM quickstart. icon: logo.jpeg -level: - - New Relic +level: New Relic authors: - New Relic -title: OpenLLM +title: OpenLLM documentation: - name: OpenLLM integration documentation description: | diff --git a/quickstarts/opentelemetry/config.yml b/quickstarts/opentelemetry/config.yml index 5580d82181..47978b04fc 100644 --- a/quickstarts/opentelemetry/config.yml +++ b/quickstarts/opentelemetry/config.yml @@ -27,8 +27,6 @@ level: New Relic authors: - New Relic title: OpenTelemetry -installPlans: - - third-party-opentelemetry dataSourceIds: - opentelemetry documentation: diff --git a/quickstarts/oracle/inet-oracle-driver/config.yml b/quickstarts/oracle/inet-oracle-driver/config.yml index 04444beb12..5e138446d2 100644 --- a/quickstarts/oracle/inet-oracle-driver/config.yml +++ b/quickstarts/oracle/inet-oracle-driver/config.yml @@ -7,8 +7,6 @@ level: New Relic authors: - New Relic title: Inet Oracle Driver (oranxo) -installPlans: - - third-party-inet-oracle-driver dataSourceIds: - java documentation: diff --git a/quickstarts/oracle/oracle-database/config.yml b/quickstarts/oracle/oracle-database/config.yml index 42e670e567..71b4dce3fb 100644 --- a/quickstarts/oracle/oracle-database/config.yml +++ b/quickstarts/oracle/oracle-database/config.yml @@ -12,8 +12,6 @@ level: New Relic authors: - New Relic title: Oracle Database -installPlans: - - third-party-oracledb dataSourceIds: - oracle-database documentation: diff --git a/quickstarts/pagerduty/pagerduty/config.yml b/quickstarts/pagerduty/pagerduty/config.yml index e65c329a2a..ea4c107f0e 100644 --- a/quickstarts/pagerduty/pagerduty/config.yml +++ b/quickstarts/pagerduty/pagerduty/config.yml @@ -19,8 +19,6 @@ level: New Relic authors: - New Relic title: Pagerduty -installPlans: - - third-party-pagerduty dataSourceIds: - pagerduty documentation: diff --git a/quickstarts/palm-2/config.yml b/quickstarts/palm-2/config.yml index 174ef5b2f0..4e1772590a 100644 --- a/quickstarts/palm-2/config.yml +++ b/quickstarts/palm-2/config.yml @@ -20,8 +20,7 @@ description: | summary: | Improve the visibility of your PaLM 2 usage with New Relic PaLM 2 quickstart. icon: logo.svg -level: - - New Relic +level: New Relic authors: - New Relic title: PaLM 2 diff --git a/quickstarts/perfmon/config.yml b/quickstarts/perfmon/config.yml index 1f6cbef113..a84930a318 100644 --- a/quickstarts/perfmon/config.yml +++ b/quickstarts/perfmon/config.yml @@ -17,8 +17,6 @@ documentation: Windows Performance Monitor is a toolkit that enables system performance data and analytics. url: https://docs.newrelic.com/docs/perfmon-open-source-integration -installPlans: - - third-party-perfmon dataSourceIds: - perfmon keywords: diff --git a/quickstarts/php/cakephp/config.yml b/quickstarts/php/cakephp/config.yml index 9f9908b026..d1b8d9d553 100644 --- a/quickstarts/php/cakephp/config.yml +++ b/quickstarts/php/cakephp/config.yml @@ -31,8 +31,6 @@ keywords: - apm - php - language agent -installPlans: - - php-agent dataSourceIds: - php dashboards: diff --git a/quickstarts/php/codeigniter/config.yml b/quickstarts/php/codeigniter/config.yml index ca0848b356..378c3d082f 100644 --- a/quickstarts/php/codeigniter/config.yml +++ b/quickstarts/php/codeigniter/config.yml @@ -11,7 +11,7 @@ description: |- ## More info - Check out the [documentation](https://docs.newrelic.com/docs/agents/php-agent/) to learn more about New Relic monitoring for CodeIgniter. + Check out the [documentation](https://docs.newrelic.com/docs/agents/php-agent/) to learn more about New Relic monitoring for CodeIgniter. summary: Monitor CodeIgniter with New Relic's PHP agent icon: logo.svg level: New Relic @@ -26,8 +26,6 @@ keywords: - apm - php - language agent -installPlans: - - php-targeted-install dataSourceIds: - php dashboards: diff --git a/quickstarts/php/guzzle/config.yml b/quickstarts/php/guzzle/config.yml index 8a2fbbdb76..cc6a3a9190 100644 --- a/quickstarts/php/guzzle/config.yml +++ b/quickstarts/php/guzzle/config.yml @@ -31,8 +31,6 @@ keywords: - apm - php - language agent -installPlans: - - php-agent dataSourceIds: - php dashboards: diff --git a/quickstarts/php/joomla/config.yml b/quickstarts/php/joomla/config.yml index 4450af8f94..df76fb41c5 100644 --- a/quickstarts/php/joomla/config.yml +++ b/quickstarts/php/joomla/config.yml @@ -33,8 +33,6 @@ keywords: - cms - content management system - language agent -installPlans: - - php-agent dataSourceIds: - php dashboards: diff --git a/quickstarts/php/kohana/config.yml b/quickstarts/php/kohana/config.yml index 06c62c269c..4f08d0755e 100644 --- a/quickstarts/php/kohana/config.yml +++ b/quickstarts/php/kohana/config.yml @@ -20,7 +20,7 @@ description: | - Customizable charts for metric timeslice data and other custom metrics sent to New Relic - Kohana dashboards (for transactions overview, errors overview, VM overview, top five slowest transactions, latest error, and more) - When you accelerate troubleshooting with distributed tracing and enhanced visibility into application and data lags in a Kohana dashboard, it's much easier for your team to quickly identify and resolve potential errors and ensure uptime. + When you accelerate troubleshooting with distributed tracing and enhanced visibility into application and data lags in a Kohana dashboard, it's much easier for your team to quickly identify and resolve potential errors and ensure uptime. ### The Complete Kohana PHP Dashboard Tool @@ -46,8 +46,6 @@ keywords: - apm - php - language agent -installPlans: - - php-agent dataSourceIds: - php dashboards: diff --git a/quickstarts/php/laravel/config.yml b/quickstarts/php/laravel/config.yml index a51d8967e0..462ef5a8bb 100644 --- a/quickstarts/php/laravel/config.yml +++ b/quickstarts/php/laravel/config.yml @@ -1,14 +1,14 @@ id: 919aad44-52ba-47fd-9e29-12195979015e slug: laravel description: | - ## Laravel PHP Monitoring + ## Laravel PHP Monitoring Laravel is a free, open-source PHP model-view-controller web framework that empowers developers to carry out common tasks in web and app development projects with ease. ### New Relic Laravel quickstart features The New Relic Laravel monitoring quickstart has the following features: - - Our standard dashboard provides a clear overview of transactions, errors and virtual machines. + - Our standard dashboard provides a clear overview of transactions, errors and virtual machines. - The Laravel PHP dashboard also helps you track other key indicators like daily transaction errors, comparison between weekly transaction errors, most popular transactions, and more. - Pre-defined alert conditions notify you on performance metrics like duration, error rate and throughput. @@ -34,8 +34,6 @@ keywords: - php - language agent - most popular -installPlans: - - php-agent dataSourceIds: - php dashboards: diff --git a/quickstarts/php/magento/config.yml b/quickstarts/php/magento/config.yml index bda784e01d..2e09bea770 100644 --- a/quickstarts/php/magento/config.yml +++ b/quickstarts/php/magento/config.yml @@ -11,7 +11,7 @@ description: |- ## More info - Check out the [documentation](https://docs.newrelic.com/docs/agents/php-agent/) to learn more about New Relic monitoring for Magento. + Check out the [documentation](https://docs.newrelic.com/docs/agents/php-agent/) to learn more about New Relic monitoring for Magento. summary: Monitor Magento with New Relic's PHP agent icon: logo.svg level: New Relic @@ -28,8 +28,6 @@ keywords: - cms - content management system - language agent -installPlans: - - php-agent dataSourceIds: - php dashboards: diff --git a/quickstarts/php/mediawiki/config.yml b/quickstarts/php/mediawiki/config.yml index 5e05cecf80..13417d28a6 100644 --- a/quickstarts/php/mediawiki/config.yml +++ b/quickstarts/php/mediawiki/config.yml @@ -33,8 +33,6 @@ keywords: - cms - content management system - language agent -installPlans: - - php-agent dataSourceIds: - php dashboards: diff --git a/quickstarts/php/odbc/config.yml b/quickstarts/php/odbc/config.yml index a143cc88d7..1a3c49bbd4 100644 --- a/quickstarts/php/odbc/config.yml +++ b/quickstarts/php/odbc/config.yml @@ -32,8 +32,6 @@ keywords: - php - database - language agent -installPlans: - - php-agent dataSourceIds: - php dashboards: diff --git a/quickstarts/php/pdo/config.yml b/quickstarts/php/pdo/config.yml index ffd7841a1c..0392f8f936 100644 --- a/quickstarts/php/pdo/config.yml +++ b/quickstarts/php/pdo/config.yml @@ -11,7 +11,7 @@ description: |- ## More info - Check out the [documentation](https://docs.newrelic.com/docs/agents/php-agent/) to learn more about New Relic monitoring for PDO. + Check out the [documentation](https://docs.newrelic.com/docs/agents/php-agent/) to learn more about New Relic monitoring for PDO. summary: Monitor PDO with New Relic's PHP agent icon: logo.svg level: New Relic @@ -27,8 +27,6 @@ keywords: - php - database - language agent -installPlans: - - php-agent dataSourceIds: - php dashboards: diff --git a/quickstarts/php/php/config.yml b/quickstarts/php/php/config.yml index 1cb2c8d88f..1d98052653 100644 --- a/quickstarts/php/php/config.yml +++ b/quickstarts/php/php/config.yml @@ -6,7 +6,7 @@ description: | Use our PHP monitoring agent to see a high-level summary of their app performance in a comprehensive PHP dashboard. Help teams monitor the app's Apdex, build architectural maps, and find and resolve errors quickly. - Our [PHP agent](https://docs.newrelic.com/docs/agents/php-agent/getting-started/introduction-new-relic-php/) collects and analyzes application data that drive data-driven decisions. Organize data, query data using NRQL, and visualize data (in customizable interactive dashboards) that directly impact customer experiences. + Our [PHP agent](https://docs.newrelic.com/docs/agents/php-agent/getting-started/introduction-new-relic-php/) collects and analyzes application data that drive data-driven decisions. Organize data, query data using NRQL, and visualize data (in customizable interactive dashboards) that directly impact customer experiences. ### Real-time PHP metric monitoring @@ -25,7 +25,7 @@ summary: | New Relic's instant observability quickstart with a PHP server monitor agent helps app developers quickly identify and resolve errors, including slow responses, to enhance customer experiences. level: New Relic icon: logo.svg -website: https://www.php.net/ + authors: - New Relic documentation: @@ -33,16 +33,11 @@ documentation: description: | PHP is a general-purpose scripting language especially suited to web development. url: https://docs.newrelic.com/docs/agents/php-agent/getting-started/php-agent-compatibility-requirements/ -instrumentation: - - type: newrelic-apm - name: php keywords: - apm - php - language agent - most popular -installPlans: - - php-agent dataSourceIds: - php dashboards: diff --git a/quickstarts/php/phpunit/config.yml b/quickstarts/php/phpunit/config.yml index 0ec3cfa03a..08c0e6bbe9 100644 --- a/quickstarts/php/phpunit/config.yml +++ b/quickstarts/php/phpunit/config.yml @@ -11,7 +11,7 @@ description: |- ## More info - Check out the [documentation](https://docs.newrelic.com/docs/agents/php-agent/) to learn more about New Relic monitoring for PHPunit. + Check out the [documentation](https://docs.newrelic.com/docs/agents/php-agent/) to learn more about New Relic monitoring for PHPunit. summary: Monitor PHPunit with New Relic's PHP agent icon: logo.svg level: New Relic @@ -27,8 +27,6 @@ keywords: - php - testing - language agent -installPlans: - - php-agent dataSourceIds: - php dashboards: diff --git a/quickstarts/php/predis/config.yml b/quickstarts/php/predis/config.yml index 5e2d6c823f..f1e0c019c5 100644 --- a/quickstarts/php/predis/config.yml +++ b/quickstarts/php/predis/config.yml @@ -11,7 +11,7 @@ description: |- ## More info - Check out the [documentation](https://docs.newrelic.com/docs/agents/php-agent/) to learn more about New Relic monitoring for Predis. + Check out the [documentation](https://docs.newrelic.com/docs/agents/php-agent/) to learn more about New Relic monitoring for Predis. summary: Monitor Predis with New Relic's PHP agent icon: logo.svg level: New Relic @@ -22,8 +22,6 @@ documentation: - name: Predis installation docs description: Predis is a flexible and feature-complete Redis client for PHP. url: https://docs.newrelic.com/docs/agents/php-agent/frameworks-libraries/predis-library-php -installPlans: - - php-agent dataSourceIds: - php keywords: diff --git a/quickstarts/php/silex/config.yml b/quickstarts/php/silex/config.yml index 1a4b50e81f..0de9ef505b 100644 --- a/quickstarts/php/silex/config.yml +++ b/quickstarts/php/silex/config.yml @@ -15,8 +15,6 @@ keywords: - apm - php - language agent -installPlans: - - php-agent dataSourceIds: - php dashboards: diff --git a/quickstarts/php/slim/config.yml b/quickstarts/php/slim/config.yml index 065db211bc..3c6cdaeb41 100644 --- a/quickstarts/php/slim/config.yml +++ b/quickstarts/php/slim/config.yml @@ -31,8 +31,6 @@ keywords: - apm - php - language agent -installPlans: - - php-agent dataSourceIds: - php dashboards: diff --git a/quickstarts/php/sqlite/config.yml b/quickstarts/php/sqlite/config.yml index 6a9e799ba7..d83625deed 100644 --- a/quickstarts/php/sqlite/config.yml +++ b/quickstarts/php/sqlite/config.yml @@ -32,8 +32,6 @@ keywords: - php - database - language agent -installPlans: - - php-agent dataSourceIds: - php dashboards: diff --git a/quickstarts/php/symfony/config.yml b/quickstarts/php/symfony/config.yml index b0d1f6010b..4516dce71f 100644 --- a/quickstarts/php/symfony/config.yml +++ b/quickstarts/php/symfony/config.yml @@ -31,8 +31,6 @@ keywords: - apm - php - language agent -installPlans: - - php-agent dataSourceIds: - php dashboards: diff --git a/quickstarts/php/yii/config.yml b/quickstarts/php/yii/config.yml index 58eb34fa84..7f9f511678 100644 --- a/quickstarts/php/yii/config.yml +++ b/quickstarts/php/yii/config.yml @@ -11,7 +11,7 @@ description: |- ## More info - Check out the [documentation](https://docs.newrelic.com/docs/agents/php-agent/) to learn more about New Relic monitoring for Yii. + Check out the [documentation](https://docs.newrelic.com/docs/agents/php-agent/) to learn more about New Relic monitoring for Yii. summary: Monitor Yii with New Relic's PHP agent icon: logo.svg level: New Relic @@ -26,8 +26,6 @@ keywords: - apm - php - language agent -installPlans: - - php-agent dataSourceIds: - php dashboards: diff --git a/quickstarts/pihole/config.yml b/quickstarts/pihole/config.yml index 6ba6ecbcb8..95fe1ed74e 100644 --- a/quickstarts/pihole/config.yml +++ b/quickstarts/pihole/config.yml @@ -11,7 +11,7 @@ description: | # Displayed in search results and recommendations. Summarizes a quickstarts functionality. summary: | - Dashboard for displaying pihole information. + Dashboard for displaying pihole information. # Support level: New Relic | Verified | Community (required) level: Community @@ -33,4 +33,3 @@ dashboards: # Content / Design icon: logo.svg -website: https://www.newrelic.com diff --git a/quickstarts/pixie/config.yml b/quickstarts/pixie/config.yml index 7bd3da6533..bc8c352132 100644 --- a/quickstarts/pixie/config.yml +++ b/quickstarts/pixie/config.yml @@ -32,14 +32,11 @@ keywords: # Reference to install plans located under /install directory # Allows us to construct reusable "install plans" and just use their ID in the quickstart config -installPlans: - - kubernetes-install dataSourceIds: - pixie # Content / Design icon: pixie-horizontal-color.png -website: https://www.newrelic.com dashboards: - pixie-quickstart diff --git a/quickstarts/port-monitoring/config.yml b/quickstarts/port-monitoring/config.yml index 988c843403..265fa9bacd 100644 --- a/quickstarts/port-monitoring/config.yml +++ b/quickstarts/port-monitoring/config.yml @@ -27,8 +27,6 @@ documentation: - name: Port monitoring installation docs description: Monitor the status for networking ports, such as TCP, UDP, etc. url: https://docs.newrelic.com/docs/port-monitoring-open-source-integration -installPlans: - - third-party-port-monitoring dataSourceIds: - port-monitoring keywords: diff --git a/quickstarts/postgresql/config.yml b/quickstarts/postgresql/config.yml index eb1cb90443..5dda2a8fe7 100644 --- a/quickstarts/postgresql/config.yml +++ b/quickstarts/postgresql/config.yml @@ -8,7 +8,7 @@ summary: | Monitor PostgreSQL with New Relic's On Host Integration. level: New Relic icon: logo.jpeg -website: https://www.postgresql.org/ + authors: - New Relic - Daniel Gola @@ -17,8 +17,6 @@ documentation: description: | Object-relational database management system designed to handle a range of workloads from single machines to data warehouses or services. url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/postgresql-monitoring-integration/ -installPlans: - - postgresql-integration dataSourceIds: - postgresql keywords: diff --git a/quickstarts/postman/config.yml b/quickstarts/postman/config.yml index 85bad7ed4a..bcf246db94 100644 --- a/quickstarts/postman/config.yml +++ b/quickstarts/postman/config.yml @@ -33,8 +33,6 @@ keywords: - featured - NR1_addData - NR1_sys -installPlans: - - third-party-postman dataSourceIds: - postman documentation: @@ -42,6 +40,6 @@ documentation: url: https://learning.postman.com/docs/integrations/available-integrations/new-relic/ description: Postman integration configuration icon: logo.svg -website: https://www.postman.com/ + dashboards: - postman-dashboard diff --git a/quickstarts/prometheus-agent/config.yml b/quickstarts/prometheus-agent/config.yml index 41ab0fa044..df6b0eff6e 100644 --- a/quickstarts/prometheus-agent/config.yml +++ b/quickstarts/prometheus-agent/config.yml @@ -4,7 +4,7 @@ title: Prometheus Agent description: | ## About New Relic Prometheus Agent - New Relic created the [Prometheus Agent](https://github.com/newrelic/newrelic-prometheus-configurator) in order to simplify the experience of configuring features like discovery, filtering, metrics decoration, and sharding. + New Relic created the [Prometheus Agent](https://github.com/newrelic/newrelic-prometheus-configurator) in order to simplify the experience of configuring features like discovery, filtering, metrics decoration, and sharding. It generates a configuration file that is used to run a Prometheus Server in Agent mode to later send the metrics to the New Relic Remote Write Endpoint. @@ -17,8 +17,6 @@ level: New Relic authors: - New Relic - Marc Sanmiquel -installPlans: - - setup-prometheus-agent-mode dataSourceIds: - prometheus-agent-mode documentation: diff --git a/quickstarts/prometheus-remote-write/config.yml b/quickstarts/prometheus-remote-write/config.yml index 33b9df208f..0b829807d3 100644 --- a/quickstarts/prometheus-remote-write/config.yml +++ b/quickstarts/prometheus-remote-write/config.yml @@ -1,21 +1,21 @@ id: 7dbd7355-c380-4211-bd32-fed9a65351af slug: prometheus-remote-write description: | - ## Prometheus monitoring + ## Prometheus monitoring Prometheus is an open-source monitoring and alerting toolkit. Setting up Prometheus is straightforward, but scaling up and managing is not. That’s where New Relic steps in. ### New Relic's Prometheus quickstart - New Relic offers two Prometheus integration schemes, Remote Write and OpenMetrics. + New Relic offers two Prometheus integration schemes, Remote Write and OpenMetrics. - [Remote Write](https://docs.newrelic.com/docs/integrations/prometheus-integrations/install-configure-remote-write/prometheus-remote-write-integration/) is ideal for well-established Prometheus infrastructures. It provides easy access to your metrics and only takes one line of yaml in your configuration for access. + [Remote Write](https://docs.newrelic.com/docs/integrations/prometheus-integrations/install-configure-remote-write/prometheus-remote-write-integration/) is ideal for well-established Prometheus infrastructures. It provides easy access to your metrics and only takes one line of yaml in your configuration for access. [OpenMetrics](https://docs.newrelic.com/docs/integrations/prometheus-integrations/install-configure-openmetrics/configure-prometheus-openmetrics-integrations/) allows for more visibility across multiple container platforms. Once the integration is set up, you can query data on memory usage for pods in deployment, facet any metrics, and view raw metric values all in one place. - New Relic's Prometheus Integration stores various kinds of telemetry data - whether open-source, vendor-specific, or vendor-agnostic. + New Relic's Prometheus Integration stores various kinds of telemetry data - whether open-source, vendor-specific, or vendor-agnostic. - ### Value of the Prometheus quickstart + ### Value of the Prometheus quickstart This New Relic quickstart helps you to configure Prometheus Remote Write. @@ -39,8 +39,6 @@ documentation: url: https://docs.newrelic.com/docs/infrastructure/prometheus-integrations/install-configure-remote-write/set-your-prometheus-remote-write-integration/ keywords: - open source monitoring -installPlans: - - setup-prometheus dataSourceIds: - prometheus dashboards: diff --git a/quickstarts/python/aiohttp/config.yml b/quickstarts/python/aiohttp/config.yml index 2f7d4f11e4..ad32695e7d 100644 --- a/quickstarts/python/aiohttp/config.yml +++ b/quickstarts/python/aiohttp/config.yml @@ -42,8 +42,6 @@ keywords: - apm - http - aiohttp -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/amqplib/config.yml b/quickstarts/python/amqplib/config.yml index 9af55b86dd..920710dd4b 100644 --- a/quickstarts/python/amqplib/config.yml +++ b/quickstarts/python/amqplib/config.yml @@ -31,8 +31,6 @@ keywords: - apm - python - NR1_addData -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/bottle/config.yml b/quickstarts/python/bottle/config.yml index 079524edd1..14b0075a5c 100644 --- a/quickstarts/python/bottle/config.yml +++ b/quickstarts/python/bottle/config.yml @@ -30,8 +30,6 @@ keywords: - apm - python - bottle -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/celery/config.yml b/quickstarts/python/celery/config.yml index e34653aec8..7a7257f495 100644 --- a/quickstarts/python/celery/config.yml +++ b/quickstarts/python/celery/config.yml @@ -27,8 +27,6 @@ keywords: - apm - python - celery -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/cherrypy/config.yml b/quickstarts/python/cherrypy/config.yml index 8fc15c9848..cd76440172 100644 --- a/quickstarts/python/cherrypy/config.yml +++ b/quickstarts/python/cherrypy/config.yml @@ -7,7 +7,7 @@ description: | ### CherryPy quickstart highlights - The New Relic CherryPy Quickstart has the following features - + The New Relic CherryPy Quickstart has the following features - Dashboards - Monitor metrics like CPU Utilization, memory heap used, garbage collection CPU time, top 5 slowest transactions, throughput reports, and most popular transactions, and more. Alerts - including apdex score, cpu utilization and transaction tracing @@ -33,8 +33,6 @@ documentation: keywords: - apm - python -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/django/config.yml b/quickstarts/python/django/config.yml index e23d5f6bae..4837c03b48 100644 --- a/quickstarts/python/django/config.yml +++ b/quickstarts/python/django/config.yml @@ -37,8 +37,6 @@ keywords: - python - django - most popular -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/facepy/config.yml b/quickstarts/python/facepy/config.yml index dbd44eb7d1..111b5e8f74 100644 --- a/quickstarts/python/facepy/config.yml +++ b/quickstarts/python/facepy/config.yml @@ -28,8 +28,6 @@ keywords: - apm - python - facepy -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/falcon/config.yml b/quickstarts/python/falcon/config.yml index 2ef8ebee70..336b7e9844 100644 --- a/quickstarts/python/falcon/config.yml +++ b/quickstarts/python/falcon/config.yml @@ -30,8 +30,6 @@ documentation: keywords: - apm - python -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/fastapi/config.yml b/quickstarts/python/fastapi/config.yml index 2e7b224e33..a406436075 100644 --- a/quickstarts/python/fastapi/config.yml +++ b/quickstarts/python/fastapi/config.yml @@ -31,8 +31,6 @@ keywords: - python - language agent - fastapi -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/feedparser/config.yml b/quickstarts/python/feedparser/config.yml index c9f3e899e3..7d6a9652db 100644 --- a/quickstarts/python/feedparser/config.yml +++ b/quickstarts/python/feedparser/config.yml @@ -39,8 +39,6 @@ keywords: - apm - python - feedparser -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/flask/config.yml b/quickstarts/python/flask/config.yml index 9565e9987b..0979817c4e 100644 --- a/quickstarts/python/flask/config.yml +++ b/quickstarts/python/flask/config.yml @@ -48,8 +48,6 @@ keywords: - apm - python - flask -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/gearman/config.yml b/quickstarts/python/gearman/config.yml index bf263e0106..660a3cc02c 100644 --- a/quickstarts/python/gearman/config.yml +++ b/quickstarts/python/gearman/config.yml @@ -25,8 +25,6 @@ documentation: keywords: - apm - python -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/gevent/config.yml b/quickstarts/python/gevent/config.yml index 9f33009e16..cc0f6f6ba5 100644 --- a/quickstarts/python/gevent/config.yml +++ b/quickstarts/python/gevent/config.yml @@ -30,8 +30,6 @@ keywords: - apm - python - gevent -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/httplib2/config.yml b/quickstarts/python/httplib2/config.yml index c27faf3ace..224ee4645a 100644 --- a/quickstarts/python/httplib2/config.yml +++ b/quickstarts/python/httplib2/config.yml @@ -30,8 +30,6 @@ keywords: - httplib2 - NR1_addData - NR1_sys -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/jinja2/config.yml b/quickstarts/python/jinja2/config.yml index cc67681a63..737225a2fe 100644 --- a/quickstarts/python/jinja2/config.yml +++ b/quickstarts/python/jinja2/config.yml @@ -30,8 +30,6 @@ documentation: keywords: - apm - python -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/mako/config.yml b/quickstarts/python/mako/config.yml index cd26b00fb3..e0aa0953c0 100644 --- a/quickstarts/python/mako/config.yml +++ b/quickstarts/python/mako/config.yml @@ -27,8 +27,6 @@ keywords: - apm - python - mako -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/oursql/config.yml b/quickstarts/python/oursql/config.yml index 599246baa8..8ab8a57984 100644 --- a/quickstarts/python/oursql/config.yml +++ b/quickstarts/python/oursql/config.yml @@ -31,8 +31,6 @@ keywords: - apm - python - database -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/pika/config.yml b/quickstarts/python/pika/config.yml index 438d20784b..70135d3621 100644 --- a/quickstarts/python/pika/config.yml +++ b/quickstarts/python/pika/config.yml @@ -25,8 +25,6 @@ documentation: keywords: - apm - python -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/piston/config.yml b/quickstarts/python/piston/config.yml index 7c280b5049..9dacc5f419 100644 --- a/quickstarts/python/piston/config.yml +++ b/quickstarts/python/piston/config.yml @@ -25,8 +25,6 @@ documentation: keywords: - apm - python -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/proboscis/config.yml b/quickstarts/python/proboscis/config.yml index 4de1d9de19..20048a9969 100644 --- a/quickstarts/python/proboscis/config.yml +++ b/quickstarts/python/proboscis/config.yml @@ -30,8 +30,6 @@ documentation: keywords: - apm - python -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/psycopg2/config.yml b/quickstarts/python/psycopg2/config.yml index 9195d19526..0447f816b7 100644 --- a/quickstarts/python/psycopg2/config.yml +++ b/quickstarts/python/psycopg2/config.yml @@ -11,7 +11,7 @@ description: | The Quickstart offers a number of visual dashboards that display the following data: - CPU Utilization - - Memory heap used + - Memory heap used - Garbage collection CPU time - Top 5 slowest transactions - Throughput reports @@ -25,7 +25,7 @@ description: | ### New Relic - The complete Psycopg2 dashboard tool - Any [Python application](https://docs.newrelic.com/docs/apm/agents/python-agent/getting-started/introduction-new-relic-python/) which interfaces with a Postgres database is likely to use Psycopg2. This spans a huge array of applications from web backends to machine learning tools to general data stores. Regardless of the specific application, working with Psycopg2 on large-scale projects requires instantiating multiple simultaneous connections with the database. When this many connections are active at once, applications running Psycopg2 become prone to slowdowns or failure. + Any [Python application](https://docs.newrelic.com/docs/apm/agents/python-agent/getting-started/introduction-new-relic-python/) which interfaces with a Postgres database is likely to use Psycopg2. This spans a huge array of applications from web backends to machine learning tools to general data stores. Regardless of the specific application, working with Psycopg2 on large-scale projects requires instantiating multiple simultaneous connections with the database. When this many connections are active at once, applications running Psycopg2 become prone to slowdowns or failure. This observability pack can help you detect those before they become an issue. For example, the New Relic dashboards and alerts relating to CPU utilization provide notifications when a CPU running Psycopg2 nears full capacity. This can be used as a diagnostic tool to identify which sections of an application might need refinements or refactoring. @@ -49,8 +49,6 @@ keywords: - python - NR1_addData - NR1_sys -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/pyelasticsearch/config.yml b/quickstarts/python/pyelasticsearch/config.yml index 9284b23593..8ca243f9ce 100644 --- a/quickstarts/python/pyelasticsearch/config.yml +++ b/quickstarts/python/pyelasticsearch/config.yml @@ -32,8 +32,6 @@ keywords: - python - NR1_addData - NR1_sys -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/pylibmc/config.yml b/quickstarts/python/pylibmc/config.yml index 3306f94716..c38cd23fcf 100644 --- a/quickstarts/python/pylibmc/config.yml +++ b/quickstarts/python/pylibmc/config.yml @@ -27,8 +27,6 @@ keywords: - apm - python - pylibmc -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/pylons/config.yml b/quickstarts/python/pylons/config.yml index d0baed17ee..74d77e6de7 100644 --- a/quickstarts/python/pylons/config.yml +++ b/quickstarts/python/pylons/config.yml @@ -30,8 +30,6 @@ documentation: keywords: - apm - python -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/pymongo/config.yml b/quickstarts/python/pymongo/config.yml index b03f971156..47a0d3beba 100644 --- a/quickstarts/python/pymongo/config.yml +++ b/quickstarts/python/pymongo/config.yml @@ -33,8 +33,6 @@ keywords: - database - NR1_addData - NR1_sys -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/pyramid/config.yml b/quickstarts/python/pyramid/config.yml index 821d546e82..0214c782f5 100644 --- a/quickstarts/python/pyramid/config.yml +++ b/quickstarts/python/pyramid/config.yml @@ -31,8 +31,6 @@ keywords: - python - pyramid - WSGI -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/pysqlite/config.yml b/quickstarts/python/pysqlite/config.yml index 153a04b022..7c17073b78 100644 --- a/quickstarts/python/pysqlite/config.yml +++ b/quickstarts/python/pysqlite/config.yml @@ -31,8 +31,6 @@ keywords: - apm - python - database -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/python/config.yml b/quickstarts/python/python/config.yml index 514abbbd69..0b77a29dcc 100644 --- a/quickstarts/python/python/config.yml +++ b/quickstarts/python/python/config.yml @@ -9,7 +9,7 @@ description: | ### Why monitoring Python is so important - Python monitoring agents enable developers to troubleshoot application and endpoint issues, identify specific dependencies, and meet service level agreements. + Python monitoring agents enable developers to troubleshoot application and endpoint issues, identify specific dependencies, and meet service level agreements. Development teams can view detailed stack traces of sampled threads and extend performance monitoring to collect and analyze business data in a dashboard. This approach helps teams make data-driven decisions and enhance user experiences. @@ -17,7 +17,7 @@ description: | New Relic's Python monitoring quickstart boasts instant full-stack observability out-of-the-box: - Alerts (Adpex score, CPU utilization, transaction error) - - Dashboards (most popular transactions, average transaction duration today compared with that for the previous week, Adpex score comparisons, and more) + - Dashboards (most popular transactions, average transaction duration today compared with that for the previous week, Adpex score comparisons, and more) - Monitor scripts and functions - Monitor WSGI web transactions @@ -53,8 +53,6 @@ keywords: - apm - python - language agent -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/sanic/config.yml b/quickstarts/python/sanic/config.yml index ec896a69f4..71c7a455c2 100644 --- a/quickstarts/python/sanic/config.yml +++ b/quickstarts/python/sanic/config.yml @@ -30,8 +30,6 @@ documentation: keywords: - apm - python -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/tastypie/config.yml b/quickstarts/python/tastypie/config.yml index f62d1210fb..831f04c6ac 100644 --- a/quickstarts/python/tastypie/config.yml +++ b/quickstarts/python/tastypie/config.yml @@ -30,8 +30,6 @@ documentation: keywords: - apm - python -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/tornado/config.yml b/quickstarts/python/tornado/config.yml index 0cf1926135..92bb5938bb 100644 --- a/quickstarts/python/tornado/config.yml +++ b/quickstarts/python/tornado/config.yml @@ -25,8 +25,6 @@ keywords: - apm - python - tornado -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/twisted/config.yml b/quickstarts/python/twisted/config.yml index 16c6193e44..37d9b5ca24 100644 --- a/quickstarts/python/twisted/config.yml +++ b/quickstarts/python/twisted/config.yml @@ -27,8 +27,6 @@ keywords: - apm - python - twisted -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/web2py/config.yml b/quickstarts/python/web2py/config.yml index 89504a5a71..0c3ea7adf8 100644 --- a/quickstarts/python/web2py/config.yml +++ b/quickstarts/python/web2py/config.yml @@ -28,8 +28,6 @@ keywords: - apm - python - web2py -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/python/webpy/config.yml b/quickstarts/python/webpy/config.yml index 6ef4c0471d..58055c532a 100644 --- a/quickstarts/python/webpy/config.yml +++ b/quickstarts/python/webpy/config.yml @@ -35,8 +35,6 @@ keywords: - apm - python - webpy -installPlans: - - setup-python-agent dataSourceIds: - python dashboards: diff --git a/quickstarts/qdrant/config.yml b/quickstarts/qdrant/config.yml index 9582ef24cc..a97cb3a574 100644 --- a/quickstarts/qdrant/config.yml +++ b/quickstarts/qdrant/config.yml @@ -7,10 +7,10 @@ description: | Track the behavior of your vector stores. Monitor the latency, queries, the number of documents retrieved, and the content of the documents so that you can evaluate their relevance. ### Track your app: By tracking key metrics like latency, throughput, error rates, and input & output, you can gain insights into your app's performance and identify areas of improvement. - + ## Comprehensive monitoring quickstart for your Qdrant app Our Qdrant quickstart provides metrics including Identify popular queries, sources, and content. - + ## What’s included in this quickstart? New Relic Qdrant monitoring quickstart provides a variety of pre-built dashboards, which will help you gain insights into the health and performance of your Qdrant app. These reports include: - Vector searches @@ -19,8 +19,7 @@ description: | summary: | Monitor your Vector search's performance and quality with New Relic Qdrant quickstart icon: logo.png -level: - - New Relic +level: New Relic authors: - New Relic - Ramana Reddy diff --git a/quickstarts/quantum-metric/config.yml b/quickstarts/quantum-metric/config.yml index 0c8b77dd33..679d03f6db 100644 --- a/quickstarts/quantum-metric/config.yml +++ b/quickstarts/quantum-metric/config.yml @@ -7,8 +7,6 @@ level: Community authors: - Quantum Metric title: Quantum Metric -installPlans: - - third-party-quantum-metric dataSourceIds: - quantum-metric documentation: diff --git a/quickstarts/rabbitmq/config.yml b/quickstarts/rabbitmq/config.yml index 5df4e4aa51..59800afcd2 100644 --- a/quickstarts/rabbitmq/config.yml +++ b/quickstarts/rabbitmq/config.yml @@ -4,7 +4,7 @@ title: RabbitMQ description: | ## RabbitMQ performance - RabbitMQ is an open-source message broker that supports multiple protocols. It acts as a broker, fielding messages sent from a “producer” application and distributing them to the “consumer” applications for which they are designated. + RabbitMQ is an open-source message broker that supports multiple protocols. It acts as a broker, fielding messages sent from a “producer” application and distributing them to the “consumer” applications for which they are designated. The New Relic RabbitMQ agent monitors the performance of RabbitMQ instances, giving insights into their activity. It targets the AMQP RabbitMQ distribution that integrates with Node.js. @@ -22,18 +22,18 @@ description: | ### New Relic + RabbitMQ - Your tool for better monitoring - [Monitor RabbitMQ](https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/rabbitmq-monitoring-integration/) to ensure it’s coordinating messages between producer and consumer apps in a timely and efficient manner. Silent failures are common in RabbitMQ, frequently causing messages to hang or never be delivered. + [Monitor RabbitMQ](https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/rabbitmq-monitoring-integration/) to ensure it’s coordinating messages between producer and consumer apps in a timely and efficient manner. Silent failures are common in RabbitMQ, frequently causing messages to hang or never be delivered. This can drastically warp the downstream behavior of an app. By monitoring RabbitMQ application health, system administrators can catch these errors before they occur. - The key metrics to keep an eye on include memory usage, message throughput and utilization by queue, and queue consumers. Monitoring memory usage allows for detection of system overloads. Similarly, throughput and utilization trade off on queue capacity. + The key metrics to keep an eye on include memory usage, message throughput and utilization by queue, and queue consumers. Monitoring memory usage allows for detection of system overloads. Similarly, throughput and utilization trade off on queue capacity. Queues that are underutilized can be identified for message acceptance, and queues with low throughput can be investigated for hanging messages. Finally, insight into queue consumers can help to evenly distribute them across available queues. summary: | New Relic RabbitMQ offers multiple dashboards for monitoring nodes and ensuring that messages move efficiently through broker queues, from producer to consumer applications. level: New Relic icon: logo.svg -website: https://www.rabbitmq.com/ + authors: - New Relic - Daniel Gola @@ -42,8 +42,6 @@ documentation: description: | Lightweight message queue and broker service that gives disparate services a common communication point. url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/rabbitmq-monitoring-integration/ -installPlans: - - rabbitmq-integration dataSourceIds: - rabbitmq keywords: diff --git a/quickstarts/rafay/config.yml b/quickstarts/rafay/config.yml index 6dca3a1f2b..d509b85f50 100644 --- a/quickstarts/rafay/config.yml +++ b/quickstarts/rafay/config.yml @@ -43,8 +43,6 @@ documentation: # Content / Design icon: logo.svg -website: https://www.rafay.co dataSourceIds: - rafay - diff --git a/quickstarts/redhat/red-hat-enterprise-linux/config.yml b/quickstarts/redhat/red-hat-enterprise-linux/config.yml index c0aef3a684..d00056f4e0 100644 --- a/quickstarts/redhat/red-hat-enterprise-linux/config.yml +++ b/quickstarts/redhat/red-hat-enterprise-linux/config.yml @@ -17,8 +17,6 @@ documentation: Red Hat Enterprise Linux is a Linux distribution developed by Red Hat for the commercial market. url: https://docs.newrelic.com/docs/infrastructure/install-configure-manage-infrastructure/linux-installation/install-infrastructure-linux-using-package-manager -installPlans: - - guided-install dataSourceIds: - guided-install keywords: diff --git a/quickstarts/redhat/red-hat-openshift/config.yml b/quickstarts/redhat/red-hat-openshift/config.yml index d137e7282b..3690d99b36 100644 --- a/quickstarts/redhat/red-hat-openshift/config.yml +++ b/quickstarts/redhat/red-hat-openshift/config.yml @@ -21,7 +21,5 @@ keywords: - k8s - NR1_addData - NR1_sys -installPlans: - - third-party-red-hat-openshift dataSourceIds: - kubernetes diff --git a/quickstarts/redis-prometheus/config.yml b/quickstarts/redis-prometheus/config.yml index 02ac36ffbf..bca99f2838 100644 --- a/quickstarts/redis-prometheus/config.yml +++ b/quickstarts/redis-prometheus/config.yml @@ -47,9 +47,6 @@ keywords: - database - NR1_addData - NR1_sys -installPlans: - - setup-prometheus - - setup-prometheus-agent-mode dataSourceIds: - prometheus - prometheus-agent-mode @@ -63,7 +60,7 @@ documentation: Open source, key-value data structure store for use as a database, cache, and message broker with wide protocol and dataset support. url: https://docs.newrelic.com/docs/infrastructure/prometheus-integrations/integrations-list/redis-integration icon: logo.png -website: https://redis.io/ + dashboards: - redis-prometheus alertPolicies: diff --git a/quickstarts/redis/config.yml b/quickstarts/redis/config.yml index c905408a21..4e371ac740 100644 --- a/quickstarts/redis/config.yml +++ b/quickstarts/redis/config.yml @@ -29,7 +29,7 @@ summary: | New Relic provides crucial tools for monitoring your Redis instances. Its Redis monitor supports features such as a visual dashboard complete with charts detailing all critical performance and health metrics relevant to your Redis system. level: New Relic icon: logo.png -website: https://redis.io/ + authors: - New Relic - Jakub Kotkowiak @@ -38,8 +38,6 @@ documentation: description: | Open source, key-value data structure store for use as a database, cache, and message broker with wide protocol and dataset support. url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/redis-monitoring-integration/ -installPlans: - - redis-integration dataSourceIds: - redis keywords: diff --git a/quickstarts/redisenterprise/config.yml b/quickstarts/redisenterprise/config.yml index 5e5a95005a..c5df649967 100644 --- a/quickstarts/redisenterprise/config.yml +++ b/quickstarts/redisenterprise/config.yml @@ -41,7 +41,7 @@ description: |+ - Lag: Time between application on servers - Pending: Details of the number of writes pending as part of the sync - - Bandwidth: Information on the amount of traffic between clusters + - Bandwidth: Information on the amount of traffic between clusters ### Contact us To get help please contact the [Redis Enterprise Field Engineering](mailto:redis.observability@redis.com?subject=NewRelic%20Integration%20Support) @@ -61,8 +61,6 @@ keywords: - active - NR1_addData - NR1_sys -installPlans: - - third-party-redisenterprise dataSourceIds: - redis-enterprise documentation: @@ -70,7 +68,7 @@ documentation: url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/redis/redis-enterprise-integration/ description: How to install and configure Redis Enterprise New Relic integration icon: logo.png -website: https://redis.com/redis-enterprise-software/overview/ + dashboards: - active-active - cluster diff --git a/quickstarts/releaseiq/config.yml b/quickstarts/releaseiq/config.yml index 5cbabd28a9..86b25c518e 100644 --- a/quickstarts/releaseiq/config.yml +++ b/quickstarts/releaseiq/config.yml @@ -33,11 +33,9 @@ documentation: ReleaseIQ is the Unified Enterprise DevOps Platform to Accelerate Software Delivery. Get started with newrelic setup and configuration. url: https://www.releaseiq.io/use-cases/new-relic/ -installPlans: - - third-party-releaseiq dataSourceIds: - releaseiq icon: logo.png -website: https://www.releaseiq.io/ + dashboards: - riq-dashboard diff --git a/quickstarts/roku/config.yml b/quickstarts/roku/config.yml index 70e5240421..5043e3648d 100644 --- a/quickstarts/roku/config.yml +++ b/quickstarts/roku/config.yml @@ -6,8 +6,8 @@ description: | Roku is one of the world's most popular streaming platforms. New Relic has developed the first and only open-source observabiilty agent for Roku, giving you unparalleled insight into the performance of your Roku application. ### Analytics on HTTP requests and errors - This can be manifestations of ISP or CDN issues or unwanted changes to the application or backend services. Faster identification and understanding of these issues is critical to maintaining a positive user experience. - ### Video Quality of Experience (QoE) + This can be manifestations of ISP or CDN issues or unwanted changes to the application or backend services. Faster identification and understanding of these issues is critical to maintaining a positive user experience. + ### Video Quality of Experience (QoE) Correlate video quality issues back through the rest of the streaming architecture. Acquire complete correlations between video playback sessions to the backend systems. ### Customer journey tracking Follow customers as they navigate the application towards their content and their video playback experience. See where and when drop offs occur and the time it takes to complete critical actions. @@ -31,9 +31,6 @@ keywords: - brightscript - NR1_addData - NR1_sys -installPlans: - - third-party-roku - - third-party-roku-http-analytics dataSourceIds: - roku - roku-http-analytics diff --git a/quickstarts/ruby/activerecord/config.yml b/quickstarts/ruby/activerecord/config.yml index fc02271d9a..68c0e2d8f0 100644 --- a/quickstarts/ruby/activerecord/config.yml +++ b/quickstarts/ruby/activerecord/config.yml @@ -31,8 +31,6 @@ documentation: keywords: - apm - ruby -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/ruby/acts-as-solr/config.yml b/quickstarts/ruby/acts-as-solr/config.yml index 880bc2213f..42c0fff5db 100644 --- a/quickstarts/ruby/acts-as-solr/config.yml +++ b/quickstarts/ruby/acts-as-solr/config.yml @@ -28,8 +28,6 @@ documentation: Ruby plugins that adds full text search capabilities and other features from Apache's Solr to any Rails model. url: https://docs.newrelic.com/docs/agents/ruby-agent/getting-started/ruby-agent-requirements-supported-frameworks -installPlans: - - setup-ruby-agent dataSourceIds: - ruby keywords: diff --git a/quickstarts/ruby/authlogic/config.yml b/quickstarts/ruby/authlogic/config.yml index 9d548eb79e..de309296aa 100644 --- a/quickstarts/ruby/authlogic/config.yml +++ b/quickstarts/ruby/authlogic/config.yml @@ -26,8 +26,6 @@ documentation: keywords: - apm - ruby -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/ruby/bunny/config.yml b/quickstarts/ruby/bunny/config.yml index 516562f52f..f9ed8e08a0 100644 --- a/quickstarts/ruby/bunny/config.yml +++ b/quickstarts/ruby/bunny/config.yml @@ -31,8 +31,6 @@ documentation: keywords: - apm - ruby -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/ruby/curb/config.yml b/quickstarts/ruby/curb/config.yml index e1ebb087f6..c45d52c6f7 100644 --- a/quickstarts/ruby/curb/config.yml +++ b/quickstarts/ruby/curb/config.yml @@ -14,7 +14,7 @@ description: | ### New Relic + Curb = Optimum performance monitoring Monitor Curb with New Relic’s Ruby agent. With an interactive dashboard, you can explore, query, and visualize your data. This helps you to identify issues faster and improve Curb’s performance. The quickstart also has four alerts that can detect changes in key metrics. You can integrate the alerts with your favorite tools such as Slack or PagerDuty, and you will get instant notification when there is any issue. - You can [configure](https://docs.newrelic.com/docs/apm/agents/ruby-agent/configuration/ruby-agent-configuration/) the New Relic Ruby agent with settings in a configuration file, environment variables, or programmatically with server-side configuration. The Ruby agent supports Curb version 0.8.1 or higher. + You can [configure](https://docs.newrelic.com/docs/apm/agents/ruby-agent/configuration/ruby-agent-configuration/) the New Relic Ruby agent with settings in a configuration file, environment variables, or programmatically with server-side configuration. The Ruby agent supports Curb version 0.8.1 or higher. Install the New Relic Curb observability quickstart today to track Curb’s metrics in real time through a seamless dashboard and different alerts. The quickstart empowers you to leverage our Ruby agent for instant and comprehensive monitoring of Curb. summary: | Monitoring Curb is critical to ensure that you detect incidents and respond to them quickly. Download the New Relic quickstart to instrument Curb with our Ruby agent and track key performance metrics. @@ -33,8 +33,6 @@ documentation: keywords: - apm - ruby -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/ruby/dalli/config.yml b/quickstarts/ruby/dalli/config.yml index 04bcb9d36f..22797f8f20 100644 --- a/quickstarts/ruby/dalli/config.yml +++ b/quickstarts/ruby/dalli/config.yml @@ -26,8 +26,6 @@ documentation: keywords: - apm - ruby -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/ruby/delayed-job/config.yml b/quickstarts/ruby/delayed-job/config.yml index 56304cdf46..61147ca4c0 100644 --- a/quickstarts/ruby/delayed-job/config.yml +++ b/quickstarts/ruby/delayed-job/config.yml @@ -23,8 +23,6 @@ documentation: - name: Delayed_Job installation docs description: Ruby Gem that enables asynchronously distributing tasks to the background. url: https://docs.newrelic.com/docs/agents/ruby-agent/getting-started/ruby-agent-requirements-supported-frameworks -installPlans: - - setup-ruby-agent dataSourceIds: - ruby keywords: diff --git a/quickstarts/ruby/excon/config.yml b/quickstarts/ruby/excon/config.yml index a236617f62..26f0a64f0a 100644 --- a/quickstarts/ruby/excon/config.yml +++ b/quickstarts/ruby/excon/config.yml @@ -26,8 +26,6 @@ documentation: keywords: - apm - ruby -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/ruby/grape/config.yml b/quickstarts/ruby/grape/config.yml index 934a713df2..688edfe38e 100644 --- a/quickstarts/ruby/grape/config.yml +++ b/quickstarts/ruby/grape/config.yml @@ -26,8 +26,6 @@ documentation: keywords: - apm - ruby -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/ruby/httpclient/config.yml b/quickstarts/ruby/httpclient/config.yml index e32c4e7643..0ea38845ba 100644 --- a/quickstarts/ruby/httpclient/config.yml +++ b/quickstarts/ruby/httpclient/config.yml @@ -26,8 +26,6 @@ documentation: keywords: - apm - ruby -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/ruby/httprb/config.yml b/quickstarts/ruby/httprb/config.yml index a02f74ea92..e061989f4b 100644 --- a/quickstarts/ruby/httprb/config.yml +++ b/quickstarts/ruby/httprb/config.yml @@ -28,8 +28,6 @@ keywords: - ruby - NR1_addData - NR1_sys -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/ruby/net-http/config.yml b/quickstarts/ruby/net-http/config.yml index e0386e3e64..af23a95af8 100644 --- a/quickstarts/ruby/net-http/config.yml +++ b/quickstarts/ruby/net-http/config.yml @@ -28,8 +28,6 @@ documentation: Net::HTTP for Ruby provides a rich library which can be used to build HTTP user-agents. url: https://docs.newrelic.com/docs/agents/ruby-agent/getting-started/ruby-agent-requirements-supported-frameworks -installPlans: - - setup-ruby-agent dataSourceIds: - ruby keywords: diff --git a/quickstarts/ruby/padrino/config.yml b/quickstarts/ruby/padrino/config.yml index e5de4559ad..b2ca17b24d 100644 --- a/quickstarts/ruby/padrino/config.yml +++ b/quickstarts/ruby/padrino/config.yml @@ -31,8 +31,6 @@ documentation: keywords: - apm - ruby -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/ruby/passenger/config.yml b/quickstarts/ruby/passenger/config.yml index 5d458ed17a..a9b9567bf2 100644 --- a/quickstarts/ruby/passenger/config.yml +++ b/quickstarts/ruby/passenger/config.yml @@ -31,8 +31,6 @@ documentation: keywords: - apm - ruby -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/ruby/puma/config.yml b/quickstarts/ruby/puma/config.yml index d37205c546..61d155c857 100644 --- a/quickstarts/ruby/puma/config.yml +++ b/quickstarts/ruby/puma/config.yml @@ -26,8 +26,6 @@ documentation: keywords: - apm - ruby -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/ruby/rack/config.yml b/quickstarts/ruby/rack/config.yml index 68e9eea4d2..ef3c6473db 100644 --- a/quickstarts/ruby/rack/config.yml +++ b/quickstarts/ruby/rack/config.yml @@ -31,8 +31,6 @@ documentation: keywords: - apm - ruby -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/ruby/rails/config.yml b/quickstarts/ruby/rails/config.yml index e4e9c72edb..362d655c6b 100644 --- a/quickstarts/ruby/rails/config.yml +++ b/quickstarts/ruby/rails/config.yml @@ -31,8 +31,6 @@ documentation: keywords: - apm - ruby -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/ruby/rainbows/config.yml b/quickstarts/ruby/rainbows/config.yml index f7e317e397..55bcf915dd 100644 --- a/quickstarts/ruby/rainbows/config.yml +++ b/quickstarts/ruby/rainbows/config.yml @@ -28,8 +28,6 @@ documentation: An HTTP Rack app server designed to handle applications that expect long request/response times and/or slow clients. url: https://docs.newrelic.com/docs/agents/ruby-agent/getting-started/ruby-agent-requirements-supported-frameworks -installPlans: - - setup-ruby-agent dataSourceIds: - ruby keywords: diff --git a/quickstarts/ruby/rake/config.yml b/quickstarts/ruby/rake/config.yml index 46e6051248..85e70ae9a7 100644 --- a/quickstarts/ruby/rake/config.yml +++ b/quickstarts/ruby/rake/config.yml @@ -26,8 +26,6 @@ documentation: keywords: - apm - ruby -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/ruby/resque/config.yml b/quickstarts/ruby/resque/config.yml index 334a571703..2c4febec2c 100644 --- a/quickstarts/ruby/resque/config.yml +++ b/quickstarts/ruby/resque/config.yml @@ -31,8 +31,6 @@ documentation: keywords: - apm - ruby -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/ruby/ruby/config.yml b/quickstarts/ruby/ruby/config.yml index ae9ea66e6f..ad8f6d6632 100644 --- a/quickstarts/ruby/ruby/config.yml +++ b/quickstarts/ruby/ruby/config.yml @@ -27,8 +27,6 @@ keywords: - apm - ruby - language agent -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/ruby/sequel/config.yml b/quickstarts/ruby/sequel/config.yml index 46a8cf8443..8a07437bcc 100644 --- a/quickstarts/ruby/sequel/config.yml +++ b/quickstarts/ruby/sequel/config.yml @@ -27,8 +27,6 @@ keywords: - apm - ruby - database -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/ruby/sidekiq/config.yml b/quickstarts/ruby/sidekiq/config.yml index b8caaf3c2d..86f2206cb6 100644 --- a/quickstarts/ruby/sidekiq/config.yml +++ b/quickstarts/ruby/sidekiq/config.yml @@ -38,8 +38,6 @@ documentation: keywords: - apm - ruby -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/ruby/sinatra/config.yml b/quickstarts/ruby/sinatra/config.yml index ed5918d2b7..9e97ad537d 100644 --- a/quickstarts/ruby/sinatra/config.yml +++ b/quickstarts/ruby/sinatra/config.yml @@ -31,8 +31,6 @@ documentation: keywords: - apm - ruby -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/ruby/sunspot/config.yml b/quickstarts/ruby/sunspot/config.yml index c07b1471b8..fa907611d8 100644 --- a/quickstarts/ruby/sunspot/config.yml +++ b/quickstarts/ruby/sunspot/config.yml @@ -26,8 +26,6 @@ documentation: keywords: - apm - ruby -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/ruby/thin/config.yml b/quickstarts/ruby/thin/config.yml index dec25b11c3..3bfad88fa6 100644 --- a/quickstarts/ruby/thin/config.yml +++ b/quickstarts/ruby/thin/config.yml @@ -31,8 +31,6 @@ documentation: keywords: - apm - ruby -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/ruby/typhoeus/config.yml b/quickstarts/ruby/typhoeus/config.yml index 83c6cf6d5d..ec70be657a 100644 --- a/quickstarts/ruby/typhoeus/config.yml +++ b/quickstarts/ruby/typhoeus/config.yml @@ -26,8 +26,6 @@ documentation: keywords: - apm - ruby -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/ruby/unicorn/config.yml b/quickstarts/ruby/unicorn/config.yml index 270ba43027..4dbf5ad32c 100644 --- a/quickstarts/ruby/unicorn/config.yml +++ b/quickstarts/ruby/unicorn/config.yml @@ -31,8 +31,6 @@ documentation: keywords: - apm - ruby -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/ruby/webrick/config.yml b/quickstarts/ruby/webrick/config.yml index 58051f5977..91519284ae 100644 --- a/quickstarts/ruby/webrick/config.yml +++ b/quickstarts/ruby/webrick/config.yml @@ -31,8 +31,6 @@ documentation: keywords: - apm - ruby -installPlans: - - setup-ruby-agent dataSourceIds: - ruby dashboards: diff --git a/quickstarts/salesforce-eventlog-for-logs/config.yml b/quickstarts/salesforce-eventlog-for-logs/config.yml index c7f5b4bd25..23a37fc257 100644 --- a/quickstarts/salesforce-eventlog-for-logs/config.yml +++ b/quickstarts/salesforce-eventlog-for-logs/config.yml @@ -29,7 +29,7 @@ summary: | Monitoring Salesforce Event Log is critical to ensure that you track events’ trends, and detect suspicious user behavior. Install the New Relic quicksart to proactively monitor Saleforce Event Logs. icon: logo.png level: Community -website: https://developer.salesforce.com/docs/atlas.en-us.api.meta/api/sforce_api_objects_eventlogfile.htm + keywords: - nrlabs - nrlabs-data @@ -49,8 +49,6 @@ documentation: description: | Salesforce Security Dashboard provides visualization into the security details of your salesforce organization. url: https://github.com/newrelic-experimental/newrelic-logs-salesforce-eventlogfile/blob/main/dashboards/sfdc-overview/sfdc-overview.md -installPlans: - - third-party-salesforce-eventlog-for-logs dataSourceIds: - salesforce-eventlog-for-logs dashboards: diff --git a/quickstarts/security/config.yml b/quickstarts/security/config.yml index 098e64169b..be244e22a1 100644 --- a/quickstarts/security/config.yml +++ b/quickstarts/security/config.yml @@ -4,7 +4,7 @@ title: Security Events API description: |+ ## What is the Security Event API? - New Relic's Security Event API is a way to ingest security scanner data into New Relic's Vulnerability Management platform. + New Relic's Security Event API is a way to ingest security scanner data into New Relic's Vulnerability Management platform. ### Get started! @@ -14,7 +14,7 @@ description: |+ ### More info - Check out the [documentation](https://docs.newrelic.com/docs/vulnerability-management/integrations/security-api) to learn more about our Security Event API. + Check out the [documentation](https://docs.newrelic.com/docs/vulnerability-management/integrations/security-api) to learn more about our Security Event API. summary: Ingest scanner data into New Relic by using Security Event API level: New Relic @@ -23,8 +23,6 @@ authors: keywords: - vulnerability management - security -installPlans: - - security-api-install dataSourceIds: - security-api documentation: diff --git a/quickstarts/sendgrid/config.yml b/quickstarts/sendgrid/config.yml index ea3ac4456e..f7171c001c 100644 --- a/quickstarts/sendgrid/config.yml +++ b/quickstarts/sendgrid/config.yml @@ -13,9 +13,6 @@ keywords: - log - NR1_addData - NR1_sys -installPlans: - - third-party-sendgrid-integration - - aws-log-ingestion-s3 dataSourceIds: - sendgrid-integration - amazon-s3 @@ -27,7 +24,6 @@ documentation: url: https://docs.newrelic.com/docs/logs/forward-logs/aws-lambda-sending-logs-s3/ description: Description about how to send logs stored in AWS S3 to New Relic icon: logo.png -website: https://sendgrid.com/ + dashboards: - sendgrid-dashboard - diff --git a/quickstarts/shopify-hydrogen/config.yml b/quickstarts/shopify-hydrogen/config.yml index f76eb73726..37e696d93d 100644 --- a/quickstarts/shopify-hydrogen/config.yml +++ b/quickstarts/shopify-hydrogen/config.yml @@ -32,4 +32,3 @@ documentation: url: https://shopify.dev/docs/custom-storefronts/hydrogen/logging#connecting-a-log-drain description: You can follow this guide to set up a log drain with Shopify Hydrogen. icon: logo.jpg -website: https://shopify.com diff --git a/quickstarts/shopify/config.yml b/quickstarts/shopify/config.yml index 6b546224ff..187e951e7e 100644 --- a/quickstarts/shopify/config.yml +++ b/quickstarts/shopify/config.yml @@ -43,4 +43,3 @@ documentation: url: https://docs.newrelic.com/docs/browser/browser-monitoring/installation/install-browser-monitoring-agent/ description: You can follow this guide to set up our browser agent with your shopify website. icon: logo.jpg -website: https://shopify.com diff --git a/quickstarts/signl4/config.yml b/quickstarts/signl4/config.yml index b0ca1ac3e6..35998ca26b 100644 --- a/quickstarts/signl4/config.yml +++ b/quickstarts/signl4/config.yml @@ -11,8 +11,6 @@ level: Community authors: - Signl4 title: SIGNL4 -installPlans: - - third-party-signl4 dataSourceIds: - signl4 documentation: diff --git a/quickstarts/skykit/config.yml b/quickstarts/skykit/config.yml index 0582b159ff..686c7a7b65 100644 --- a/quickstarts/skykit/config.yml +++ b/quickstarts/skykit/config.yml @@ -40,8 +40,6 @@ documentation: # Content / Design icon: logo.png -website: https://www.skykit.com dataSourceIds: - skykit - diff --git a/quickstarts/snmp/config.yml b/quickstarts/snmp/config.yml index 476377190e..be33d17f71 100644 --- a/quickstarts/snmp/config.yml +++ b/quickstarts/snmp/config.yml @@ -23,8 +23,6 @@ level: New Relic authors: - New Relic title: Legacy SNMP -installPlans: - - third-party-snmp dataSourceIds: - snmp documentation: diff --git a/quickstarts/snyk/config.yml b/quickstarts/snyk/config.yml index 9bb6108c3c..690be030ce 100644 --- a/quickstarts/snyk/config.yml +++ b/quickstarts/snyk/config.yml @@ -23,8 +23,6 @@ keywords: - snyk dashboards: - snyk -installPlans: - - third-party-snyk dataSourceIds: - snyk documentation: @@ -32,4 +30,3 @@ documentation: url: https://docs.snyk.io/snyk-api-info/snyk-webhooks/using-snyk-webhooks-to-integrate-new-relic-with-snyk-through-an-azure-function-app description: Installation and configuration instructions for Snyk and the Snyk quickstart. icon: logo.svg -website: https://www.snyk.io diff --git a/quickstarts/speedscale/config.yml b/quickstarts/speedscale/config.yml index 0a51e0dfeb..81ff5e298c 100644 --- a/quickstarts/speedscale/config.yml +++ b/quickstarts/speedscale/config.yml @@ -2,7 +2,7 @@ id: c4512294-8f81-4efa-8f28-6c1db28d288c slug: speedscale title: Speedscale description: | - Speedscale lets you capture traffic from one environment and replay elsewhere. Use the traffic replay to validate new code performance and functionality. Track the SRE golden signals of latency, throughput, CPU, memory and error metrics before you deploy. Preview your container or API behavior in your CI pipeline without having to write any scripts. Any necessary backends are provided by Speedscale’s mocking technology, which also uses past traffic to generate proper responses you expect during traffic replay. + Speedscale lets you capture traffic from one environment and replay elsewhere. Use the traffic replay to validate new code performance and functionality. Track the SRE golden signals of latency, throughput, CPU, memory and error metrics before you deploy. Preview your container or API behavior in your CI pipeline without having to write any scripts. Any necessary backends are provided by Speedscale’s mocking technology, which also uses past traffic to generate proper responses you expect during traffic replay. Speedscale Snapshots are subsets of traffic that you would like to replay to test how your new code reacts, similar to test scenarios. Deploying this quickstart adds a Speedscale dashboard to your New Relic account that includes replay success rates, response time and deep links to reports. @@ -22,8 +22,6 @@ keywords: - newrelic partner - NR1_addData - NR1_sys -installPlans: - - third-party-speedscale-integration dataSourceIds: - speedscale documentation: @@ -34,6 +32,6 @@ documentation: url: https://discuss.newrelic.com/t/how-to-integrate-with-speedscale/171099 description: Ask questions in the post on New Relic Explorer Hub icon: logo.svg -website: https://speedscale.com + dashboards: - speedscale-reports diff --git a/quickstarts/split/config.yml b/quickstarts/split/config.yml index 0cb6999025..436de63eb1 100644 --- a/quickstarts/split/config.yml +++ b/quickstarts/split/config.yml @@ -11,8 +11,6 @@ level: Community authors: - Split title: Split -installPlans: - - third-party-split dataSourceIds: - split documentation: diff --git a/quickstarts/squadcast/config.yml b/quickstarts/squadcast/config.yml new file mode 100644 index 0000000000..4e8195f6f1 --- /dev/null +++ b/quickstarts/squadcast/config.yml @@ -0,0 +1,26 @@ +id: 2b7360e5-c417-41a0-8171-87554f4b8cea +slug: squadcast +title: Squadcast +description: | + ## About Squadcast + + Squadcast is an incident management and on-call alerting platform, built on DevOps & SRE best practices to help you simplify your incident management process, get meaningful notifications, and collaborate to enable faster incident resolution. + + ### About this integration + + This integration uses New Relic's alerting system to integrate to your Squadcast incident management workflows. + +summary: | + Integrate the New Relic alerting system with Squadcast workflows. +authors: + - New Relic + - Joseph Counts +keywords: + - newrelic partner + - squadcast + - incident management +documentation: + - name: Squadcast New Relic Integration + url: https://support.squadcast.com/integrations/alert-source-integrations-native/new_relic + description: Integrate New Relic as an Alert source for your Squadcast workflows. +icon: logo.png diff --git a/quickstarts/squadcast/logo.png b/quickstarts/squadcast/logo.png new file mode 100644 index 0000000000..708af4984f Binary files /dev/null and b/quickstarts/squadcast/logo.png differ diff --git a/quickstarts/squid-prometheus/config.yml b/quickstarts/squid-prometheus/config.yml index 2969c67bdb..072dbbac86 100644 --- a/quickstarts/squid-prometheus/config.yml +++ b/quickstarts/squid-prometheus/config.yml @@ -26,7 +26,6 @@ level: New Relic # Design icon: logo.png -website: http://www.squid-cache.org/ # Authors of the quickstart authors: @@ -38,9 +37,6 @@ documentation: Caching proxy for the Web supporting different protocols that reduces bandwidth and improves response times. url: https://github.com/newrelic/newrelic-opentelemetry-examples/tree/main/other-examples/collector/squid -installPlans: - - squid-prometheus-integration-docs - dataSourceIds: - squid-prometheus-integration-docs diff --git a/quickstarts/statsd/config.yml b/quickstarts/statsd/config.yml index 7127945460..d0dd1a438b 100644 --- a/quickstarts/statsd/config.yml +++ b/quickstarts/statsd/config.yml @@ -7,7 +7,7 @@ description: | ### Common StatsD use cases - StatsD makes it easier for you to instrument your applications. As a developer or organization, it empowers you to code quickly troubleshoot application issues in real-time, and have absolute control over your data. + StatsD makes it easier for you to instrument your applications. As a developer or organization, it empowers you to code quickly troubleshoot application issues in real-time, and have absolute control over your data. With StatsD, you can collect metrics from your production applications, even before the apps are deployed into production. In addition, resource utilization metrics can be directly linked to product metrics relevant to your organization. @@ -35,7 +35,5 @@ documentation: keywords: - infrastructure - open source monitoring -installPlans: - - third-party-statsd dataSourceIds: - statsd diff --git a/quickstarts/supabase/config.yml b/quickstarts/supabase/config.yml index b4eee9a7c8..d4bc895df3 100644 --- a/quickstarts/supabase/config.yml +++ b/quickstarts/supabase/config.yml @@ -21,8 +21,7 @@ description: | summary: | Monitor your Vector search's performance and quality with New Relic Supabase quickstart icon: logo.png -level: - - New Relic +level: New Relic authors: - New Relic - Ramana Reddy diff --git a/quickstarts/suse-linux-enterprise-server/config.yml b/quickstarts/suse-linux-enterprise-server/config.yml index c37449240d..a33873dbbd 100644 --- a/quickstarts/suse-linux-enterprise-server/config.yml +++ b/quickstarts/suse-linux-enterprise-server/config.yml @@ -24,7 +24,5 @@ documentation: keywords: - os - operating system -installPlans: - - guided-install dataSourceIds: - guided-install diff --git a/quickstarts/sybase/config.yml b/quickstarts/sybase/config.yml index 3cf1da3c2b..87e317d0c9 100644 --- a/quickstarts/sybase/config.yml +++ b/quickstarts/sybase/config.yml @@ -4,11 +4,11 @@ title: Sybase description: |- ## Quickstart for Sybase monitoring - Sybase is a relational database software solution. + Sybase is a relational database software solution. ### New Relic Sybase quickstart features - With monitoring statistics enabled, you can observe key metrics such as the number of connections, execution times, statement cache, process activity, threads, and more. + With monitoring statistics enabled, you can observe key metrics such as the number of connections, execution times, statement cache, process activity, threads, and more. ### Sybase Quickstart instructions @@ -24,8 +24,6 @@ keywords: - sap - ase - adaptive server enterprise -installPlans: - - sybase-integration dataSourceIds: - sybase-integration dashboards: @@ -35,5 +33,3 @@ documentation: url: https://github.com/newrelic-experimental/nri-db description: Monitor SAP Adaptive Server Enterprise (Sybase) icon: logo.svg -website: https://www.newrelic.com - diff --git a/quickstarts/synthetics-optimization/config.yml b/quickstarts/synthetics-optimization/config.yml index 7cad530d1a..761eef39c2 100644 --- a/quickstarts/synthetics-optimization/config.yml +++ b/quickstarts/synthetics-optimization/config.yml @@ -24,9 +24,6 @@ documentation: description: | This document provides additional queries that can be run to determine Synthetics usage. icon: logo.png -website: https://www.newrelic.com -installPlans: - - third-party-synthetics-endpoint-availability dataSourceIds: - new-relic-synthetics dashboards: diff --git a/quickstarts/synthetics/availability/config.yml b/quickstarts/synthetics/availability/config.yml index e3bbc26112..01b3e9b53b 100644 --- a/quickstarts/synthetics/availability/config.yml +++ b/quickstarts/synthetics/availability/config.yml @@ -23,8 +23,6 @@ keywords: - url - www - synthetics -installPlans: - - third-party-synthetics-availability dataSourceIds: - new-relic-synthetics documentation: @@ -32,4 +30,3 @@ documentation: url: https://docs.newrelic.com/docs/synthetics/synthetic-monitoring/getting-started/get-started-synthetic-monitoring/ description: Get started with Synthetic monitoring icon: logo.svg -website: https://www.newrelic.com diff --git a/quickstarts/synthetics/endpoint-availability/config.yml b/quickstarts/synthetics/endpoint-availability/config.yml index 297c15c962..ff85957062 100644 --- a/quickstarts/synthetics/endpoint-availability/config.yml +++ b/quickstarts/synthetics/endpoint-availability/config.yml @@ -20,8 +20,6 @@ keywords: - url - www - synthetics -installPlans: - - third-party-synthetics-endpoint-availability dataSourceIds: - new-relic-synthetics documentation: @@ -29,4 +27,3 @@ documentation: url: https://docs.newrelic.com/docs/synthetics/synthetic-monitoring/getting-started/get-started-synthetic-monitoring/ description: Get started with synthetic monitoring icon: logo.svg -website: https://www.newrelic.com diff --git a/quickstarts/synthetics/page-link-crawler/config.yml b/quickstarts/synthetics/page-link-crawler/config.yml index 5bdac41246..923692c0e4 100644 --- a/quickstarts/synthetics/page-link-crawler/config.yml +++ b/quickstarts/synthetics/page-link-crawler/config.yml @@ -30,8 +30,6 @@ keywords: - url - www - synthetics -installPlans: - - third-party-synthetics-page-link-crawler dataSourceIds: - new-relic-synthetics documentation: @@ -39,7 +37,7 @@ documentation: url: https://docs.newrelic.com/docs/synthetics/synthetic-monitoring/getting-started/get-started-synthetic-monitoring/ description: Get started with synthetic monitoring icon: logo.svg -website: https://www.newrelic.com + dashboards: - page-link-crawler alertPolicies: diff --git a/quickstarts/synthetics/page-load-performance/config.yml b/quickstarts/synthetics/page-load-performance/config.yml index a5795c3541..1ad3ce1b0f 100644 --- a/quickstarts/synthetics/page-load-performance/config.yml +++ b/quickstarts/synthetics/page-load-performance/config.yml @@ -23,8 +23,6 @@ keywords: - url - www - synthetics -installPlans: - - third-party-synthetics-page-load-performance dataSourceIds: - new-relic-synthetics documentation: @@ -32,4 +30,3 @@ documentation: url: https://docs.newrelic.com/docs/synthetics/synthetic-monitoring/getting-started/get-started-synthetic-monitoring/ description: Get started with synthetic monitoring icon: logo.svg -website: https://www.newrelic.com diff --git a/quickstarts/synthetics/private-locations/config.yml b/quickstarts/synthetics/private-locations/config.yml index 87798cbe0c..e6cc2fdf67 100644 --- a/quickstarts/synthetics/private-locations/config.yml +++ b/quickstarts/synthetics/private-locations/config.yml @@ -36,8 +36,6 @@ keywords: - minion - minion dashboard - synthetics -installPlans: - - synthetics-private-locations dataSourceIds: - synthetics-private-locations documentation: @@ -45,7 +43,6 @@ documentation: url: https://docs.newrelic.com/docs/synthetics/synthetic-monitoring/private-locations/monitor-private-locations description: Be informed about the health of your private locations. icon: logo.svg -website: https://www.newrelic.com + dashboards: - synthetics-private-minions - diff --git a/quickstarts/synthetics/ssl-certification-check/config.yml b/quickstarts/synthetics/ssl-certification-check/config.yml index e233d94420..f7e1e6d139 100644 --- a/quickstarts/synthetics/ssl-certification-check/config.yml +++ b/quickstarts/synthetics/ssl-certification-check/config.yml @@ -20,8 +20,6 @@ keywords: - url - www - synthetics -installPlans: - - third-party-synthetics-ssl-certification-check dataSourceIds: - new-relic-synthetics documentation: @@ -29,4 +27,3 @@ documentation: url: https://docs.newrelic.com/docs/synthetics/synthetic-monitoring/getting-started/get-started-synthetic-monitoring/ description: Get started with synthetic monitoring icon: logo.svg -website: https://www.newrelic.com diff --git a/quickstarts/synthetics/user-flow/config.yml b/quickstarts/synthetics/user-flow/config.yml index db1dbc420d..1801c14058 100644 --- a/quickstarts/synthetics/user-flow/config.yml +++ b/quickstarts/synthetics/user-flow/config.yml @@ -26,9 +26,6 @@ documentation: - name: Getting started url: https://docs.newrelic.com/docs/synthetics/synthetic-monitoring/getting-started/get-started-synthetic-monitoring/ description: Get started with synthetic monitoring -installPlans: - - third-party-synthetics-user-flow dataSourceIds: - new-relic-synthetics icon: logo.svg -website: https://www.newrelic.com diff --git a/quickstarts/synthetics/user-step-execution/config.yml b/quickstarts/synthetics/user-step-execution/config.yml index 6de5f097c6..75defa5a27 100644 --- a/quickstarts/synthetics/user-step-execution/config.yml +++ b/quickstarts/synthetics/user-step-execution/config.yml @@ -38,9 +38,6 @@ documentation: - name: Getting started url: https://docs.newrelic.com/docs/synthetics/synthetic-monitoring/getting-started/get-started-synthetic-monitoring/ description: Get started with synthetic monitoring -installPlans: - - third-party-synthetics-user-step-execution dataSourceIds: - new-relic-synthetics icon: logo.svg -website: https://www.newrelic.com diff --git a/quickstarts/tidbcloud/config.yml b/quickstarts/tidbcloud/config.yml index 6c202300cb..2b1f2b145d 100644 --- a/quickstarts/tidbcloud/config.yml +++ b/quickstarts/tidbcloud/config.yml @@ -11,16 +11,16 @@ title: TiDB Cloud description: |- ## Quickstart for TiDB Cloud monitoring TiDB Cloud is a fully-managed Database-as-a-Service (DBaaS) solution for TiDB, an open-source, distributed SQL database that is designed to handle both online transaction processing (OLTP) and online analytical processing (OLAP) workloads. - + ### New Relic TiDB Cloud quickstart features With monitoring statistics enabled, you can observe key metrics to analyze the performance of your cluster. - + ### TiDBCloud Quickstart instructions Check out [Metrics available to New Relic](https://docs.pingcap.com/tidbcloud/monitor-new-relic-integration#metrics-available-to-new-relic) to learn more about New Relic monitoring for TiDBCloud. # Displayed in search results and recommendations. Summarizes a quickstarts functionality. summary: | - New Relic's TiDB Cloud quickstart provides performance insights including database time, queries per second, and resource utilization. Install the quickstart to better understand utilization of resources and monitor performance issues. + New Relic's TiDB Cloud quickstart provides performance insights including database time, queries per second, and resource utilization. Install the quickstart to better understand utilization of resources and monitor performance issues. # Support level: New Relic | Verified | Community (required) level: Community @@ -45,4 +45,3 @@ documentation: # Content / Design icon: logo.svg -website: https://tidbcloud.com/ diff --git a/quickstarts/traceloop/config.yml b/quickstarts/traceloop/config.yml index 373ff15744..d87ef91284 100644 --- a/quickstarts/traceloop/config.yml +++ b/quickstarts/traceloop/config.yml @@ -1,3 +1,4 @@ +id: e570113f-4cbd-4ae3-9a7c-582533843303 slug: traceloop description: | ## Why monitor Traceloop? diff --git a/quickstarts/traefik/config.yml b/quickstarts/traefik/config.yml index 054c90ca9e..aa50dcc725 100644 --- a/quickstarts/traefik/config.yml +++ b/quickstarts/traefik/config.yml @@ -25,9 +25,6 @@ documentation: description: | Traefik Integration Documentation url: https://docs.newrelic.com/docs/infrastructure/prometheus-integrations/integrations-list/traefik-integration -installPlans: - - setup-prometheus - - setup-prometheus-agent-mode dataSourceIds: - prometheus - prometheus-agent-mode diff --git a/quickstarts/trendmicro-cloudone-conformity/config.yml b/quickstarts/trendmicro-cloudone-conformity/config.yml index 67ff6e3b2d..48197997e5 100644 --- a/quickstarts/trendmicro-cloudone-conformity/config.yml +++ b/quickstarts/trendmicro-cloudone-conformity/config.yml @@ -11,7 +11,7 @@ summary: | New Relic’s integration with Trend Micro Cloud One - Conformity ingests cloud security posture management (CSPM) data from Conformity into New Relic in real-time. level: Verified icon: logo.png -website: https://www.trendmicro.com/en_us/partners/alliance-partners/explore-alliance-partners/new-relic.html + authors: - Trend Micro - Rohit Kaul @@ -25,8 +25,6 @@ documentation: - name: Trend Micro blog post description: Learn more about the integration on Trend Micro's blog post url: https://www.trendmicro.com/en_us/devops/21/f/how-to-achieve-more-security-observability.html -installPlans: - - third-party-trendmicro-cloudone-conformity dataSourceIds: - trendmicro-cloudone-conformity keywords: diff --git a/quickstarts/trivy/config.yml b/quickstarts/trivy/config.yml index c89f170584..25b47f4495 100644 --- a/quickstarts/trivy/config.yml +++ b/quickstarts/trivy/config.yml @@ -8,7 +8,7 @@ description: |+ ### What is the Security Event API? - New Relic's Security Event API is a way to ingest security scanner data into New Relic's Vulnerability Management platform. + New Relic's Security Event API is a way to ingest security scanner data into New Relic's Vulnerability Management platform. ### Get started! @@ -24,7 +24,7 @@ description: |+ ### More info - Check out the [documentation](https://docs.newrelic.com/docs/vulnerability-management/integrations/security-api) to learn more about our Security Event API. + Check out the [documentation](https://docs.newrelic.com/docs/vulnerability-management/integrations/security-api) to learn more about our Security Event API. summary: Ingest Trivy vulnerability data into New Relic by using Security Event API level: New Relic @@ -34,8 +34,6 @@ keywords: - vulnerability management - security - trivy -installPlans: - - trivy-api-install dataSourceIds: - trivy documentation: diff --git a/quickstarts/tvos/config.yml b/quickstarts/tvos/config.yml index 2d9f5f4548..f5f3dc3bc3 100644 --- a/quickstarts/tvos/config.yml +++ b/quickstarts/tvos/config.yml @@ -21,10 +21,7 @@ documentation: Default operating system for Apple media streaming devices, including the Apple TV. url: https://docs.newrelic.com/docs/mobile-monitoring/new-relic-mobile-ios/tvos/tvos-installation-configuration -installPlans: - - tvos-mobile dataSourceIds: - tvos-mobile keywords: - mobile - diff --git a/quickstarts/typesense/config.yml b/quickstarts/typesense/config.yml index 15ff7d67e9..d0170c8849 100644 --- a/quickstarts/typesense/config.yml +++ b/quickstarts/typesense/config.yml @@ -21,8 +21,7 @@ description: | summary: | Monitor your Vector search's performance and quality with New Relic Typesense quickstart icon: logo.svg -level: - - New Relic +level: New Relic authors: - New Relic - Ramana Reddy diff --git a/quickstarts/ubuntu/config.yml b/quickstarts/ubuntu/config.yml index c91e86ba1b..c88be5e926 100644 --- a/quickstarts/ubuntu/config.yml +++ b/quickstarts/ubuntu/config.yml @@ -24,7 +24,5 @@ documentation: keywords: - os - operating system -installPlans: - - guided-install dataSourceIds: - guided-install diff --git a/quickstarts/unix/config.yml b/quickstarts/unix/config.yml index 2592b574e5..f33490ebab 100644 --- a/quickstarts/unix/config.yml +++ b/quickstarts/unix/config.yml @@ -17,8 +17,6 @@ documentation: The Unix monitoring integration allows for system-level monitoring of AIX, Linux, macOS, Solaris/SunOS and other Unix-based servers. url: https://docs.newrelic.com/docs/integrations/host-integrations/open-source-host-integrations-list/unix-monitoring-open-source-integration -installPlans: - - third-party-unix dataSourceIds: - unix dashboards: diff --git a/quickstarts/vantage/config.yml b/quickstarts/vantage/config.yml new file mode 100644 index 0000000000..8cedc64021 --- /dev/null +++ b/quickstarts/vantage/config.yml @@ -0,0 +1,30 @@ +id: face2399-4442-4eab-95e5-0be1b29b8eba +slug: vantage +description: | + ## What is Vantage? + Vantage is a cloud cost observability tool to help optimize your cloud costs and get visibility into your full cloud spend. + + ### Vantage & New Relic + This integration will allow Vantage to monitor your New Relic spend alongside your other cloud application resources. + +summary: | + Monitor your full cloud cost from New Relic alongside cloud spend like AWS, Azure, or GCP. +icon: logo.png +level: New Relic +authors: + - New Relic + - Joseph Counts +title: Vantage +documentation: + - name: Vantage integration documentation + description: | + Integrate your Vantage account with New Relic via New Relic's Nerdgraph API. + url: https://docs.vantage.sh/connecting_new_relic +keywords: + - cost + - pricing + - spend + - cloud + - vantage +dataSourceIds: + - vantage \ No newline at end of file diff --git a/quickstarts/vantage/logo.png b/quickstarts/vantage/logo.png new file mode 100644 index 0000000000..68c677783a Binary files /dev/null and b/quickstarts/vantage/logo.png differ diff --git a/quickstarts/varnish/config.yml b/quickstarts/varnish/config.yml index 427c554f78..f231e51a69 100644 --- a/quickstarts/varnish/config.yml +++ b/quickstarts/varnish/config.yml @@ -27,7 +27,7 @@ summary: | Varnish is a scalable web cache which improves site loading speed and content serving. New Relic’s monitoring tool enables real-time insights into cache performance, allowing users to maintain the value that Varnish promises. level: New Relic icon: logo.png -website: https://varnish-cache.org/ + authors: - New Relic - Jakub Kotkowiak @@ -36,8 +36,6 @@ documentation: description: | Reverse caching proxy for HTTP built to accelerate web application performance. url: https://docs.newrelic.com/docs/integrations/host-integrations/host-integrations-list/varnish-cache-monitoring-integration/ -installPlans: - - varnish-cache-integration dataSourceIds: - varnish keywords: diff --git a/quickstarts/velero-prometheus/config.yml b/quickstarts/velero-prometheus/config.yml index 69bd8abb8c..52baf2d757 100644 --- a/quickstarts/velero-prometheus/config.yml +++ b/quickstarts/velero-prometheus/config.yml @@ -10,14 +10,14 @@ description: |+ ### New Relic - a perfect tool to monitor Velero using Prometheus. - Velero has become an important part of Kubernetes architectures, providing features to ensure continuity of state during disaster recover, and ease the burden of systems migration. + Velero has become an important part of Kubernetes architectures, providing features to ensure continuity of state during disaster recover, and ease the burden of systems migration. Using the [New Relic Prometheus Remote-Write](https://docs.newrelic.com/docs/infrastructure/prometheus-integrations/install-configure-remote-write/set-your-prometheus-remote-write-integration/) integration you can deliver your critical Velero metrics from your internally supported instance of Prometheus directly to New Relic where the rest of your observability data resides. ### New Relic Velero quickstart features Our Velero Quickstart include out-of-the-box dashboards and alerts, including data such as: - - Overview Schedules (# successes, # failures) + charts with duration and sizes of backups + - Overview Schedules (# successes, # failures) + charts with duration and sizes of backups ### Value of the Velero (Prometheus) quickstart @@ -36,8 +36,6 @@ keywords: - kubernetes - disaster recovery - featured -installPlans: - - setup-prometheus dataSourceIds: - prometheus documentation: @@ -56,7 +54,7 @@ documentation: # Content / Design icon: logo.png -website: https://velero.io + dashboards: - velero-prometheus alertPolicies: diff --git a/quickstarts/vercel/config.yml b/quickstarts/vercel/config.yml index 9561f27f04..028f51a3e6 100644 --- a/quickstarts/vercel/config.yml +++ b/quickstarts/vercel/config.yml @@ -61,8 +61,6 @@ keywords: # Reference to install plans located under /install directory # Allows us to construct reusable "install plans" and just use their ID in the quickstart config -installPlans: - - third-party-vercel dataSourceIds: - vercel documentation: @@ -71,7 +69,7 @@ documentation: description: Send Vercel data to New Relic icon: logo.svg -website: https://vercel.com/ + dashboards: - vercel alertPolicies: diff --git a/quickstarts/video/video-android/config.yml b/quickstarts/video/video-android/config.yml index 3b4b449f75..2f1c8b6d14 100644 --- a/quickstarts/video/video-android/config.yml +++ b/quickstarts/video/video-android/config.yml @@ -12,8 +12,6 @@ keywords: - video - tracking - Android -installPlans: - - third-party-video-android dataSourceIds: - video-android documentation: @@ -21,4 +19,3 @@ documentation: url: https://github.com/newrelic/video-agent-android description: Agent to monitor video applications for Android. icon: logo.svg - diff --git a/quickstarts/video/video-chromecast/config.yml b/quickstarts/video/video-chromecast/config.yml index 51444a49a1..3b4ac01f08 100644 --- a/quickstarts/video/video-chromecast/config.yml +++ b/quickstarts/video/video-chromecast/config.yml @@ -17,7 +17,5 @@ documentation: url: https://github.com/newrelic/video-caf-js description: Agent to monitor video applications for Chromecast. icon: logo.svg -installPlans: - - third-party-video-chromecast dataSourceIds: - video-chromecast diff --git a/quickstarts/video/video-ios-tvos/config.yml b/quickstarts/video/video-ios-tvos/config.yml index da3bc6271a..4143b5bfdf 100644 --- a/quickstarts/video/video-ios-tvos/config.yml +++ b/quickstarts/video/video-ios-tvos/config.yml @@ -18,7 +18,5 @@ documentation: url: https://github.com/newrelic/video-agent-iOS description: Agent to monitor video applications for iOS and tvOS. icon: logo.png -installPlans: - - third-party-video-ios-tvos dataSourceIds: - video-ios-tvos diff --git a/quickstarts/video/video-web/video-web-akamai/config.yml b/quickstarts/video/video-web/video-web-akamai/config.yml index c7555c2939..0216f37b32 100644 --- a/quickstarts/video/video-web/video-web-akamai/config.yml +++ b/quickstarts/video/video-web/video-web-akamai/config.yml @@ -34,9 +34,6 @@ documentation: - name: Video Akamai Installation Docs url: https://github.com/newrelic/video-akamai-js description: Agent to monitor video applications using Akamai player. -installPlans: - - browser-docs - - video-web-akamai dataSourceIds: - new-relic-browser - video-web-akamai diff --git a/quickstarts/video/video-web/video-web-html5/config.yml b/quickstarts/video/video-web/video-web-html5/config.yml index d06327f647..b692fb9f94 100644 --- a/quickstarts/video/video-web/video-web-html5/config.yml +++ b/quickstarts/video/video-web/video-web-html5/config.yml @@ -16,9 +16,6 @@ documentation: - name: Video HTML5 Installation Docs url: https://github.com/newrelic/video-html5-js description: Agent to monitor video applications using HTML5 player. -installPlans: - - browser-docs - - video-web-html5 dataSourceIds: - new-relic-browser - video-web-html5 diff --git a/quickstarts/video/video-web/video-web-jwplayer/config.yml b/quickstarts/video/video-web/video-web-jwplayer/config.yml index 6527ce6470..a6bfc0503f 100644 --- a/quickstarts/video/video-web/video-web-jwplayer/config.yml +++ b/quickstarts/video/video-web/video-web-jwplayer/config.yml @@ -16,9 +16,6 @@ documentation: - name: Video JWPlayer Installation Docs url: https://github.com/newrelic/video-jwplayer-js description: Agent to monitor video applications using JWPlayer. -installPlans: - - browser-docs - - video-web-jwplayer dataSourceIds: - new-relic-browser - video-web-jwplayer diff --git a/quickstarts/video/video-web/video-web-theplatform/config.yml b/quickstarts/video/video-web/video-web-theplatform/config.yml index f07472ee9e..0813adcde2 100644 --- a/quickstarts/video/video-web/video-web-theplatform/config.yml +++ b/quickstarts/video/video-web/video-web-theplatform/config.yml @@ -16,9 +16,6 @@ documentation: - name: Video The Platform Installation Docs url: https://github.com/newrelic/video-theplatform-js description: Agent to monitor video applications using The Platform player. -installPlans: - - browser-docs - - video-web-theplatform dataSourceIds: - new-relic-browser - video-web-theplatform diff --git a/quickstarts/video/video-web/video-web-videojs/config.yml b/quickstarts/video/video-web/video-web-videojs/config.yml index 539adc69e0..f3828fad57 100644 --- a/quickstarts/video/video-web/video-web-videojs/config.yml +++ b/quickstarts/video/video-web/video-web-videojs/config.yml @@ -16,9 +16,6 @@ documentation: - name: Video VideoJS Installation Docs url: https://github.com/newrelic/video-videojs-js description: Agent to monitor video applications using VideoJS player. -installPlans: - - browser-docs - - video-web-videojs dataSourceIds: - new-relic-browser - video-web-videojs diff --git a/quickstarts/vmware/vmware-tanzu/config.yml b/quickstarts/vmware/vmware-tanzu/config.yml index a87fc4c37c..69b072aa77 100644 --- a/quickstarts/vmware/vmware-tanzu/config.yml +++ b/quickstarts/vmware/vmware-tanzu/config.yml @@ -15,7 +15,5 @@ keywords: - infrastructure - kubernetes - k8s -installPlans: - - third-party-vmware-tanzu dataSourceIds: - vmware-tanzu diff --git a/quickstarts/vmware/vmware-vsphere/config.yml b/quickstarts/vmware/vmware-vsphere/config.yml index 1db5d523c7..06858fc8f4 100644 --- a/quickstarts/vmware/vmware-vsphere/config.yml +++ b/quickstarts/vmware/vmware-vsphere/config.yml @@ -16,8 +16,6 @@ keywords: - vsphere - esxi - vcenter -installPlans: - - vsphere-integration dataSourceIds: - vmware-vsphere alertPolicies: diff --git a/quickstarts/windows/windows-certs/config.yml b/quickstarts/windows/windows-certs/config.yml index 1c7749230b..2ef594a0da 100644 --- a/quickstarts/windows/windows-certs/config.yml +++ b/quickstarts/windows/windows-certs/config.yml @@ -7,11 +7,11 @@ title: Windows Local Certs # Long-form description of the quickstart (required) description: | - The quickstart shares an example of how to get started with getting visibility into the local certificates in your Windows environment. Within this bundle you'll find information on the instrumentation (via Flex on NR Infrastructure Agent), as well as a starter dashboard that will be added to your account. + The quickstart shares an example of how to get started with getting visibility into the local certificates in your Windows environment. Within this bundle you'll find information on the instrumentation (via Flex on NR Infrastructure Agent), as well as a starter dashboard that will be added to your account. # Displayed in search results and recommendations. Summarizes a quickstarts functionality. summary: | - Get visibility into the local certificates running on a Windows machine. + Get visibility into the local certificates running on a Windows machine. # Support level: New Relic | Verified | Community (required) level: Community @@ -46,7 +46,5 @@ documentation: - name: Get started with this flex integration url: https://github.com/newrelic/nri-flex/tree/master/examples/windows/WindowsExpCertSample description: github link with the example integration set up as well as the documentation and overview. - # Content / Design -website: https://www.newrelic.com diff --git a/quickstarts/windows/windows-desktop/config.yml b/quickstarts/windows/windows-desktop/config.yml index 0e160baa0c..745ded2245 100644 --- a/quickstarts/windows/windows-desktop/config.yml +++ b/quickstarts/windows/windows-desktop/config.yml @@ -24,9 +24,6 @@ documentation: - name: Get started with infrastructure monitoring url: https://docs.newrelic.com/docs/infrastructure/infrastructure-monitoring/get-started/get-started-infrastructure-monitoring/ description: Learn more about New Relic infrastructure -installPlans: - - guided-install dataSourceIds: - guided-install icon: logo.svg -website: https://www.microsoft.com/en-us/windows diff --git a/quickstarts/windows/windows-server/config.yml b/quickstarts/windows/windows-server/config.yml index d2adf4ae6a..1aa1d79686 100644 --- a/quickstarts/windows/windows-server/config.yml +++ b/quickstarts/windows/windows-server/config.yml @@ -24,9 +24,6 @@ documentation: - name: Get started with infrastructure monitoring url: https://docs.newrelic.com/docs/infrastructure/infrastructure-monitoring/get-started/get-started-infrastructure-monitoring/ description: Learn more about New Relic infrastructure -installPlans: - - guided-install dataSourceIds: - guided-install icon: logo.svg -website: https://www.microsoft.com/en-us/windows diff --git a/quickstarts/winservices/config.yml b/quickstarts/winservices/config.yml index c1818f500b..194f465824 100644 --- a/quickstarts/winservices/config.yml +++ b/quickstarts/winservices/config.yml @@ -4,15 +4,15 @@ title: Windows Services description: | ## Windows Services - New Relic's Windows services integration collects data about the services running on your Microsoft Windows hosts and sends it to our platform. + New Relic's Windows services integration collects data about the services running on your Microsoft Windows hosts and sends it to our platform. You can check the state and start mode of each service, find out which hosts are running a service, set up alerts for services, and more. Our integration is bundled with the Windows infrastructure agent. If you're monitoring Windows hosts on New Relic, you only need to enable the integration to get Windows services data into our platform. ### Why it matters - Microsoft Windows services are the Windows equivalent of daemons in Unix and Linux: - long-running executables that can be started, stopped, paused, and restarted without a graphical interface. + Microsoft Windows services are the Windows equivalent of daemons in Unix and Linux: + long-running executables that can be started, stopped, paused, and restarted without a graphical interface. Knowing which services are enabled, or their state or health, is essential when monitoring Windows infrastructure. @@ -25,7 +25,7 @@ summary: | New Relic's Windows services integration collects data about the services running on your Microsoft Windows hosts level: New Relic icon: logo.svg -website: https://www.microsoft.com/en-us/windows + keywords: - windows - microsoft @@ -38,10 +38,8 @@ authors: documentation: - name: Windows Services monitoring integration description: | - New Relic's Windows services integration collects data about the services running on your Microsoft Windows hosts and sends it to our platform. + New Relic's Windows services integration collects data about the services running on your Microsoft Windows hosts and sends it to our platform. url: https://docs.newrelic.com/docs/infrastructure/host-integrations/host-integrations-list/windows-services-integration/ -installPlans: - - winservices-integration-docs dataSourceIds: - winservices-integration-docs dashboards: diff --git a/quickstarts/wordpress/config.yml b/quickstarts/wordpress/config.yml index 86bda0b2d4..d3f49f191f 100644 --- a/quickstarts/wordpress/config.yml +++ b/quickstarts/wordpress/config.yml @@ -30,8 +30,6 @@ documentation: Monitoring for the self-hosted version of the popular CMS and blogging tool. url: https://docs.newrelic.com/docs/agents/php-agent/getting-started/php-agent-compatibility-requirements -installPlans: - - php-agent dataSourceIds: - php keywords: diff --git a/quickstarts/xamarin/config.yml b/quickstarts/xamarin/config.yml index 17edd25042..3bf4aabce0 100644 --- a/quickstarts/xamarin/config.yml +++ b/quickstarts/xamarin/config.yml @@ -7,7 +7,7 @@ summary: | This project provides Xamarin bindings for New Relic's iOS and Android SDK's level: Community icon: logo.png -website: https://dotnet.microsoft.com/apps/xamarin + authors: - New Relic Labs keywords: @@ -16,8 +16,6 @@ keywords: - xamarin - hybrid mobile - C-sharp mobile -installPlans: - - third-party-xamarin dataSourceIds: - xamarin documentation: diff --git a/quickstarts/xmatters/config.yml b/quickstarts/xmatters/config.yml index 680e459f01..dd12088b6d 100644 --- a/quickstarts/xmatters/config.yml +++ b/quickstarts/xmatters/config.yml @@ -27,7 +27,5 @@ documentation: keywords: - xmatters - alerts -installPlans: - - third-party-xmatters dataSourceIds: - xmatters diff --git a/quickstarts/zebrium/config.yml b/quickstarts/zebrium/config.yml index a7a788a132..1fa4c19aec 100644 --- a/quickstarts/zebrium/config.yml +++ b/quickstarts/zebrium/config.yml @@ -9,7 +9,7 @@ description: | ### How to use Zebrium - - Send your logs to Zebrium by installing an open source log collector (Zebrium does not retain your logs, it analyzes them inline). + - Send your logs to Zebrium by installing an open source log collector (Zebrium does not retain your logs, it analyzes them inline). - When you know there is a problem, simply look at the Zebrium dashboard and you will see root cause indicators to explain what happened ### Benefits @@ -42,8 +42,6 @@ keywords: - sre - NR1_addData - NR1_sys -installPlans: - - third-party-zebrium dataSourceIds: - zebrium documentation: @@ -51,6 +49,6 @@ documentation: url: https://docs.zebrium.com/docs/monitoring/newrelic description: Step-by-step instructions for installing the Zebrium New Relic integration icon: logo.png -website: https://www.zebrium.com + dashboards: - zebrium-rcaas diff --git a/quickstarts/zenduty/config.yml b/quickstarts/zenduty/config.yml index 77ecf69929..f6d482076c 100644 --- a/quickstarts/zenduty/config.yml +++ b/quickstarts/zenduty/config.yml @@ -14,7 +14,7 @@ description: | Check out the [Zenduty documentation](https://docs.zenduty.com/docs/newrelic) to learn how to setup best in class alerts around the New Relic APM. summary: | - Zenduty provides robust incident response, automation and notification abilities when you send your New Relic alerts to Zenduty. + Zenduty provides robust incident response, automation and notification abilities when you send your New Relic alerts to Zenduty. level: Community authors: - Zenduty @@ -33,8 +33,6 @@ documentation: url: https://docs.zenduty.com/docs/newrelic description: Send your New Relic alerts to Zenduty icon: logo.png -website: https://www.zenduty.com -installPlans: - - third-party-zenduty + dataSourceIds: - zenduty diff --git a/quickstarts/zipkin/config.yml b/quickstarts/zipkin/config.yml index a7be8929cd..5c9e02932c 100644 --- a/quickstarts/zipkin/config.yml +++ b/quickstarts/zipkin/config.yml @@ -23,7 +23,5 @@ documentation: keywords: - tracing - apm -installPlans: - - third-party-zipkin dataSourceIds: - zipkin diff --git a/utils/__tests__/build-validate-quickstart-artifact.test.js b/utils/__tests__/build-validate-quickstart-artifact.test.js new file mode 100644 index 0000000000..f6a809f757 --- /dev/null +++ b/utils/__tests__/build-validate-quickstart-artifact.test.js @@ -0,0 +1,142 @@ +import * as path from 'path'; +import Quickstart from '../lib/Quickstart'; +import DataSource from '../lib/DataSource'; +import Alert from '../lib/Alert'; +import Dashboard from '../lib/Dashboard'; +import { + getArtifactComponents, + validateArtifact, +} from '../build-validate-quickstart-artifact'; + +const MOCK_FILES_BASEPATH = path.resolve(__dirname, '..', 'mock_files'); + +const mockQuickstart1 = new Quickstart( + '/quickstarts/mock-quickstart-1/config.yml', + MOCK_FILES_BASEPATH +); + +const mockQuickstart2 = new Quickstart( + 'quickstarts/mock-quickstart-2/config.yml', + MOCK_FILES_BASEPATH +); + +const mockDataSource1 = new DataSource( + 'test-data-source', + MOCK_FILES_BASEPATH +) + +const mockAlert1 = new Alert( + 'mock-alert-policy-1', + MOCK_FILES_BASEPATH +); + +const mockDashboard1 = new Dashboard('mock-dashboard-1', MOCK_FILES_BASEPATH); + +describe('built-validate-quickstart-artifact', () => { + beforeEach(() => { + // disable normal logging used as feedback while script runs + jest.spyOn(console, 'log').mockImplementation(() => {}); + }); + + describe('build', () => { + it('should find all of the components', () => { + Quickstart.getAll = jest + .fn() + .mockReturnValueOnce([mockQuickstart1, mockQuickstart2]); + + DataSource.getAll = jest.fn().mockReturnValueOnce([mockDataSource1]); + + Alert.getAll = jest.fn().mockReturnValueOnce([mockAlert1]); + Dashboard.getAll = jest.fn().mockReturnValueOnce([mockDashboard1]); + + const actual = getArtifactComponents(); + + expect(actual.quickstarts).toHaveLength(2); + expect(actual.quickstarts[0].dashboards).toEqual([]); + expect(actual.quickstarts[1].dashboards).toEqual(['mock-dashboard-1']); + + expect(actual.dataSources).toHaveLength(1); + expect(actual.dataSources[0].id).toEqual('test-data-source'); + + expect(Object.keys(actual.alerts)).toHaveLength(1); + expect(Object.keys(actual.alerts)).toContain('mock-alert-policy-1'); + + expect(Object.keys(actual.dashboards)).toHaveLength(1); + expect(Object.keys(actual.dashboards)).toContain('mock-dashboard-1'); + }); + }); + + describe('validate', () => { + const TEST_SCHEMA = { + type: 'object', + properties: { + quickstarts: { type: 'array' }, + alerts: { type: 'object' }, + dashboards: { type: 'object' }, + dataSources: { + type: 'array', + items: { + type: 'object', + properties: { + id: { type: 'string' }, + title: { type: 'string' }, + }, + }, + }, + getDataSourceIds: { type: 'array', items: { type: 'string' } }, + }, + }; + + it('should correctly build and validate valid artifacts with no errors', () => { + Quickstart.getAll = jest.fn().mockReturnValueOnce([]); + Alert.getAll = jest.fn().mockReturnValueOnce([]); + Dashboard.getAll = jest.fn().mockReturnValueOnce([]); + DataSource.getAll = jest + .fn() + .mockReturnValueOnce([ + mockDataSource1 + ]); + + const components = getArtifactComponents(); + + const artifact = { ...components, dataSourceIds: ['core-1', 'core-2'] }; + + const actual = validateArtifact(TEST_SCHEMA, artifact); + + expect(actual).toHaveLength(0); + }); + + it('should correctly return errors for an invalid artifact', () => { + Quickstart.getAll = jest.fn().mockReturnValueOnce([]); + Alert.getAll = jest.fn().mockReturnValueOnce([]); + Dashboard.getAll = jest.fn().mockReturnValueOnce([]); + DataSource.getAll = jest.fn().mockReturnValueOnce([]); + + const components = getArtifactComponents(); + + const artifact = { + ...components, + dataSources: [ + { id: 'community-1', title: 'DataSource 1' }, + { id: false, title: 'DataSource 2' }, + { id: 'community-3', title: 3 }, + ], + dataSourceIds: ['core-1', 'core-2'], + }; + + const actual = validateArtifact(TEST_SCHEMA, artifact); + + expect(actual).toHaveLength(2); + expect(actual).toEqual( + expect.arrayContaining([ + expect.objectContaining({ + instancePath: '/dataSources/1/id', + }), + expect.objectContaining({ + instancePath: '/dataSources/2/title', + }), + ]) + ); + }); + }); +}); diff --git a/utils/__tests__/create-validate-pr-quickstarts.test.js b/utils/__tests__/create-validate-pr-quickstarts.test.js index 992f84ac98..90d5c376b1 100644 --- a/utils/__tests__/create-validate-pr-quickstarts.test.js +++ b/utils/__tests__/create-validate-pr-quickstarts.test.js @@ -3,7 +3,6 @@ import { createValidateQuickstarts } from '../create_validate_pr_quickstarts'; import Quickstart from '../lib/Quickstart'; -import InstallPlan from '../lib/InstallPlan'; import * as githubHelpers from '../lib/github-api-helpers'; jest.mock('@actions/core'); @@ -17,7 +16,6 @@ jest.mock('../lib/github-api-helpers', () => ({ })); jest.mock('../lib/Quickstart'); -jest.mock('../lib/InstallPlan'); const validQuickstartFilename = 'quickstarts/mock-quickstart-2/config.yml'; @@ -33,18 +31,6 @@ const mockNGQuickstartErr = (data) => ({ ], }); -const mockNGInstallPlanErr = (data) => ({ - data, - errors: [ - { - extensions: { - argumentPath: [`installPlanStepIds`], - }, - message: `contains an install plan step that does not exist`, - }, - ], -}); - const mockGithubAPIFiles = (filenames) => filenames.map((filename) => ({ sha: '', @@ -71,9 +57,7 @@ describe('create-validate-pr-quickstarts', () => { Quickstart.mockImplementation(() => { return { - config: { - installPlans: ['valid-id'], - }, + config: {}, isValid: true, validate: jest.fn().mockImplementation(() => true), submitMutation: jest.fn().mockResolvedValueOnce({ @@ -82,9 +66,6 @@ describe('create-validate-pr-quickstarts', () => { }), }; }); - InstallPlan.mockImplementationOnce(() => { - return { isValid: true }; - }); const hasErrored = await createValidateQuickstarts('url', 'token'); expect(hasErrored).toBe(false); @@ -97,9 +78,7 @@ describe('create-validate-pr-quickstarts', () => { Quickstart.mockImplementation(() => { return { - config: { - installPlans: ['valid-id'], - }, + config: {}, isValid: true, validate: jest.fn().mockImplementation(() => true), submitMutation: jest @@ -107,39 +86,11 @@ describe('create-validate-pr-quickstarts', () => { .mockResolvedValueOnce(mockNGQuickstartErr({})), }; }); - InstallPlan.mockImplementationOnce(() => { - return { isValid: true }; - }); const hasErrored = await createValidateQuickstarts('url', 'token'); expect(hasErrored).toBe(true); }); - test('does not fail for install plan id error', async () => { - const files = mockGithubAPIFiles([validQuickstartFilename]); - githubHelpers.fetchPaginatedGHResults.mockResolvedValueOnce(files); - githubHelpers.filterQuickstartConfigFiles.mockReturnValueOnce(files); - - Quickstart.mockImplementation(() => { - return { - config: { - installPlans: ['valid-id'], - }, - isValid: true, - validate: jest.fn().mockImplementation(() => true), - submitMutation: jest - .fn() - .mockResolvedValueOnce(mockNGInstallPlanErr({})), - }; - }); - InstallPlan.mockImplementationOnce(() => { - return { isValid: true }; - }); - - const hasErrored = await createValidateQuickstarts('url', 'token'); - expect(hasErrored).toBe(false); - }); - test('does not process removed file', async () => { const files = mockGithubAPIFiles([validQuickstartFilename]); files[0].status = 'removed'; diff --git a/utils/__tests__/test-utilities.js b/utils/__tests__/test-utilities.js index 3a5dcc72a2..da1353cf02 100644 --- a/utils/__tests__/test-utilities.js +++ b/utils/__tests__/test-utilities.js @@ -34,11 +34,9 @@ const mockGitHubResponseFilenames = [ 'dashboards/python/pysqlite/python.json', 'quickstarts/python/pysqlite/logo.svg', '.github/workflows/validate_packs.yml', - 'utils/__tests__/validate_install_plans.test.js', 'utils/lib/github-api-helpers.js', 'utils/helpers.js', 'utils/package.json', - 'utils/validate-install-plan.js', 'utils/yarn.lock', ]; diff --git a/utils/__tests__/validate_install_plans.test.js b/utils/__tests__/validate_install_plans.test.js deleted file mode 100644 index abe065d1ab..0000000000 --- a/utils/__tests__/validate_install_plans.test.js +++ /dev/null @@ -1,40 +0,0 @@ -'use strict'; - -import { getInstallPlanId } from '../create-validate-install-plans'; - -import {readFileSync} from 'fs'; -const fs = {readFileSync}; - -jest.mock('@actions/core'); -jest.spyOn(global.console, 'error').mockImplementation(() => {}); -jest.spyOn(fs, 'readFileSync'); - -jest.mock('../lib/github-api-helpers', () => ({ - ...jest.requireActual('../lib/github-api-helpers'), - filterInstallPlans: jest.fn(), -})); - -jest.mock('../lib/nr-graphql-helpers', () => ({ - ...jest.requireActual('../lib/nr-graphql-helpers'), - fetchNRGraphqlResults: jest.fn(), -})); - -const validInstallFilename = - 'utils/mock_files/install/mock-install-1/install.yml'; -const invalidInstallFilename1 = - 'utils/mock_files/install/invalid-mock-install-2/install.yml'; - -describe('create-validate-install-plans', () => { - afterEach(() => { - jest.resetAllMocks(); - }); - - test('getInstallPlanId should return id for valid path', async () => { - expect(getInstallPlanId(validInstallFilename)).toBe('mock-install-1'); - }); - - test('errors with invalid install plan', async () => { - expect(getInstallPlanId(invalidInstallFilename1)).toBe(''); - expect(fs.readFileSync).not.toHaveBeenCalled(); - }); -}); diff --git a/utils/__tests__/validate_install_quickstart_plans.test.js b/utils/__tests__/validate_install_quickstart_plans.test.js deleted file mode 100644 index 00544ada6b..0000000000 --- a/utils/__tests__/validate_install_quickstart_plans.test.js +++ /dev/null @@ -1,160 +0,0 @@ -'use strict'; - -import { validateInstallPlanIds } from '../validate-quickstart-install-plans'; -import Quickstart from '../lib/Quickstart'; -import InstallPlan from '../lib/InstallPlan'; -import * as githubHelpers from '../lib/github-api-helpers'; - -jest.mock('@actions/core'); -jest.spyOn(global.console, 'error').mockImplementation(() => {}); - -jest.mock('../lib/github-api-helpers', () => ({ - ...jest.requireActual('../lib/github-api-helpers'), - filterQuickstartConfigFiles: jest.fn(), -})); - -jest.mock('../lib/Quickstart'); -jest.mock('../lib/InstallPlan'); - -const validQuickstartFilename = 'quickstarts/mock-quickstart-2/config.yml'; -const invalidQuickstartFilename1 = 'quickstarts/mock-quickstart-1/config.yml'; -const invalidQuickstartFilename2 = 'quickstarts/mock-quickstart-3/config.yml'; -const validQuickstartWithoutInstallPlan = - 'quickstarts/mock-quickstart-5/config.yml'; - -const mockGithubAPIFiles = (filenames) => - filenames.map((filename) => ({ - sha: '', - filename: `utils/mock_files/${filename}`, - status: 'added', - additions: 0, - deletions: 0, - changes: 0, - blob_url: '', - raw_url: '', - contents_url: '', - patch: '', - })); - -describe('Action: validate install plan id', () => { - afterEach(() => { - jest.resetAllMocks(); - }); - - test('succeeds with valid install plan id', () => { - const files = mockGithubAPIFiles([validQuickstartFilename]); - githubHelpers.filterQuickstartConfigFiles.mockReturnValueOnce(files); - - Quickstart.mockImplementation(() => { - return { config: { installPlans: ['valid-id'] } }; - }); - InstallPlan.mockImplementation(() => { - return { isValid: true }; - }); - - validateInstallPlanIds(files); - expect(global.console.error).not.toHaveBeenCalled(); - }); - - test(`succeeds when valid quickstart doesn't contain any install plan`, () => { - const files = mockGithubAPIFiles([validQuickstartWithoutInstallPlan]); - githubHelpers.filterQuickstartConfigFiles.mockReturnValueOnce(files); - - Quickstart.mockImplementation(() => { - return { config: { installPlans: [] } }; - }); - InstallPlan.mockImplementation(() => { - return { isValid: true }; - }); - - validateInstallPlanIds(files); - expect(global.console.error).not.toHaveBeenCalled(); - expect(InstallPlan).toHaveBeenCalledTimes(0); - }); - - test('fails with invalid install plan id', () => { - const files = mockGithubAPIFiles([invalidQuickstartFilename1]); - githubHelpers.filterQuickstartConfigFiles.mockReturnValueOnce(files); - - Quickstart.mockImplementation(() => { - return { config: { installPlans: ['invalid-id'] } }; - }); - InstallPlan.mockImplementation(() => { - return { isValid: false }; - }); - - validateInstallPlanIds(files); - expect(global.console.error).toHaveBeenCalledTimes(4); - }); - - test('fails with one invalid and one install plan id for singular quickstart', () => { - const files = mockGithubAPIFiles([invalidQuickstartFilename2]); - githubHelpers.filterQuickstartConfigFiles.mockReturnValueOnce(files); - - Quickstart.mockImplementation(() => { - return { config: { installPlans: ['valid-id', 'invalid-id'] } }; - }); - InstallPlan.mockImplementationOnce(() => { - return { isValid: true }; - }).mockImplementationOnce(() => { - return { isValid: false }; - }); - - validateInstallPlanIds(files); - expect(global.console.error).toHaveBeenCalledTimes(4); - }); - - test('fails with mix of valid and invalid quickstart', () => { - const files = mockGithubAPIFiles([ - invalidQuickstartFilename1, - invalidQuickstartFilename2, - validQuickstartFilename, - ]); - githubHelpers.filterQuickstartConfigFiles.mockReturnValueOnce(files); - - Quickstart.mockImplementationOnce(() => { - return { - config: { installPlans: ['invalid-id'] }, - }; - }) - .mockImplementationOnce(() => { - return { - config: { installPlans: ['invalid-id-2'] }, - }; - }) - .mockImplementationOnce(() => { - return { - config: { installPlans: ['valid-id'] }, - }; - }); - InstallPlan.mockImplementationOnce(() => { - return { isValid: false }; - }) - .mockImplementationOnce(() => { - return { isValid: false }; - }) - .mockImplementationOnce(() => { - return { isValid: true }; - }); - - validateInstallPlanIds(files); - expect(global.console.error).toHaveBeenCalledTimes(5); - }); - - test('does not fail for deleted quickstart', () => { - const removedQuickstartFilename = 'fake-removed-quickstart/config.yml'; - const files = mockGithubAPIFiles([removedQuickstartFilename]); - files[0].status = 'removed'; - githubHelpers.filterQuickstartConfigFiles.mockReturnValueOnce(files); - - Quickstart.mockImplementation(() => { - return { - config: { installPlans: ['valid-id'] }, - }; - }); - - validateInstallPlanIds(files); - expect(global.console.error).toHaveBeenCalledTimes(0); - expect(Quickstart).toHaveBeenCalledTimes(0); - }); -}); diff --git a/utils/build-validate-quickstart-artifact.ts b/utils/build-validate-quickstart-artifact.ts new file mode 100644 index 0000000000..7a6480c90d --- /dev/null +++ b/utils/build-validate-quickstart-artifact.ts @@ -0,0 +1,168 @@ +import * as fs from 'fs'; +import * as yaml from 'js-yaml'; +import get from 'lodash/get'; + +import Quickstart from "./lib/Quickstart"; +import DataSource from "./lib/DataSource"; +import Alert from "./lib/Alert"; +import Dashboard from "./lib/Dashboard"; +import Ajv, { type ErrorObject } from 'ajv'; +import { passedProcessArguments } from './lib/helpers'; +import { ArtifactDataSourceConfig, ArtifactDashboardConfig, ArtifactQuickstartConfig, ArtifactAlertConfig } from './types/Artifact'; + +type ArtifactSchema = Record; + +type InvalidItem = { + value: unknown; + component: unknown; + error: ErrorObject; +} + +type ArtifactComponents = { + quickstarts: ArtifactQuickstartConfig[], + dataSources: ArtifactDataSourceConfig[], + alerts: ArtifactAlertConfig, + dashboards: ArtifactDashboardConfig +} + +type Artifact = ArtifactComponents | { + dataSourceIds: string[] +} + +const getSchema = (filepath: string): ArtifactSchema => { + return yaml.load( + fs.readFileSync(filepath).toString('utf8') + ) as ArtifactSchema; +}; + +// NOTE: we could run these in parallel to speed up the script +export const getArtifactComponents = (): ArtifactComponents => { + const quickstarts = Quickstart + .getAll() + .map((quickstart) => quickstart.transformForArtifact()); + + console.log(`[*] Found ${quickstarts.length} quickstarts`); + + const dataSources = DataSource + .getAll() + .map((dataSource) => dataSource.transformForArtifact()); + + console.log(`[*] Found ${dataSources.length} dataSources`); + + const alerts = Alert.getAll().reduce((acc, alert) => { + const conditions = alert.transformForArtifact() + + return { ...acc, ...conditions } + + }, {}); + + console.log(`[*] Found ${Object.keys(alerts).length} alerts`); + + const dashboards = Dashboard.getAll().reduce((acc, dash) => { + const dashboard = dash.transformForArtifact() + return { ...acc, ...dashboard } + + }, {}); + console.log(`[*] Found ${Object.keys(dashboards).length} dashboards`); + + return { + quickstarts, + dataSources, + alerts, + dashboards + } +}; + +export const getDataSourceIds = (filepath: string, communityDataSources: ArtifactComponents['dataSources']): string[] => { + const coreDataSourceIds = yaml.load( + fs.readFileSync(filepath).toString('utf8') + ) as string[]; + + const communityDataSourceIds = communityDataSources.map((dataSource) => dataSource.id); + + return [...coreDataSourceIds, ...communityDataSourceIds]; +} + +export const validateArtifact = (schema: ArtifactSchema, artifact: Artifact): ErrorObject[] => { + const ajv = new Ajv({ allErrors: true }); + ajv.validate(schema, artifact); + + return ajv.errors ?? []; +} + +const main = (shouldOutputArtifact: boolean = false) => { + const schema = getSchema('./schema/artifact.json'); + const components = getArtifactComponents(); + const dataSourceIds = getDataSourceIds('./schema/core-datasource-ids.json', components.dataSources); + const artifact = { ...components, dataSourceIds }; + const errors = validateArtifact(schema, artifact); + + if (errors.length) { + const invalidItems = getInvalidItems(errors, artifact); + printErrors(invalidItems); + process.exit(1); + } + + console.log('[*] Validation succeeded'); + + if (shouldOutputArtifact) { + outputArtifact(artifact); + } +} + +const outputArtifact = (artifact: Artifact) => { + console.log('[*] Outputting the artifact'); + try { + fs.mkdirSync('./build', { recursive: true }); + + // Dump the artifact to artifact.json + fs.writeFileSync('./build/artifact.json', JSON.stringify(artifact)); + // Copy the schema to schema.json + fs.copyFileSync('./schema/artifact.json', './build/schema.json'); + } catch (e) { + console.error('Error writing artifact to file:', e); + process.exit(1); + } +} + +const getInvalidItems = (errors: ErrorObject[], artifact: ArtifactSchema): InvalidItem[] => { + return errors.map((error) => { + // Get the path to the invalid value from the error `instancePath`. + // NOTE: we're using `slice(1)` here to remove the leading `/` in the path. + const invalidValuePath = error.instancePath.split('/').slice(1); + + const value = get(artifact, invalidValuePath); + + // Get the specific "component" (e.g. the alert or dashboard) that contains + // the invalid value. This makes the assumption that the first two parts of + // the "path" are the component type and the index in the array. + const component = get(artifact, invalidValuePath.slice(0, 2)); + + return { value, component, error }; + }); +} + +const printErrors = (invalidItems: InvalidItem[]): void => { + console.error('*** Validation failed. See errors below. ***'); + console.error('--------------------------------------------'); + + invalidItems.forEach(({ value, component, error }, idx) => { + console.error(`Error #${idx + 1}:`, error); + console.error(''); + console.error('Received value:', value); + + console.error(''); + if (component !== value) { + console.error('Invalid component:', component); + } + + if (idx < invalidItems.length - 1) { + console.error('************************************'); + } + }); +} + +if (require.main === module) { + const shouldOutputArtifact = passedProcessArguments().includes('--output-artifact'); + main(shouldOutputArtifact); +} diff --git a/utils/constants.ts b/utils/constants.ts index 12267b2409..13d5b9ce84 100644 --- a/utils/constants.ts +++ b/utils/constants.ts @@ -15,7 +15,7 @@ export const DATA_SOURCE_CONFIG_REGEXP = new RegExp( ); export const COMPONENT_PREFIX_REGEXP = - /^(dashboards|alert-policies|install-plans|data-sources)\//; + /^(dashboards|alert-policies|data-sources)\//; /** * Because brand new quickstarts added via a PR do not have an ID until they are assigned one at release, @@ -44,37 +44,6 @@ export const QUICKSTART_MUTATION = gql` } `; -export const INSTALL_PLAN_MUTATION = gql` - # gql - mutation QuickstartRepoInstallPlanMutation( - $description: String! - $dryRun: Boolean - $displayName: String! - $fallback: Nr1CatalogInstallPlanDirectiveInput - $heading: String! - $id: ID! - $primary: Nr1CatalogInstallPlanDirectiveInput! - $target: Nr1CatalogInstallPlanTargetInput! - ) { - nr1CatalogSubmitInstallPlanStep( - dryRun: $dryRun - installPlanStep: { - description: $description - displayName: $displayName - fallback: $fallback - heading: $heading - id: $id - primary: $primary - target: $target - } - ) { - installPlanStep { - id - } - } - } -`; - export const DATA_SOURCE_MUTATION = gql` mutation QuickstartRepoDataSourceMutation( $dryRun: Boolean diff --git a/utils/create-validate-install-plans.ts b/utils/create-validate-install-plans.ts deleted file mode 100644 index b989051b33..0000000000 --- a/utils/create-validate-install-plans.ts +++ /dev/null @@ -1,91 +0,0 @@ -import { prop, passedProcessArguments } from './lib/helpers'; -import { - fetchPaginatedGHResults, - filterOutTestFiles, - isNotRemoved, -} from './lib/github-api-helpers'; -import { translateMutationErrors, chunk } from './lib/nr-graphql-helpers'; -import { recordNerdGraphResponse, CUSTOM_EVENT } from './newrelic/customEvent'; -import InstallPlan, { InstallPlanMutationResponse } from './lib/InstallPlan'; -import { InstallPlanConfig } from './types/InstallPlanConfig'; -import * as path from 'path'; -import * as fs from 'fs'; -import * as yaml from 'js-yaml'; -import { NerdGraphResponseWithLocalErrors } from './types/nerdgraph'; - -const INSTALL_CONFIG_REGEXP = new RegExp('install/.+/install.+(yml|yaml)'); - -export const getInstallPlanId = (filename: string) => { - const filePath = path.resolve(__dirname, '..', filename); - if (!fs.existsSync(filePath)) { - return ''; - } - const config = yaml.load( - fs.readFileSync(filePath).toString('utf-8') - ) as InstallPlanConfig; - return config.id; -}; - -/** - * Entrypoint. - */ -const main = async () => { - const [GITHUB_API_URL, dryRun] = passedProcessArguments(); - const githubToken = process.env.GITHUB_TOKEN; - const isDryRun = dryRun === 'true'; - - if (!githubToken) { - console.error('GITHUB_TOKEN is not defined.'); - process.exit(1); - } - - // Get all files from PR - const files = await fetchPaginatedGHResults(GITHUB_API_URL, githubToken); - - // Get all install-plan mutation variables - const plans = filterOutTestFiles(files) - .filter(isNotRemoved) - .map(prop('filename')) - .filter((filename) => INSTALL_CONFIG_REGEXP.test(filename)) - .map((filename) => getInstallPlanId(filename)) - .filter(Boolean) - .map((installId) => new InstallPlan(installId)); - - let results: (NerdGraphResponseWithLocalErrors & { - name: string; - })[] = []; - // Submit all of the mutations (in chunks of 5) - for (const c of chunk(plans, 5)) { - const res = await Promise.all( - c.map((plan) => plan.submitMutation(isDryRun)) - ); - - results = [...results, ...res]; - } - - // Find the failed mutations and report - const failures = results.filter((r) => r.errors && r.errors.length); - - failures.forEach(({ errors, name }) => - translateMutationErrors(errors!, name) - ); - - const hasFailed = failures.length > 0; - - // Record event in New Relic - const event = isDryRun - ? CUSTOM_EVENT.VALIDATE_INSTALL_PLANS - : CUSTOM_EVENT.UPDATE_INSTALL_PLANS; - - await recordNerdGraphResponse(hasFailed, event); - - if (hasFailed) { - process.exit(1); - } -}; - -if (require.main === module) { - main(); -} - -export default main; diff --git a/utils/create_validate_pr_quickstarts.ts b/utils/create_validate_pr_quickstarts.ts index 6b949d66fd..af0e0ef936 100644 --- a/utils/create_validate_pr_quickstarts.ts +++ b/utils/create_validate_pr_quickstarts.ts @@ -32,12 +32,6 @@ type ResponseWithErrors = name: string; }; -// filter out errors where install plan id does not exist -const installPlanErrorExists = (error: Error | NerdGraphError): boolean => - 'extensions' in error && - error?.extensions?.argumentPath?.includes('installPlanStepIds') && - error?.message?.includes('contains an install plan step that does not exist'); - const dataSourceErrorExists = (error: Error | NerdGraphError): boolean => 'extensions' in error && error?.extensions?.argumentPath?.includes('dataSourceIds') && @@ -47,19 +41,12 @@ export const countAndOutputErrors = ( graphqlResponses: ResponseWithErrors[] ): number => graphqlResponses.reduce((all, { errors, name }) => { - const installPlanErrors = - (errors?.filter(installPlanErrorExists) as NerdGraphError[]) ?? []; const dataSourceErrors = (errors?.filter(dataSourceErrorExists) as NerdGraphError[]) ?? []; const remainingErrors = - errors - ?.filter((error) => !installPlanErrorExists(error)) - ?.filter((error) => !dataSourceErrorExists(error)) ?? []; - - translateMutationErrors(remainingErrors, name, [ - ...installPlanErrors, - ...dataSourceErrors, - ]); + errors?.filter((error) => !dataSourceErrorExists(error)) ?? []; + + translateMutationErrors(remainingErrors, name, [...dataSourceErrors]); return all + remainingErrors.length; }, 0); diff --git a/utils/data-source-from-install-plan.ts b/utils/data-source-from-install-plan.ts deleted file mode 100644 index 8f59a81c67..0000000000 --- a/utils/data-source-from-install-plan.ts +++ /dev/null @@ -1,210 +0,0 @@ -import * as path from 'path'; -import * as fs from 'fs'; -import * as yaml from 'js-yaml'; - -import InstallPlan from './lib/InstallPlan'; -import Quickstart from './lib/Quickstart'; -import { passedProcessArguments } from './lib/helpers'; - -import type { - DataSourceConfig, - DataSourceConfigInstallDirective, -} from './types/DataSourceConfig'; -import type { InstallPlanInstall } from './types/InstallPlanConfig'; - -// Get all the quickstarts for icon lookup -const ALL_QUICKSTARTS = Quickstart.getAll(); - -/** - * Maps the configuration for an install plan directive to the format needed - * for a data source primary / fallback installation. - * - * In the event that we come accross a targeted install, we return `undefined` - * since this is not something we can handle with data source installs. - */ -const ipInstallToDsInstall = ({ - mode, - destination, -}: InstallPlanInstall): DataSourceConfigInstallDirective | undefined => { - switch (mode) { - case 'link': - return { - link: { - url: destination.url, - }, - }; - case 'nerdlet': - return { - nerdlet: { - nerdletId: destination.nerdletId, - // NOTE: install plans have this type as `{ [x:string]: ngql }` and - // data sources have this type as `Record`. These are - // functionally the same thing, but we need to cast this with `as` to - // ensure typescript is happy. - nerdletState: destination.nerdletState as Record, - // NOTE: install plans do _not_ have any concept of `requiresAccount` - // so we are defaulting this to `false`. - requiresAccount: false, - }, - }; - default: - // NOTE: Data sources can only be link or nerdlet installs, but install - // plans can have a `targetedInstall` mode as well. In the event that we - // come accross this type of install, we are going to ignore it. - return undefined; - } -}; - -/** - * Given the title for an _install plan_ this will attempt to find a matching - * _quickstart_ and return it's icon. May return `undefined` if no matching - * quickstart is found. - */ -const getIconFromQuickstart = (title: string): string | undefined => { - const quickstart = ALL_QUICKSTARTS.find( - (qs) => qs.config.title.toLowerCase() === title.toLowerCase() - ); - - let icon = quickstart?.config.icon; - - if (quickstart) { - /* - identifier is returning /config.yml so currently this is - replacing the last part of the path with /${quickstart.config.icon} - Might be a better way to do this - */ - icon = path.join( - quickstart.basePath, - quickstart?.identifier.replace(/\/[^\/]*$/, `/${quickstart.config.icon}`) - ); - } - - return icon; -}; - -const createDataSourceConfig = ({ config }: InstallPlan): DataSourceConfig => { - const THIRD_PARTY_PREFIX = 'third-party-'; - const configId = config.id.includes(THIRD_PARTY_PREFIX) - ? config.id.split('third-party-')[1] - : config.id; - - const dsConfig: DataSourceConfig = { - id: configId, - displayName: config.title, - description: config.description, - install: { - // NOTE: the primary installation for a data source is required, but our - // conversion function can possibly return `undefined`. We're adding a `!` - // here because we can reasonbly assume we will _always_ have a non-targed - // primary install. This assumption might be incorrect in a couple of - // instances, so we should verify that all created data sources have a - // primary install. - primary: ipInstallToDsInstall(config.install)!, - }, - }; - - // Attempt to find an icon for the data source by trying to find quickstarts - // with the same name as the install plan. - const icon = getIconFromQuickstart(config.title); - if (icon) { - dsConfig.icon = icon; - } - - // NOTE: it's possible for an install plan to _not_ have a fallback. - if (config.fallback) { - dsConfig.install.fallback = ipInstallToDsInstall(config.fallback); - } - - return dsConfig; -}; - -/* - * The sheet we've been preparing for the scripts has a row with data source id, and - * if its needing to be created it has TO_BE_CREATED. We are using a csv of the sheet - * and just filtering the rows by TO_BE_CREATED and mapping to just the install plan id - */ -const getToBeCreatedIdsFromCsv = (csvPath: string): string[] => { - const fullCSVPath = path.resolve(__dirname, csvPath); - const csvString = fs.readFileSync(fullCSVPath, { encoding: 'utf-8' }); - - const csvRows = csvString.split('\r\n'); - - return csvRows - .filter((row) => row.includes('TO_BE_CREATED')) - .map((newDS) => newDS.split(',')[0]); -}; - -/** - * Helper script that will take an input in the form of a list of install plan - * IDs and will create files for new _data sources_ based on those install - * plans. - */ -const main = () => { - /** - * Script expects a relative path to the csv containing install - * plan ids and associated data source ids that need to be created - */ - const [csvRelativePath] = passedProcessArguments(); - - const ids = getToBeCreatedIdsFromCsv(csvRelativePath); - const plans = ids.map((id) => new InstallPlan(id)); - // filter out the install plans that use a targetedInstall as the primary - // install directive. - const { validPlans, targetedPlans } = plans.reduce<{ - validPlans: InstallPlan[]; - targetedPlans: InstallPlan[]; - }>( - (acc, plan) => { - return plan.config.install.mode === 'targetedInstall' - ? { ...acc, targetedPlans: [...acc.targetedPlans, plan] } - : { ...acc, validPlans: [...acc.validPlans, plan] }; - }, - { validPlans: [], targetedPlans: [] } - ); - - const configs = validPlans.map(createDataSourceConfig); - - for (const config of configs) { - // create a new directory in the data-sources directory - const dirpath = path.resolve(__dirname, '../data-sources/', config.id); - fs.mkdirSync(dirpath); - - if (config.icon) { - const quickstartIconPath = config.icon; - config.icon = quickstartIconPath.split('/').pop(); - - fs.copyFile( - quickstartIconPath, - path.join(dirpath, `/${config.icon}`), - (err) => { - if (err) { - console.error('Could not copy icon: ', err); - } - } - ); - } - - // create a new config file - const filePath = path.resolve(dirpath, 'config.yml'); - const yamlOptions = { - lineWidth: -1, - }; - - const fileContent = yaml.dump(config, yamlOptions); - fs.writeFileSync(filePath, fileContent, { encoding: 'utf8' }); - } - - // for debugging purposes - console.log( - 'The following install plans have TARGETED install directives and a data source has not been created for them:' - ); - for (const plan of targetedPlans) { - console.log(`\t${plan.config.id}`); - } -}; - -if (require.main === module) { - main(); -} - -export default main; diff --git a/utils/lib/Alert.ts b/utils/lib/Alert.ts index 6dd4829f99..c5dadbcdb6 100644 --- a/utils/lib/Alert.ts +++ b/utils/lib/Alert.ts @@ -10,6 +10,7 @@ import type { AlertType, QuickstartAlertInput, } from '../types/QuickstartMutationVariable'; +import type { ArtifactAlertConfig, ArtifactAlertType } from '../types/Artifact'; import type { QuickstartConfigAlert } from '../types/QuickstartConfig'; import type { NerdGraphResponseWithLocalErrors } from '../types/nerdgraph'; @@ -79,7 +80,11 @@ export type SubmitSetRequiredDataSourcesMutationResult = | NerdGraphResponseWithLocalErrors | { errors: ErrorOrNerdGraphError[] }; -class Alert extends Component { +class Alert extends Component< + QuickstartConfigAlert[], + QuickstartAlertInput[], + ArtifactAlertConfig +> { constructor(identifier: string, basePath?: string) { super(identifier, basePath); this.isValid = this.validate(); @@ -134,6 +139,38 @@ class Alert extends Component { } } + /** + * Method extracts criteria from the config and returns an object appropriately + * structured for the artifact. + */ + transformForArtifact() { + if (!this.isValid) { + console.error( + `Alert is invalid.\nPlease check if the path at ${this.identifier} exists.` + ); + return {}; + } + + const alertPolicy = this.config.map((condition) => { + const { description, name, type } = condition; + + return { + description: description && description.trim(), + displayName: name && name.trim(), + rawConfiguration: JSON.stringify(condition), + sourceUrl: Component.getAssetSourceUrl(this.configPath), + type: type && (type.trim().toLowerCase() as ArtifactAlertType), + }; + }); + + return { [this.identifier]: alertPolicy }; + } + + /** + * Method creates mutation variables for a given Alert. + * + * @deprecated This function should be removed once we have finished our new build publishing pipeline + */ getMutationVariables() { if (!this.isValid) { console.error( @@ -190,13 +227,17 @@ class Alert extends Component { return true; } catch (error) { - logger.error(`Alert Condition: Validaiton for ${displayName} failed with an error`); + logger.error( + `Alert Condition: Validaiton for ${displayName} failed with an error` + ); return false; } }); - logger.debug(`Alert condition: Finished validation for alert at ${this.identifier}`); + logger.debug( + `Alert condition: Finished validation for alert at ${this.identifier}` + ); return validations.every(Boolean); } @@ -297,6 +338,18 @@ class Alert extends Component { return result; } + + static getAll() { + const alertPaths = glob.sync( + path.join(__dirname, '..', '..', 'alert-policies', '**', '*.+(yml|yaml)') + ); + return alertPaths.map((alertPath) => { + // The identifier for alerts is the folder and the file name + // e.g. `node-js/HighCpuUtilization.yml` + const identifier = path.join(...alertPath.split('/').slice(-2, -1)); + return new Alert(identifier); + }); + } } export default Alert; diff --git a/utils/lib/Component.ts b/utils/lib/Component.ts index 143ec16262..a6ed66002b 100644 --- a/utils/lib/Component.ts +++ b/utils/lib/Component.ts @@ -3,7 +3,7 @@ import * as fs from 'fs'; import * as yaml from 'js-yaml'; import { GITHUB_REPO_BASE_URL } from '../constants'; -abstract class Component { +abstract class Component { public identifier: string; // Local path to the component. Ex: python/flask public configPath: string; // Absolute path to the config file within the repository public config: ConfigType; @@ -23,6 +23,7 @@ abstract class Component { abstract getConfigFilePath(): string; abstract getConfigContent(): ConfigType; abstract getMutationVariables(): MutationVariablesType; + abstract transformForArtifact(): ArtifactType; get fullPath() { return path.join(this.basePath, this.configPath); diff --git a/utils/lib/Dashboard.ts b/utils/lib/Dashboard.ts index 71b318ae68..781b428d36 100644 --- a/utils/lib/Dashboard.ts +++ b/utils/lib/Dashboard.ts @@ -16,8 +16,9 @@ import { fetchNRGraphqlResults, ErrorOrNerdGraphError, } from './nr-graphql-helpers'; +import { ArtifactDashboardConfig } from '../types/Artifact'; -interface DashboardConfig { +export interface DashboardConfig { name: string; description?: string; pages: any; @@ -61,7 +62,11 @@ export type SubmitSetRequiredDataSourcesMutationResult = | NerdGraphResponseWithLocalErrors | { errors: ErrorOrNerdGraphError[] }; -class Dashboard extends Component { +class Dashboard extends Component< + DashboardConfig, + QuickstartDashboardInput, + ArtifactDashboardConfig +> { /** * @returns - filepath from top level directory. */ @@ -104,6 +109,34 @@ class Dashboard extends Component { } } + /** + * Method extracts criteria from the config and returns an object appropriately + * structured for the artifact. + */ + transformForArtifact() { + if (!this.isValid) { + console.error( + `Dashboard is invalid.\nPlease check the dashboard at ${this.identifier}\n` + ); + return {}; + } + + const { name, description } = this.config; + const screenshotPaths = this.getScreenshotPaths(); + + return { + [this.identifier]: { + description: description && description.trim(), + displayName: name && name.trim(), + rawConfiguration: JSON.stringify(this.config), + sourceUrl: Component.getAssetSourceUrl(this.configPath), + screenshots: + screenshotPaths && + screenshotPaths.map((s) => this.getScreenshotUrl(s)), + }, + }; + } + /** * Get mutation variables from dashboard config * @returns - mutation variables for dashboard. diff --git a/utils/lib/DataSource.ts b/utils/lib/DataSource.ts index a23552fccb..e19cb65e47 100644 --- a/utils/lib/DataSource.ts +++ b/utils/lib/DataSource.ts @@ -17,6 +17,7 @@ import type { DataSourceInstallDirectiveInput, DataSourceMutationVariable, } from '../types/DataSourceMutationVariable'; +import { ArtifactDataSourceConfig, ArtifactInstall } from '../types/Artifact'; export interface DataSourceMutationResponse { dataSource: { @@ -24,7 +25,11 @@ export interface DataSourceMutationResponse { }; } -class DataSource extends Component { +class DataSource extends Component< + DataSourceConfig, + string, + ArtifactDataSourceConfig +> { /** * @returns Filepath for the configuration file (from top-level directory). */ @@ -41,7 +46,6 @@ class DataSource extends Component { // find the matching data source ID from the config content const dataSource = allDataSources.find((i) => i.content?.id === id); - // replace the identifier with the file path found from the id this.identifier = path.dirname( Component.removeBasePath( @@ -74,9 +78,39 @@ class DataSource extends Component { return this._getYamlConfigContent(); } + /** + * Method extracts criteria from the config and returns an object appropriately + * structured for the artifact. + */ + public transformForArtifact() { + const { keywords, description, categoryTerms, icon, ...rest } = this.config; + + return { + ...rest, + iconUrl: this._getIconUrl(), + install: this._parseInstallsForArtifact(), + categoryTerms: categoryTerms ? categoryTerms.map((t) => t.trim()) : [], + keywords: keywords ? keywords.map((k) => k.trim()) : [], + description: description && description.trim(), + }; + } + + private _parseInstallsForArtifact() { + const { install } = this.config; + + return { + primary: this._parseInstallDirectiveForArtifact(install.primary), + fallback: + install.fallback && + this._parseInstallDirectiveForArtifact(install.fallback), + }; + } + /** * Get the variables for the **Quickstart** mutation. * + * @deprecated This function should be removed once we have finished our new build publishing pipeline + * * @returns The ID for this data source */ getMutationVariables(): DataSourceConfig['id'] { @@ -96,7 +130,7 @@ class DataSource extends Component { displayName: displayName && displayName.trim(), icon: this._getIconUrl(), install: this._parseInstall(), - categoryTerms: categoryTerms ? categoryTerms.map((t) => t.trim()): [], + categoryTerms: categoryTerms ? categoryTerms.map((t) => t.trim()) : [], keywords: keywords ? keywords.map((k) => k.trim()) : [], description: description && description.trim(), }; @@ -189,9 +223,60 @@ class DataSource extends Component { return directive; } + + /** + * Helper method that returns the directive, based on its type. + */ + private _parseInstallDirectiveForArtifact( + directive: DataSourceConfigInstallDirective + ): ArtifactInstall { + if ('link' in directive) { + const { url } = directive.link; + + return { + url: url?.trim() ?? '', + }; + } + + if ('nerdlet' in directive) { + const { nerdletId, nerdletState, requiresAccount } = directive.nerdlet; + + return { + nerdletId: nerdletId?.trim() ?? '', + nerdletState: nerdletState, + requiresAccount: requiresAccount, + }; + } + + return directive; + } + + static isDataSource(x: DataSource | undefined): x is DataSource { + return x !== undefined; + } + + static getAll(): DataSource[] { + return getAllDataSourceFiles() + .map((configFilePath) => { + const id = getDataSourceId(configFilePath); + const dataSource = new DataSource(id); + if (dataSource != undefined) { + return dataSource; + } + }) + .filter(DataSource.isDataSource); + } } -const getAllDataSourceFiles = ( +const getDataSourceId = (filepath: string) => { + const yamlContent = yaml.load( + fs.readFileSync(filepath).toString('utf-8') + ) as DataSourceConfig; + + return yamlContent.id; +}; + +export const getAllDataSourceFiles = ( basePath: string = path.join(__dirname, '..', '..') ): string[] => glob.sync(path.join(basePath, 'data-sources', '**', 'config.+(yml|yaml)')); diff --git a/utils/lib/InstallPlan.ts b/utils/lib/InstallPlan.ts deleted file mode 100644 index f5bf4c2746..0000000000 --- a/utils/lib/InstallPlan.ts +++ /dev/null @@ -1,189 +0,0 @@ -import * as path from 'path'; -import * as glob from 'glob'; -import * as fs from 'fs'; -import * as yaml from 'js-yaml'; - -import Component from './Component'; -import { fetchNRGraphqlResults } from './nr-graphql-helpers'; -import { INSTALL_PLAN_MUTATION } from '../constants'; - -import type { - InstallPlanConfig, - InstallPlanConfigTargetOS, - InstallPlanInstall, -} from '../types/InstallPlanConfig'; -import type { - InstallPlanDirectiveInput, - InstallPlanMutationVariable, - InstallPlanTargetInput, -} from '../types/InstallPlanMutationVariables'; - -export interface InstallPlanMutationResponse { - installPlanStep: { - id: string; - }; -} - -class InstallPlan extends Component { - /** - * @returns Filepath for the configuration file (from top-level directory). - */ - getConfigFilePath() { - // Lines next few lines are a hack to allow us to pass in the - // install plan id as the identifier instead - // of its path under the `install/` directory, - // this code then parses all install plans and sets - // the correct path to the requested install plan - const id = this.identifier; - const allInstallPlans = getAllInstallPlanFiles(this.basePath).map((p) => ({ - filePath: p, - content: yaml.load( - fs.readFileSync(p).toString('utf-8') - ) as InstallPlanConfig, - })); - const installPlan = allInstallPlans.find((i) => i.content?.id === id); - this.identifier = path.dirname( - Component.removeBasePath( - installPlan?.filePath ?? '', - path.join(this.basePath, 'install') - ) - ); - - const filePaths = glob.sync( - path.join( - this.basePath, - 'install', - this.identifier, - 'install.+(yml|yaml)' - ) - ); - - if (!Array.isArray(filePaths) || filePaths.length !== 1) { - this.isValid = false; - return ''; - } - - return Component.removeBasePath(filePaths[0], this.basePath); - } - - getConfigContent() { - return this._getYamlConfigContent(); - } - - /** - * Get the variables for the **Quickstart** mutation. - * - * @returns The ID for this install plan - */ - getMutationVariables(): string{ - if (!this.isValid) { - console.error( - `Install plan is invalid.\nPlease check the install plan at ${this.identifier}\n` - ); - } - return this.config.id; - } - - /** - * Submits a mutation to NerdGraph for a single install plan. - */ - public async submitMutation(dryRun = true) { - if (!this.isValid) { - console.error( - `Install plan is invalid.\nPlease check the install plan at ${this.identifier}\n` - ); - } - - const { data, errors } = await fetchNRGraphqlResults< - InstallPlanMutationVariable, - InstallPlanMutationResponse - >({ - queryString: INSTALL_PLAN_MUTATION, - variables: this._getComponentMutationVariables(dryRun), - }); - - return { name: this.config.name, data, errors }; - } - - /** - * Get the **component-specific** mutation variables. - * - * @todo: add this to the abstract class (or create an interface) - */ - private _getComponentMutationVariables( - dryRun: boolean - ): InstallPlanMutationVariable { - const { id, description, name, title, install, fallback, target } = - this.config ?? {}; - - return { - dryRun, - id, - description, - displayName: name && name.trim(), - heading: title && title.trim(), - primary: install && this._parseInstallDirective(install), - fallback: fallback && this._parseInstallDirective(fallback), - target: target && this._buildInstallPlanTargetVariable(), - }; - } - - /** - * Helper method that returns the directive, regardless of type. - */ - private _parseInstallDirective( - directive: InstallPlanInstall - ): InstallPlanDirectiveInput { - const { mode, destination } = directive; - - switch (mode) { - case 'targetedInstall': - return { - targeted: { recipeName: destination && destination.recipeName }, - }; - - case 'link': - return { link: { url: destination && destination.url } }; - - case 'nerdlet': - return { - nerdlet: { - nerdletId: destination && destination.nerdletId, - nerdletState: - destination && JSON.stringify(destination.nerdletState), - }, - }; - - // Defaults to submitting an invalid directive, so that validation can catch it - default: - return { mode, destination: undefined }; - } - } - - /** - * Builds the target parameter from the config into the variables for NR Request. - */ - private _buildInstallPlanTargetVariable(): InstallPlanTargetInput { - const { target } = this.config; - - const type = target.type.toUpperCase(); - const destination = target.destination.toUpperCase(); - - const upperCaseTarget = { type, destination } as InstallPlanTargetInput; - - if ('os' in target && Array.isArray(target.os)) { - upperCaseTarget.os = target.os.map( - (str) => str.toUpperCase() as Uppercase - ); - } - - return upperCaseTarget; - } -} - -const getAllInstallPlanFiles = ( - basePath: string = path.join(__dirname, '..', '..') -): string[] => - glob.sync(path.join(basePath, 'install', '**', 'install.+(yml|yaml)')); - -export default InstallPlan; diff --git a/utils/lib/Quickstart.ts b/utils/lib/Quickstart.ts index 546f4bf4cc..5bfd59f557 100644 --- a/utils/lib/Quickstart.ts +++ b/utils/lib/Quickstart.ts @@ -23,6 +23,7 @@ import type { QuickstartSupportLevel, } from '../types/QuickstartMutationVariable'; import type { QuickstartConfig } from '../types/QuickstartConfig'; +import { ArtifactQuickstartConfig, ArtifactQuickstartConfigSupportLevel } from '../types/Artifact'; export interface QuickstartMutationResponse { quickstart: { @@ -34,6 +35,9 @@ interface SupportLevelMap { [key: string]: QuickstartSupportLevel; } +// FIXME: We will want to clean this up and conform to the `Artifact` types +// when we go to cleanup the deprecated mutation functionality after we have +// finalized the new quickstart publishing pipeline. const SUPPORT_LEVEL_ENUMS: SupportLevelMap = { 'New Relic': 'NEW_RELIC', Community: 'COMMUNITY', @@ -134,7 +138,11 @@ class Quickstart { /** * Get mutation variables from quickstart config + * + * @deprecated This function should be removed once we have finished our new build publishing pipeline + * * @returns - Promised mutation variables for quickstart + * */ async getMutationVariables( dryRun: boolean @@ -153,7 +161,6 @@ class Quickstart { icon, keywords, summary, - installPlans, dataSourceIds, id, level, @@ -179,7 +186,6 @@ class Quickstart { ), summary: summary && summary.trim(), supportLevel: SUPPORT_LEVEL_ENUMS[level], - installPlanStepIds: installPlans, dataSourceIds: dataSourceIds, }; @@ -200,6 +206,58 @@ class Quickstart { }; } + /** + * Method extracts criteria from the config and returns an object appropriately + * structured for the artifact. + */ + public transformForArtifact(): ArtifactQuickstartConfig { + const { + description, + title, + slug, + documentation, + icon, + keywords, + summary, + dataSourceIds, + id, + level, + authors = [], + dashboards = [], + alertPolicies = [], + } = this.config; + + const metadata = { + quickstartUuid: id, + description: description && description.trim(), + displayName: title && title.trim(), + slug: slug && slug.trim(), + documentation: + documentation && + documentation.map((doc) => ({ + displayName: doc.name, + url: doc.url, + description: doc.description, + })), + iconUrl: this._constructIconUrl(icon), + keywords: keywords ?? [], + sourceUrl: Component.getAssetSourceUrl( + Component.removeBasePath(path.dirname(this.configPath), this.basePath) + ), + summary: summary && summary.trim(), + supportLevel: SUPPORT_LEVEL_ENUMS[ + level + ]?.toLowerCase() as ArtifactQuickstartConfigSupportLevel, + dataSourceIds: dataSourceIds, + alertConditions: alertPolicies, + dashboards, + authors, + }; + + + return metadata; + } + public async submitMutation(dryRun = true) { logger.info(`Submitting mutation for ${this.identifier}`, { dryRun }); const { data, errors } = await fetchNRGraphqlResults< diff --git a/utils/lib/__tests__/InstallPlan.test.js b/utils/lib/__tests__/InstallPlan.test.js deleted file mode 100644 index 9d5be7fda8..0000000000 --- a/utils/lib/__tests__/InstallPlan.test.js +++ /dev/null @@ -1,94 +0,0 @@ -import * as fs from 'fs'; -import * as yaml from 'js-yaml'; -import * as path from 'path'; - -import InstallPlan from '../InstallPlan'; -const MOCK_FILES_BASEPATH = path.resolve(__dirname, '../../mock_files'); - -const mockInstall3 = yaml.load( - fs - .readFileSync( - path.resolve( - __dirname, - '../../mock_files/install/mock-install-3/install.yml' - ) - ) - .toString('utf-8') -); - -describe('InstallPlan', () => { - describe('getConfigFilePath', () => { - test('should return a valid path to the config file', () => { - const plan = new InstallPlan('mock-install-1', MOCK_FILES_BASEPATH); - - expect(plan.isValid).toBeTruthy(); - }); - - test('should set valid to false if the config file can not be found', () => { - const plan = new InstallPlan('foobar'); - - expect(plan.isValid).toBeFalsy(); - expect(plan.configPath).toEqual(''); - }); - }); - - describe('getConfigContent', () => { - test('should return config if valid', () => { - const plan = new InstallPlan('test-install-install', MOCK_FILES_BASEPATH); - - expect(plan.isValid).toBeTruthy(); - }); - }); - - describe('getMutationVariables', () => { - test('returns id of install plan', () => { - const install = new InstallPlan('mock-install-1', MOCK_FILES_BASEPATH); - expect(install.getMutationVariables()).toEqual('mock-install-1'); - }); - }); - - describe('_getComponentMutationVariables', () => { - test('returns correct mutation variables for valid install plan', () => { - const install = new InstallPlan( - 'test-install-install', - MOCK_FILES_BASEPATH - ); - const vars = install._getComponentMutationVariables(true); - expect(vars).toEqual({ - id: mockInstall3.id, - dryRun: true, - description: mockInstall3.description, - displayName: mockInstall3.name, - target: { - destination: mockInstall3.target.destination?.toUpperCase(), - os: mockInstall3.target.os?.map((s) => s.toUpperCase()), - type: mockInstall3.target.type?.toUpperCase(), - }, - heading: mockInstall3.title, - primary: { - targeted: { - recipeName: mockInstall3.install.destination.recipeName, - }, - }, - fallback: { - link: { url: mockInstall3.fallback.destination.url }, - }, - }); - }); - - test('returns variables for invalid install plan', () => { - const install = new InstallPlan('mock-fake', MOCK_FILES_BASEPATH); - const vars = install._getComponentMutationVariables(true); - expect(vars).toEqual({ - id: undefined, - dryRun: true, - description: undefined, - displayName: undefined, - target: undefined, - heading: undefined, - primary: undefined, - fallback: undefined, - }); - }); - }); -}); diff --git a/utils/lib/__tests__/Quickstart.test.js b/utils/lib/__tests__/Quickstart.test.js index 677d831191..b28572a87c 100644 --- a/utils/lib/__tests__/Quickstart.test.js +++ b/utils/lib/__tests__/Quickstart.test.js @@ -119,14 +119,13 @@ describe('Quickstart', () => { qs.validate(); - expect(invalidComponents).toHaveLength(1) + expect(invalidComponents).toHaveLength(1); const invalidComponent = invalidComponents[0]; - expect(invalidComponent.identifier).toBe('mock-alert-policy-3') + expect(invalidComponent.identifier).toBe('mock-alert-policy-3'); expect(qs.isValid).toBe(false); - - }) + }); }); describe('getMutationVariables', () => { @@ -154,7 +153,6 @@ describe('Quickstart', () => { authors: [{ name: 'John Smith' }], keywords: ['list', 'of', 'searchable', 'keywords'], categoryTerms: undefined, - installPlanStepIds: ['mock-install-1'], dataSourceIds: ['test-data-source'], icon: `${GITHUB_RAW_BASE_URL}/quickstarts/mock-quickstart-1/logo.png`, sourceUrl: `${GITHUB_REPO_BASE_URL}/quickstarts/mock-quickstart-1`, @@ -179,7 +177,6 @@ describe('Quickstart', () => { expect(variables.id).toEqual('mock-2-id'); expect(variables.quickstartMetadata.alertConditions).toHaveLength(2); expect(variables.quickstartMetadata.dashboards).toHaveLength(1); - expect(variables.quickstartMetadata.installPlanStepIds).toHaveLength(1); expect(variables.quickstartMetadata.dataSourceIds).toHaveLength(1); }); diff --git a/utils/lib/github-api-helpers.ts b/utils/lib/github-api-helpers.ts index a89d5e9965..ca28d9aac6 100644 --- a/utils/lib/github-api-helpers.ts +++ b/utils/lib/github-api-helpers.ts @@ -5,7 +5,7 @@ import { DATA_SOURCE_CONFIG_REGEXP, } from '../constants'; import logger from '../logger'; -const INSTALL_CONFIG_REGEXP = new RegExp('install/.+/install.+(yml|yaml)'); + const MOCK_FILES_REGEXP = new RegExp('mock_files/.+'); const TEMPLATE_REGEXP = new RegExp('_template/.+'); @@ -112,17 +112,6 @@ export const filterOutTestFiles = ( ); }; -/** - * Filters results from the Github API down to install plan config files - * @param {Array} files the results from Github API - * @returns {Array} install plan config files from Github API - */ -export const filterInstallPlans = ( - files: GithubAPIPullRequestFile[] -): GithubAPIPullRequestFile[] => { - return files.filter(({ filename }) => INSTALL_CONFIG_REGEXP.test(filename)); -}; - /** * Filters results from the Github API down to data source config files * @param files the results from Github API diff --git a/utils/lib/nr-graphql-helpers.ts b/utils/lib/nr-graphql-helpers.ts index 9cddf80096..7f5fc9fd86 100644 --- a/utils/lib/nr-graphql-helpers.ts +++ b/utils/lib/nr-graphql-helpers.ts @@ -41,7 +41,7 @@ export type ErrorOrNerdGraphError = Error | NerdGraphError; * @returns {Promise} An object with the results or errors of a GraphQL request */ export const fetchNRGraphqlResults = async ( - queryBody: NerdGraphRequest, + queryBody: NerdGraphRequest ): Promise> => { const NR_API_URL = process.env.NR_API_URL || ''; const NR_API_TOKEN = process.env.NR_API_TOKEN || ''; @@ -111,10 +111,6 @@ export const fetchNRGraphqlResults = async ( /** * Handle errors from GraphQL request for quickstart mutation - * @param {Object[]} errors - An array of any errors found - * @param {String} filePath - The path related to the validation error - * @param {Object[]} [installPlanErrors=[]] - Array of install plan errors which are handled differently - * @returns {void} */ export const translateMutationErrors = ( errors: ErrorOrNerdGraphError[], diff --git a/utils/migration_scripts/assign-data-sources-to-quickstarts.ts b/utils/migration_scripts/assign-data-sources-to-quickstarts.ts deleted file mode 100644 index 74650d1e67..0000000000 --- a/utils/migration_scripts/assign-data-sources-to-quickstarts.ts +++ /dev/null @@ -1,117 +0,0 @@ -import * as fs from 'fs'; -import * as yaml from 'js-yaml'; -import * as path from 'path'; - -import Quickstart from '../lib/Quickstart'; -import { passedProcessArguments } from '../lib/helpers'; - -const parseCSV = (csvString: string) => { - const csvRows = csvString.split('\r\n'); - - return csvRows.reduce((acc: Record, row: string, idx) => { - if (idx === 0) { - return acc; - } - - const rowValues = row.split(','); - const nextAcc = { ...acc, [rowValues[0]]: rowValues[1] }; - - return nextAcc; - }, {}); -}; - -const NOT_DATASOURCE_IDS = ['TO_BE_CREATED', 'MANUAL']; - -const main = async () => { - const [csvRelativePath] = passedProcessArguments(); - const quickstarts = Quickstart.getAll(); - - const fullCSVPath = path.resolve(__dirname, csvRelativePath); - - const csvString = fs.readFileSync(fullCSVPath, { encoding: 'utf-8' }); - const installPlansToDataSources = parseCSV(csvString); - - const installPlanIdsWithoutDataSource: string[] = []; - - quickstarts.forEach((quickstart) => { - const installPlanIds = quickstart.config.installPlans ?? []; - const existingDataSourceIds = quickstart.config.dataSourceIds ?? []; - - if (installPlanIds.length === 0) { - return; - } - - const newDataSourceIds = installPlanIds.reduce( - (acc: string[], installPlanId) => { - const dataSourceId: string = - installPlansToDataSources[installPlanId] ?? undefined; - - if (dataSourceId === undefined) { - installPlanIdsWithoutDataSource.push(installPlanId); - return acc; - } - - if (NOT_DATASOURCE_IDS.includes(dataSourceId)) { - return acc; - } - - return [...acc, dataSourceId]; - }, - [] - ); - - const nextDataSourceIds = [ - ...new Set([...existingDataSourceIds, ...newDataSourceIds]), - ]; - - if (nextDataSourceIds.length === 0) { - return; - } - - const qsYaml = yaml.load( - fs.readFileSync(quickstart.configPath, { encoding: 'utf-8' }) - ) as Record; - - qsYaml['dataSourceIds'] = nextDataSourceIds; - - // Get positions of top level keys and move dataSourceIds to be adjacent to installPlans fields - // This gets used in the sortKeys option for the yaml dump - const yamlKeys = Object.keys(qsYaml); - yamlKeys.splice(yamlKeys.indexOf('dataSourceIds'), 1); - yamlKeys.splice(yamlKeys.indexOf('installPlans') + 1, 0, 'dataSourceIds'); - - const yamlOptions = { - lineWidth: -1, // Unlimited - sortKeys: (a: string, b: string) => { - const aIdx = yamlKeys.indexOf(a); - const bIdx = yamlKeys.indexOf(b); - - // Incase we encounter a non-top level key, preserve the order - if (aIdx === -1 || bIdx === -1) { - return 0; - } - - if (aIdx < bIdx) { - return -1; - } else if (aIdx > bIdx) { - return 1; - } else { - return 0; - } - }, - }; - - fs.writeFileSync( - path.resolve(quickstart.basePath, quickstart.identifier), - yaml.dump(qsYaml, yamlOptions) - ); - }); - - console.log('Data source assignment to quickstarts complete.'); - console.log( - `Install plan ids without a datasource: ${installPlanIdsWithoutDataSource.length}`, - installPlanIdsWithoutDataSource - ); -}; - -main(); diff --git a/utils/mock_files/install/mock-install-1/install.yml b/utils/mock_files/install/mock-install-1/install.yml deleted file mode 100644 index 8d50424ac9..0000000000 --- a/utils/mock_files/install/mock-install-1/install.yml +++ /dev/null @@ -1,22 +0,0 @@ -id: mock-install-1 -name: Test Install Agent -title: Test Install Install -description: | - this is some description - -target: - type: agent - destination: host - os: - - linux - - windows - -install: - mode: targetedInstall - destination: - recipeName: test-install-installer - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/install-infrastructure-agent/linux-installation/install-infrastructure-monitoring-agent-linux/#manual-install diff --git a/utils/mock_files/install/mock-install-2/install.yml b/utils/mock_files/install/mock-install-2/install.yml deleted file mode 100644 index 68c754714c..0000000000 --- a/utils/mock_files/install/mock-install-2/install.yml +++ /dev/null @@ -1,22 +0,0 @@ -id: mock-install-2 -name: Test Install Agent -title: Test Install Install -description: | - this is some description - -target: - type: agent - destination: host - os: - - linux - - windows - -install: - mode: targetedInstall - destination: - recipeName: test-install-installer - -fallback: - mode: link - destination: - url: invalid-url diff --git a/utils/mock_files/install/mock-install-3/install.yml b/utils/mock_files/install/mock-install-3/install.yml deleted file mode 100644 index 3d49aa3431..0000000000 --- a/utils/mock_files/install/mock-install-3/install.yml +++ /dev/null @@ -1,21 +0,0 @@ -id: test-install-install -title: Test Install Install -description: | - this is some description - -target: - type: agent - destination: host - os: - - linux - - windows - -install: - mode: targetedInstall - destination: - recipeName: test-install-installer - -fallback: - mode: link - destination: - url: https://docs.newrelic.com/docs/infrastructure/install-infrastructure-agent/linux-installation/install-infrastructure-monitoring-agent-linux/#manual-install diff --git a/utils/mock_files/install/mock-install-4/install.yml b/utils/mock_files/install/mock-install-4/install.yml deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/utils/mock_files/quickstarts/mock-quickstart-1/config.yml b/utils/mock_files/quickstarts/mock-quickstart-1/config.yml index 1d817169a4..4c1fc35d78 100644 --- a/utils/mock_files/quickstarts/mock-quickstart-1/config.yml +++ b/utils/mock_files/quickstarts/mock-quickstart-1/config.yml @@ -26,11 +26,6 @@ keywords: - searchable - keywords -# Reference to install plans located under /install directory -# Allows us to construct reusable "install plans" and just use their ID in the quickstart config -installPlans: - - mock-install-1 - dataSourceIds: - test-data-source @@ -41,4 +36,3 @@ documentation: # Content / Design icon: logo.png -website: https://www.newrelic.com diff --git a/utils/mock_files/quickstarts/mock-quickstart-10/config.yml b/utils/mock_files/quickstarts/mock-quickstart-10/config.yml index 7917d9d287..804919a117 100644 --- a/utils/mock_files/quickstarts/mock-quickstart-10/config.yml +++ b/utils/mock_files/quickstarts/mock-quickstart-10/config.yml @@ -27,11 +27,6 @@ keywords: - searchable - keywords -# Reference to install plans located under /install directory -# Allows us to construct reusable "install plans" and just use their ID in the quickstart config -installPlans: - - mock-install-1 - documentation: - name: Installation Docs url: docs.newrelic.com @@ -39,7 +34,6 @@ documentation: # Content / Design icon: logo.png -website: https://www.newrelic.com dashboards: - mock-dashboard-1 @@ -50,4 +44,3 @@ alertPolicies: dataSourceIds: - test-data-source - nodejs - diff --git a/utils/mock_files/quickstarts/mock-quickstart-11/config.yml b/utils/mock_files/quickstarts/mock-quickstart-11/config.yml index 56fa840563..797829fe26 100644 --- a/utils/mock_files/quickstarts/mock-quickstart-11/config.yml +++ b/utils/mock_files/quickstarts/mock-quickstart-11/config.yml @@ -21,11 +21,6 @@ authors: # No keywords -# Reference to install plans located under /install directory -# Allows us to construct reusable "install plans" and just use their ID in the quickstart config -installPlans: - - mock-install-1 - dataSourceIds: - test-data-source @@ -36,4 +31,3 @@ documentation: # Content / Design icon: logo.png -website: https://www.newrelic.com \ No newline at end of file diff --git a/utils/mock_files/quickstarts/mock-quickstart-2/config.yml b/utils/mock_files/quickstarts/mock-quickstart-2/config.yml index 6597b162ca..e41d13aafc 100644 --- a/utils/mock_files/quickstarts/mock-quickstart-2/config.yml +++ b/utils/mock_files/quickstarts/mock-quickstart-2/config.yml @@ -27,11 +27,6 @@ keywords: - searchable - keywords -# Reference to install plans located under /install directory -# Allows us to construct reusable "install plans" and just use their ID in the quickstart config -installPlans: - - mock-install-1 - documentation: - name: Installation Docs url: docs.newrelic.com @@ -39,7 +34,6 @@ documentation: # Content / Design icon: logo.png -website: https://www.newrelic.com dashboards: - mock-dashboard-1 @@ -49,4 +43,3 @@ alertPolicies: dataSourceIds: - test-data-source - diff --git a/utils/mock_files/quickstarts/mock-quickstart-3/config.yml b/utils/mock_files/quickstarts/mock-quickstart-3/config.yml index af222d5e72..22507c3c3e 100644 --- a/utils/mock_files/quickstarts/mock-quickstart-3/config.yml +++ b/utils/mock_files/quickstarts/mock-quickstart-3/config.yml @@ -26,12 +26,6 @@ keywords: - searchable - keywords -# Reference to install plans located under /install directory -# Allows us to construct reusable "install plans" and just use their ID in the quickstart config -installPlans: - - infra-agent-targeted - - fake-install-plan - dashboards: - not-real-dash @@ -46,4 +40,3 @@ documentation: # Content / Design icon: logo.png -website: https://www.newrelic.com diff --git a/utils/mock_files/quickstarts/mock-quickstart-5/config.yml b/utils/mock_files/quickstarts/mock-quickstart-5/config.yml index 2e557e01a5..1d02a2a791 100644 --- a/utils/mock_files/quickstarts/mock-quickstart-5/config.yml +++ b/utils/mock_files/quickstarts/mock-quickstart-5/config.yml @@ -34,4 +34,3 @@ documentation: # Content / Design icon: logo.png -website: https://www.newrelic.com diff --git a/utils/mock_files/quickstarts/mock-quickstart-6/config.yml b/utils/mock_files/quickstarts/mock-quickstart-6/config.yml index d48248e188..12ed3c933b 100644 --- a/utils/mock_files/quickstarts/mock-quickstart-6/config.yml +++ b/utils/mock_files/quickstarts/mock-quickstart-6/config.yml @@ -35,7 +35,5 @@ documentation: alertPolicies: - mock-alert-policy-3 - # Content / Design icon: logo.png -website: https://www.newrelic.com diff --git a/utils/mock_files/quickstarts/mock-quickstart-7/nested-quickstart/config.yml b/utils/mock_files/quickstarts/mock-quickstart-7/nested-quickstart/config.yml index 4fc4e01bbd..7c2f0534fe 100644 --- a/utils/mock_files/quickstarts/mock-quickstart-7/nested-quickstart/config.yml +++ b/utils/mock_files/quickstarts/mock-quickstart-7/nested-quickstart/config.yml @@ -26,11 +26,6 @@ keywords: - searchable - keywords -# Reference to install plans located under /install directory -# Allows us to construct reusable "install plans" and just use their ID in the quickstart config -installPlans: - - fake-install-plan - documentation: - name: Installation Docs url: docs.newrelic.com @@ -38,4 +33,3 @@ documentation: # Content / Design icon: logo.png -website: https://www.newrelic.com diff --git a/utils/mock_files/quickstarts/mock-quickstart-8/config.yml b/utils/mock_files/quickstarts/mock-quickstart-8/config.yml index 5b46db6e9e..c4b05cc722 100644 --- a/utils/mock_files/quickstarts/mock-quickstart-8/config.yml +++ b/utils/mock_files/quickstarts/mock-quickstart-8/config.yml @@ -34,7 +34,6 @@ documentation: # Content / Design icon: logo.png -website: https://www.newrelic.com dashboards: - invalid-mock-dashboard-1 diff --git a/utils/mock_files/quickstarts/mock-quickstart-9/config.yml b/utils/mock_files/quickstarts/mock-quickstart-9/config.yml index 88ca075a32..65a444a18e 100644 --- a/utils/mock_files/quickstarts/mock-quickstart-9/config.yml +++ b/utils/mock_files/quickstarts/mock-quickstart-9/config.yml @@ -27,11 +27,6 @@ keywords: - searchable - keywords -# Reference to install plans located under /install directory -# Allows us to construct reusable "install plans" and just use their ID in the quickstart config -installPlans: - - mock-install-1 - documentation: - name: Installation Docs url: docs.newrelic.com @@ -39,7 +34,6 @@ documentation: # Content / Design icon: logo.png -website: https://www.newrelic.com dashboards: - mock-dashboard-1 @@ -49,4 +43,3 @@ alertPolicies: dataSourceIds: - nodejs - diff --git a/utils/newrelic/customEvent.ts b/utils/newrelic/customEvent.ts index 97ee41a7ad..8dd7d85722 100644 --- a/utils/newrelic/customEvent.ts +++ b/utils/newrelic/customEvent.ts @@ -15,10 +15,6 @@ export enum CUSTOM_EVENT { VALIDATE_DATA_SOURCES = 'ValidateDataSources', /** Event name which corresponds to tracking the submission or update of data sources. */ UPDATE_DATA_SOURCES = 'UpdateDataSources', - /** Event name which corresponds to tracking the validation of install plans. */ - VALIDATE_INSTALL_PLANS = 'ValidateInstallPlans', - /** Event name which corresponds to tracking the submission or update of install plans. */ - UPDATE_INSTALL_PLANS = 'UpdateInstallPlans', /** Event name which corresponds to tracking the setting of dashboard required data sources. */ SET_DASHBOARD_REQUIRED_DATASOURCES = 'SetDashboardRequiredDataSources', /** Event name which corresponds to tracking the setting of alert policy required data sources. */ diff --git a/utils/package.json b/utils/package.json index 8f19b3e9d8..8986befee9 100644 --- a/utils/package.json +++ b/utils/package.json @@ -5,11 +5,10 @@ "author": "NewRelic", "license": "Apache-2.0", "scripts": { - "validate-quickstart-install-plans": "ts-node validate-quickstart-install-plans.ts", "validate-quickstart-data-sources": "ts-node validate-quickstart-data-sources.ts", - "create-validate-install-plans": "ts-node create-validate-install-plans.ts", "create-validate-data-sources": "ts-node create-validate-data-sources.ts", "create-validate-pr-quickstarts": "ts-node create_validate_pr_quickstarts.ts", + "build-validate-quickstart-artifact": "ts-node build-validate-quickstart-artifact.ts", "check-dashboard-name-uniqueness": "ts-node check_dashboard_name_uniqueness.ts", "test": "jest -i", "check-quickstart-uniqueness": "ts-node check_quickstart_uniqueness.ts", @@ -23,7 +22,9 @@ "create-preview-links": "ts-node create-preview-links.ts", "set-alert-policy-required-datasources": "ts-node set-alert-policy-required-datasources.ts", "set-dashboards-required-datasources": "ts-node set-dashboards-required-datasources.ts", - "release": "ts-node release.ts" + "release": "ts-node release.ts", + "add-datasource-ids": "cd ./schema && ts-node add-datasource-ids.ts", + "validate-quickstart-ids": "ts-node validate-quickstart-ids.ts" }, "dependencies": { "@actions/core": "^1.10.0", @@ -39,12 +40,13 @@ "ajv": "^8.11.0", "cockatiel": "^3.0.0-beta.0", "cors": "^2.8.5", - "express": "^4.18.1", + "express": "^4.20.0", "glob": "^7.2.3", "graphql": "^16.8.1", "graphql-markdown": "^6.0.0", "jest": "^27.5.1", "js-yaml": "^4.1.0", + "lodash.get": "^4.4.2", "node-fetch": "^2.6.7", "parse-link-header": "^2.0.0", "prettier": "2.3.2", @@ -55,6 +57,7 @@ "devDependencies": { "@inquirer/confirm": "^2.0.15", "@inquirer/prompts": "^3.3.0", + "@types/lodash": "^4.17.7", "@types/prompt-sync": "^4.2.3", "dotenv": "^16.3.1", "ts-node": "^10.9.2" diff --git a/utils/schema/add-datasource-ids.ts b/utils/schema/add-datasource-ids.ts new file mode 100644 index 0000000000..83f67ac0c8 --- /dev/null +++ b/utils/schema/add-datasource-ids.ts @@ -0,0 +1,83 @@ +import * as fs from 'fs'; +import * as yaml from 'js-yaml'; + +import type { DataSourceConfig } from '../types/DataSourceConfig'; + +import { getAllDataSourceFiles } from '../lib/DataSource'; + +const ARTIFACT_SCHEMA_PATH = './artifact.json'; +const CORE_DATASOURCE_IDS_PATH = './core-datasource-ids.json'; +const DATASOURCE_BASE_PATH = '../../'; + +type ArtifactSchema = { + definitions: { + dataSourceIds: { + enum: string[]; + }; + }; +}; + +const getCommunityDataSourceIds = (): string[] => { + const allDataSources = getAllDataSourceFiles(DATASOURCE_BASE_PATH).map( + (p) => ({ + filePath: p, + content: yaml.load( + fs.readFileSync(p).toString('utf-8') + ) as DataSourceConfig, + }) + ); + + return allDataSources + .map((dataSource) => dataSource.content?.id) + .filter(Boolean); +}; + +const getCoreDataSourceIds = (): string[] => { + return yaml.load( + fs.readFileSync(CORE_DATASOURCE_IDS_PATH).toString('utf8') + ) as string[]; +}; + +const loadSchema = (filepath: string): ArtifactSchema => { + return yaml.load( + fs.readFileSync(filepath).toString('utf8') + ) as ArtifactSchema; +}; + +const updateSchema = ( + schema: ArtifactSchema, + ids: string[] +): ArtifactSchema => { + return { + ...schema, + definitions: { + ...schema.definitions, + dataSourceIds: { enum: ids }, + }, + }; +}; + +const saveSchema = (schema: ArtifactSchema, path: string): void => { + fs.writeFileSync(path, JSON.stringify(schema, null, 2)); +}; + +const main = (): void => { + const communityIds = getCommunityDataSourceIds(); + console.log(`[*] Found ${communityIds.length} community dataSources`); + + const coreIds = getCoreDataSourceIds(); + console.log(`[*] Found ${coreIds.length} core dataSources`); + + console.log('[*] Loading schema'); + const schema = loadSchema(ARTIFACT_SCHEMA_PATH); + + console.log('[*] Updating enum'); + const updatedSchema = updateSchema(schema, [...communityIds, ...coreIds]); + + console.log('[*] Saving updated schema'); + saveSchema(updatedSchema, ARTIFACT_SCHEMA_PATH); +}; + +if (require.main === module) { + main(); +} diff --git a/utils/schema/artifact.json b/utils/schema/artifact.json new file mode 100644 index 0000000000..fb9d5a9674 --- /dev/null +++ b/utils/schema/artifact.json @@ -0,0 +1,620 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema", + "type": "object", + "properties": { + "quickstarts": { + "type": "array", + "items": { + "$ref": "#/definitions/quickstart" + } + }, + "dataSources": { + "type": "array", + "items": { + "$ref": "#/definitions/dataSource" + } + }, + "alerts": { + "type": "object", + "patternProperties": { + ".*": { + "$ref": "#/definitions/alert" + } + } + }, + "dashboards": { + "type": "object", + "patternProperties": { + ".*": { + "$ref": "#/definitions/dashboard" + } + } + }, + "dataSourceIds": { + "type": "array", + "items": { + "$ref": "#/definitions/dataSourceIds" + } + } + }, + "required": [ + "quickstarts", + "dataSources", + "alerts", + "dashboards", + "dataSourceIds" + ], + "additionalProperties": false, + "definitions": { + "quickstart": { + "type": "object", + "properties": { + "quickstartUuid": { + "type": "string" + }, + "description": { + "type": "string" + }, + "summary": { + "type": "string" + }, + "displayName": { + "type": "string" + }, + "authors": { + "type": "array", + "items": { + "type": "string" + } + }, + "sourceUrl": { + "type": "string" + }, + "documentation": { + "type": "array", + "items": { + "type": "object", + "properties": { + "displayName": { + "type": "string" + }, + "description": { + "type": "string" + }, + "url": { + "type": "string" + } + }, + "required": ["displayName", "description", "url"], + "additionalProperties": false + } + }, + "supportLevel": { + "enum": ["new_relic", "community", "verified", "enterprise"] + }, + "iconUrl": { + "type": "string" + }, + "keywords": { + "type": "array", + "items": { + "type": "string" + } + }, + "slug": { + "type": "string" + }, + "alertConditions": { + "type": "array", + "items": { + "type": "string" + } + }, + "dashboards": { + "type": "array", + "items": { + "type": "string" + } + }, + "dataSourceIds": { + "type": "array", + "items": { + "$ref": "#/definitions/dataSourceIds" + } + } + }, + "required": [ + "description", + "summary", + "displayName", + "authors", + "iconUrl" + ], + "additionalProperties": false + }, + "dataSource": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "displayName": { + "type": "string" + }, + "description": { + "type": "string" + }, + "install": { + "type": "object", + "properties": { + "primary": { + "$ref": "#/definitions/installDirective" + }, + "fallback": { + "$ref": "#/definitions/installDirective" + } + }, + "required": ["primary"], + "additionalProperties": false + }, + "keywords": { + "type": "array", + "items": { + "type": "string" + } + }, + "categoryTerms": { + "type": "array", + "items": { + "type": "string" + } + }, + "iconUrl": { + "type": "string" + } + }, + "required": ["id", "displayName", "install"], + "additionalProperties": false + }, + "installDirective": { + "type": "object", + "oneOf": [ + { + "type": "object", + "properties": { + "url": { + "type": "string" + } + }, + "required": ["url"], + "additionalProperties": false + }, + { + "type": "object", + "properties": { + "nerdletId": { + "type": "string" + }, + "nerdletState": { + "type": "object" + }, + "requiresAccount": { + "type": "boolean" + } + }, + "required": ["nerdletId", "requiresAccount"], + "additionalProperties": false + } + ] + }, + "alert": { + "type": "array", + "items": { + "type": "object", + "properties": { + "type": { + "enum": ["baseline", "static"], + "type": "string", + "nullable": true + }, + "displayName": { + "type": "string" + }, + "description": { + "type": ["string", "null"] + }, + "rawConfiguration": { + "type": "string" + }, + "sourceUrl": { + "type": "string" + }, + "screenshots": { + "type": "array", + "items": { + "type": "object", + "properties": { + "url": { + "type": "string" + } + }, + "required": ["url"] + } + } + }, + "required": ["displayName", "rawConfiguration"], + "additionalProperties": false + } + }, + "dashboard": { + "type": "object", + "properties": { + "displayName": { + "type": "string" + }, + "description": { + "type": ["string", "null"] + }, + "rawConfiguration": { + "type": "string" + }, + "sourceUrl": { + "type": "string" + }, + "screenshots": { + "type": "array", + "items": { + "type": "object", + "properties": { + "url": { + "type": "string" + } + }, + "required": ["url"] + } + } + }, + "required": ["displayName", "rawConfiguration"], + "additionalProperties": false + }, + "dataSourceIds": { + "enum": [ + "active-directory", + "ads-web-gpt", + "ads-web-prebid", + "aerospike", + "akamai", + "alert-quality-management", + "amazon-cloudwatch-metric-streams", + "amazon-eks-on-aws-fargate", + "ansible-automation-controller", + "apache-druid", + "apache-flink", + "apache-hadoop", + "apache-mesos", + "apache-traffic-server", + "apache-zookeeper", + "apdex-optimizer", + "apigee-api", + "apm-signals", + "argocd", + "atlassian-jira", + "audit-events-analysis", + "aws-cloudfront-logs", + "azure-monitor", + "azure-virtual-machines", + "battlesnake", + "bitbucket", + "third-party-biztalk360", + "blameless", + "blazemeter", + "blazor-webassembly", + "boomi", + "browser-segment-investigation", + "browser-signals", + "cacti", + "camel", + "catchpoint-quickstart", + "circleci", + "cloud-spanner", + "cloudflare", + "contentsquare", + "conviva", + "cribl", + "customer-experience-bottom-funnel-analysis", + "customer-experience-quality-foundation", + "dapr", + "databricks", + "datazoom", + "dbmarlin", + "dbt-cloud", + "deeper-network", + "delphix", + "docker-otel", + "dojo", + "elasticsearch-query", + "elixir", + "email-notifications", + "envoy", + "event-api", + "fastly", + "fivetran", + "flutter-android", + "flutter-ios", + "flutter-web", + "full-story", + "gatsby-build-newrelic", + "gcp-pubsub", + "gh-gates", + "gigamon-appinsights", + "github-repo", + "gitlab-integration", + "glassbox", + "grafana-dashboard-migration", + "grafana-prometheus-integration", + "gridgain-data-source", + "hardware-sentry", + "hcp-consul-otel", + "hcp-consul", + "hcp-envoy", + "hcp-vault-logs", + "hcp-vault-metrics", + "hivemq-integration-docs", + "ibmmq-integration-docs", + "infrastructure-signals", + "jdbc-executebatch", + "otel-jenkins-integration", + "jfrog-platform-cloud", + "jfrog-platform", + "jira-errors-inbox", + "k6-prometheus", + "k6", + "kentik", + "lacework", + "lambdatest", + "langchain-vectordb", + "langchain", + "launchdarkly", + "lighthouse", + "lighttpd", + "linkerd", + "logs-api", + "logs-default", + "metric-api", + "mobile-getting-started", + "mobile-network-performance-install", + "mobile-signals", + "mongodb-prometheus-integration-docs", + "mule-esb", + "mux-video", + "netlify-builds", + "netlify-logs", + "netscaler", + "network-data-ingest-and-cardinality", + "network-routers-and-switches", + "network-syslog", + "newrelic-cli", + "nextcloud", + "nr-reports", + "nuxtjs", + "nvidia-dcgm", + "nvidia-gpu", + "nvidia-jetson", + "nvidia-triton", + "nvml", + "ocsf", + "okhttp", + "onepane", + "opencensus", + "openstack-controller", + "opslevel", + "pagerduty", + "perfmon", + "pihole", + "port-monitoring", + "postfix", + "postman", + "pulumi", + "quantum-metric", + "rafay", + "ray", + "redis-enterprise", + "redis-otel", + "redmine", + "redpanda", + "releaseiq", + "newrelic-java-rmi", + "roku-http-analytics", + "roku", + "salesforce-eventlog-for-logs", + "sendgrid-integration", + "sendmail", + "servicenow-notifications", + "shopify-hydrogen", + "shopify", + "signl4", + "singlestore", + "skykit", + "slack-notifications", + "snowflake", + "solutions-hub-dashboards", + "sonarqube", + "speedscale", + "split", + "squid-prometheus-integration-docs", + "stripe", + "sybase-integration", + "synthetics-private-locations", + "telemetry-data-platform", + "temporal-cloud", + "temporal", + "terraform", + "tidbcloud", + "trace-and-span-api", + "traceloop", + "trendmicro-cloudone-conformity", + "tvos-mobile", + "unix", + "vercel", + "vertica", + "newrelic-java-vertx", + "newrelic-java-vertx-extensions", + "video-android", + "video-chromecast", + "video-ios-tvos", + "video-web-akamai", + "video-web-html5", + "video-web-jwplayer", + "video-web-theplatform", + "video-web-videojs", + "webhook-notifications", + "windows-certs", + "winservices-integration-docs", + "xmatters", + "zebrium", + "zenduty", + "zipkin", + "activemq", + "amazon-cloudwatch", + "amazon-kinesis", + "amazon-linux", + "amazon-linux-logs", + "amazon-s3", + "amazon-sagemaker", + "amazon-web-services", + "android", + "angular", + "angular-js", + "ansible-install", + "apache", + "apm-logs", + "aporia", + "aws-firelens", + "aws-lambda", + "aws-migrate-metricStream", + "aws-security-hub", + "aws-vpc-flow-logs", + "azure-openai", + "backbone", + "bring-your-own-data", + "capacitor", + "cassandra", + "centos", + "centos-logs", + "change-tracking", + "chef-install", + "comet", + "confluent-cloud", + "consul", + "cordova", + "couchbase", + "dagshub", + "debian", + "debian-logs", + "dependabot", + "distributed-tracing", + "docker", + "dropwizard", + "elasticsearch", + "ember", + "f5", + "fluent-bit", + "fluentd", + "flutter", + "gatsby", + "gcp-vpc-flow-logs", + "golang", + "google-cloud-platform", + "google-cloud-platform-logs", + "govcloud", + "guided-install", + "haproxy", + "headerless-log-api", + "heroku", + "heroku-http", + "ios", + "java", + "java-logs", + "jmx", + "jquery", + "kafka", + "kamon", + "kubernetes", + "kubernetes-logs", + "linux", + "linux-infra", + "linux-logs", + "llm-application", + "logstash", + "macos", + "maui", + "memcached", + "micrometer", + "microsoft-azure", + "microsoft-azure-blob-storage", + "microsoft-azure-event-hub", + "microsoft-sql-server", + "microsoftnet", + "microsoftnet-logs", + "mona", + "mongodb", + "mysql", + "nagios", + "network-devices", + "network-flows", + "network-synthetics", + "new-relic-browser", + "new-relic-infrastructure-agent", + "new-relic-synthetics", + "next-js", + "nginx", + "node-js", + "nr-ai-monitoring", + "nvidia-nim", + "opentelemetry", + "oracle-database", + "php", + "pixie", + "postgresql", + "powerdns", + "prometheus", + "prometheus-agent-mode", + "puppet-install", + "python", + "rabbitmq", + "react", + "react-native", + "redis", + "rhel", + "rhel-logs", + "ruby", + "ruby-logs", + "security-api", + "sles", + "sles-logs", + "snmp", + "snyk", + "statsd", + "super-agent", + "syslog", + "trivy", + "truera", + "ubuntu", + "ubuntu-logs", + "unity", + "unreal", + "varnish", + "vmware-tanzu", + "vmware-vsphere", + "vue", + "windows", + "windows-infra", + "windows-logs", + "xamarin", + "xcframework", + "zepto" + ] + } + } +} + diff --git a/utils/schema/core-datasource-ids.json b/utils/schema/core-datasource-ids.json new file mode 100644 index 0000000000..477f2a1969 --- /dev/null +++ b/utils/schema/core-datasource-ids.json @@ -0,0 +1,141 @@ +[ + "activemq", + "amazon-cloudwatch", + "amazon-kinesis", + "amazon-linux", + "amazon-linux-logs", + "amazon-s3", + "amazon-sagemaker", + "amazon-web-services", + "android", + "angular", + "angular-js", + "ansible-install", + "apache", + "apm-logs", + "aporia", + "aws-firelens", + "aws-lambda", + "aws-migrate-metricStream", + "aws-security-hub", + "aws-vpc-flow-logs", + "azure-openai", + "backbone", + "bring-your-own-data", + "capacitor", + "cassandra", + "centos", + "centos-logs", + "change-tracking", + "chef-install", + "comet", + "confluent-cloud", + "consul", + "cordova", + "couchbase", + "dagshub", + "debian", + "debian-logs", + "dependabot", + "distributed-tracing", + "docker", + "dropwizard", + "elasticsearch", + "ember", + "f5", + "fluent-bit", + "fluentd", + "flutter", + "gatsby", + "gcp-vpc-flow-logs", + "golang", + "google-cloud-platform", + "google-cloud-platform-logs", + "govcloud", + "guided-install", + "haproxy", + "headerless-log-api", + "heroku", + "heroku-http", + "ios", + "java", + "java-logs", + "jmx", + "jquery", + "kafka", + "kamon", + "kubernetes", + "kubernetes-logs", + "linux", + "linux-infra", + "linux-logs", + "llm-application", + "logstash", + "macos", + "maui", + "memcached", + "micrometer", + "microsoft-azure", + "microsoft-azure-blob-storage", + "microsoft-azure-event-hub", + "microsoft-sql-server", + "microsoftnet", + "microsoftnet-logs", + "mona", + "mongodb", + "mysql", + "nagios", + "network-devices", + "network-flows", + "network-synthetics", + "new-relic-browser", + "new-relic-infrastructure-agent", + "new-relic-synthetics", + "next-js", + "nginx", + "node-js", + "nr-ai-monitoring", + "nvidia-nim", + "opentelemetry", + "oracle-database", + "php", + "pixie", + "postgresql", + "powerdns", + "prometheus", + "prometheus-agent-mode", + "puppet-install", + "python", + "rabbitmq", + "react", + "react-native", + "redis", + "rhel", + "rhel-logs", + "ruby", + "ruby-logs", + "security-api", + "sles", + "sles-logs", + "snmp", + "snyk", + "statsd", + "super-agent", + "syslog", + "trivy", + "truera", + "ubuntu", + "ubuntu-logs", + "unity", + "unreal", + "varnish", + "vmware-tanzu", + "vmware-vsphere", + "vue", + "windows", + "windows-infra", + "windows-logs", + "xamarin", + "xcframework", + "zepto" +] diff --git a/utils/types/Artifact.ts b/utils/types/Artifact.ts new file mode 100644 index 0000000000..88fd0660d7 --- /dev/null +++ b/utils/types/Artifact.ts @@ -0,0 +1,100 @@ +/* -- Data source -- */ + +export interface ArtifactDataSourceConfig { + id: string; + displayName: string; + description?: string; + install: ArtifactInstallDirective; + keywords?: string[]; + categoryTerms?: string[]; + iconUrl?: string; +} + +export type ArtifactInstallDirective = { + primary: ArtifactInstall; + fallback?: ArtifactInstall; +}; + +export type ArtifactInstall = + | ArtifactDataSourceConfigNerdletDirective + | ArtifactDataSourceConfigLinkDirective; + +interface ArtifactDataSourceConfigNerdletDirective { + nerdletId: string; + nerdletState: Record; + requiresAccount: boolean; +} + +interface ArtifactDataSourceConfigLinkDirective { + url: string; +} + +interface ArtifactDataSourceConfigNerdletDirective { + nerdletId: string; + nerdletState: Record; + requiresAccount: boolean; +} + +/* -- Quickstart -- */ + +type QuickstartConfigDocumentation = { + displayName: string; + description: string; + url: string; +}; + +export type ArtifactQuickstartConfigSupportLevel = + | 'new_relic' + | 'community' + | 'verified' + // Enterprise is deprecated. However some quickstarts still have this support + // level within their config. + | 'enterprise'; + +export interface ArtifactQuickstartConfig { + quickstartUuid: string; + description: string; + displayName: string; + slug?: string; + documentation: QuickstartConfigDocumentation[]; + iconUrl: string; + keywords?: string[]; + summary: string; + supportLevel: ArtifactQuickstartConfigSupportLevel; + alertConditions?: string[]; + dashboards?: string[]; + dataSourceIds?: string[]; + authors: string[]; +}; + +/* -- Dashboard -- */ + +type DashboardScreenshot = { + url: string; +}; + +export interface ArtifactDashboardConfig { + [id: string]: { + description?: string; + displayName: string; + rawConfiguration: string; + sourceUrl?: string; + screenshots?: DashboardScreenshot[]; + }; +} + +/* --- Alert --- */ + +export type ArtifactAlertType = 'baseline' | 'static'; + +type ArtifactAlert = { + description?: string; + displayName: string; + rawConfiguration: string; + sourceUrl?: string; + type: ArtifactAlertType; +}; + +export interface ArtifactAlertConfig { + [id: string]: ArtifactAlert[]; +} diff --git a/utils/types/InstallPlanConfig.ts b/utils/types/InstallPlanConfig.ts deleted file mode 100644 index 4494d22c60..0000000000 --- a/utils/types/InstallPlanConfig.ts +++ /dev/null @@ -1,47 +0,0 @@ -/** - * Types in this file correspond to usage in config files. - * - * Names and fields may overlap with types used in interactions with NerdGraph. - */ - -export interface InstallPlanConfig { - id: string; - name: string; - title: string; - description: string; - target: InstallPlanTarget; - install: InstallPlanInstall; - fallback?: InstallPlanInstall; -} - -export interface InstallPlanTarget { - destination: InstallPlanConfigTargetDestination; - os?: InstallPlanConfigTargetOS[]; - type: InstallPlanConfigTargetType; -} - -export type InstallPlanInstall = - | { mode: 'link'; destination: { url: string } } - | { - mode: 'nerdlet'; - destination: { - nerdletId: string; - nerdletState?: { [x: string]: string }; - }; - } - | { mode: 'targetedInstall'; destination: { recipeName: string } }; - -export type InstallPlanConfigTargetType = - | 'integration' - | 'agent' - | 'on_host_integration' - | 'unknown'; - -export type InstallPlanConfigTargetOS = 'darwin' | 'linux' | 'windows'; - -export type InstallPlanConfigTargetDestination = - | 'application' - | 'cloud' - | 'host' - | 'kubernetes' - | 'unknown'; diff --git a/utils/types/InstallPlanMutationVariables.ts b/utils/types/InstallPlanMutationVariables.ts deleted file mode 100644 index 78eb276b49..0000000000 --- a/utils/types/InstallPlanMutationVariables.ts +++ /dev/null @@ -1,59 +0,0 @@ -import { - InstallPlanConfigTargetOS, - InstallPlanConfigTargetType, - InstallPlanConfigTargetDestination, -} from './InstallPlanConfig'; - -export interface InstallPlanMutationVariable { - dryRun: boolean; - description: string; - displayName: string; - fallback?: InstallPlanDirectiveInput; - heading: string; - id: string; - primary: InstallPlanDirectiveInput; - target: InstallPlanTargetInput; -} - -export interface InstallPlanTargetInput { - destination: InstallPlanDestination; - os?: InstallPlanOperatingSystem[]; - type: InstallPlanTargetType; -} - -export type InstallPlanDirectiveInput = - | TargetedInstallDirective - | LinkDirective - | NerdletDirective - | DefaultDirective; - -interface TargetedInstallDirective { - targeted: { - recipeName: string; - }; -} - -interface LinkDirective { - link: { - url: string; - }; -} - -interface NerdletDirective { - nerdlet: { - nerdletId: string; - nerdletState?: string; - }; -} - -interface DefaultDirective { - mode: string; - destination?: undefined; -} - -export type InstallPlanDestination = - Uppercase; - -export type InstallPlanOperatingSystem = Uppercase; - -export type InstallPlanTargetType = Uppercase; diff --git a/utils/types/QuickstartConfig.ts b/utils/types/QuickstartConfig.ts index 621481592d..63286b1f9d 100644 --- a/utils/types/QuickstartConfig.ts +++ b/utils/types/QuickstartConfig.ts @@ -27,7 +27,6 @@ export interface QuickstartConfig { icon: string; keywords?: string[]; summary: string; - installPlans?: string[]; id: string; level: QuickstartConfigSupportLevel; alertPolicies?: string[]; diff --git a/utils/types/QuickstartMutationVariable.ts b/utils/types/QuickstartMutationVariable.ts index fd0d691697..d652a97275 100644 --- a/utils/types/QuickstartMutationVariable.ts +++ b/utils/types/QuickstartMutationVariable.ts @@ -43,7 +43,6 @@ export interface QuickstartMetaData { sourceUrl?: string; summary: string; supportLevel?: QuickstartSupportLevel; - installPlanStepIds?: string[]; dashboards?: QuickstartDashboardInput[]; dataSourceIds?: string[]; } diff --git a/utils/validate-quickstart-ids.ts b/utils/validate-quickstart-ids.ts new file mode 100644 index 0000000000..e9603090ad --- /dev/null +++ b/utils/validate-quickstart-ids.ts @@ -0,0 +1,43 @@ +import * as fs from 'fs'; +import * as path from 'path'; +import * as glob from 'glob'; +import * as yaml from 'js-yaml'; + +import { QuickstartConfig } from './types/QuickstartConfig'; + +const getQuickstartPaths = () => + glob.sync(path.resolve('..', 'quickstarts', '**', 'config.+(yml|yaml)')); + +const findMissingIds = (quickstartPaths: string[]) => { + const quickstartsMissingIds: string[] = []; + + quickstartPaths.forEach((filePath) => { + const config = yaml.load( + fs.readFileSync(filePath).toString('utf-8') + ) as QuickstartConfig; + + if (!config.id) { + quickstartsMissingIds.push(config.title); + } + }); + + return quickstartsMissingIds; +}; + +const main = () => { + const quickstartPaths = getQuickstartPaths(); + const quickstartsMissingIds = findMissingIds(quickstartPaths); + + if (quickstartsMissingIds.length > 0) { + console.log('\nThe following quickstarts are missing IDs:'); + quickstartsMissingIds.forEach((title) => console.log(`\t- ${title}`)); + + process.exit(1); + } + + console.log('[*] All quickstarts have IDs'); +}; + +if (require.main === module) { + main(); +} diff --git a/utils/validate-quickstart-install-plans.ts b/utils/validate-quickstart-install-plans.ts deleted file mode 100644 index d7394bb160..0000000000 --- a/utils/validate-quickstart-install-plans.ts +++ /dev/null @@ -1,76 +0,0 @@ -import { - fetchPaginatedGHResults, - filterQuickstartConfigFiles, - filterOutTestFiles, - GithubAPIPullRequestFile, - isNotRemoved, -} from './lib/github-api-helpers'; - -import Quickstart from './lib/Quickstart'; -import InstallPlan from './lib/InstallPlan'; -import { passedProcessArguments } from './lib/helpers'; - -/** - * Main validation logic ensuring install plans specified in config files actually exist - */ -export const validateInstallPlanIds = ( - githubFiles: GithubAPIPullRequestFile[] -) => { - const configFiles: GithubAPIPullRequestFile[] = - filterQuickstartConfigFiles(githubFiles); - const existingConfigFiles: GithubAPIPullRequestFile[] = - configFiles.filter(isNotRemoved); // Filter out deleted files - - const quickstarts = existingConfigFiles.map( - ({ filename }) => new Quickstart(filename) - ); - - const quickstartsWithInvalidInstall = quickstarts - .map((quickstart) => { - const invalidIds = - quickstart.config.installPlans?.filter((installPlanId) => { - return !new InstallPlan(installPlanId).isValid; - }) ?? []; - - return { - quickstart, - invalidInstallPlans: invalidIds, - }; - }) - .filter((q) => q.invalidInstallPlans.length > 0); - - if (quickstartsWithInvalidInstall.length > 0) { - console.error( - `ERROR: Found install plans with no corresponding install plan id.\n` - ); - console.error(`An install plan id must match an existing install plan id.`); - quickstartsWithInvalidInstall.forEach((m) => - console.error( - `- ${m.invalidInstallPlans.join(', ')} in ${m.quickstart.configPath}` - ) - ); - console.error( - `\nPlease change to an existing install plan id or remove the ids.` - ); - - if (require.main === module) { - process.exit(1); - } - } -}; - -const main = async () => { - const [GITHUB_API_URL] = passedProcessArguments(); - const githubToken = process.env.GITHUB_TOKEN; - - if (!githubToken) { - console.error('GITHUB_TOKEN is not defined.'); - process.exit(1); - } - const files = await fetchPaginatedGHResults(GITHUB_API_URL, githubToken); - validateInstallPlanIds(filterOutTestFiles(files)); -}; - -if (require.main === module) { - main(); -} diff --git a/utils/yarn.lock b/utils/yarn.lock index c168d81d30..1c48279c52 100644 --- a/utils/yarn.lock +++ b/utils/yarn.lock @@ -924,6 +924,11 @@ resolved "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-4.0.5.tgz" integrity sha512-FhpRzf927MNQdRZP0J5DLIdTXhjLYzeUTmLAu69mnVksLH9CJY3IuSeEgbKUki7GQZm0WqDkGzyxju2EZGD2wA== +"@types/lodash@^4.17.7": + version "4.17.7" + resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.17.7.tgz#2f776bcb53adc9e13b2c0dfd493dfcbd7de43612" + integrity sha512-8wTvZawATi/lsmNu10/j2hk1KEP0IvjubqPE3cu1Xz7xfXXt5oCq3SNUz4fMIP4XGF9Ky+Ue2tBA3hcS7LSBlA== + "@types/mime@*": version "3.0.1" resolved "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz" @@ -1216,21 +1221,21 @@ balanced-match@^1.0.0: resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== -body-parser@1.20.1: - version "1.20.1" - resolved "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz" - integrity sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw== +body-parser@1.20.3: + version "1.20.3" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.3.tgz#1953431221c6fb5cd63c4b36d53fab0928e548c6" + integrity sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g== dependencies: bytes "3.1.2" - content-type "~1.0.4" + content-type "~1.0.5" debug "2.6.9" depd "2.0.0" destroy "1.2.0" http-errors "2.0.0" iconv-lite "0.4.24" on-finished "2.4.1" - qs "6.11.0" - raw-body "2.5.1" + qs "6.13.0" + raw-body "2.5.2" type-is "~1.6.18" unpipe "1.0.0" @@ -1242,12 +1247,12 @@ brace-expansion@^1.1.7: balanced-match "^1.0.0" concat-map "0.0.1" -braces@^3.0.2: - version "3.0.2" - resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz" - integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== +braces@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.3.tgz#490332f40919452272d55a8480adc0c441358789" + integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== dependencies: - fill-range "^7.0.1" + fill-range "^7.1.1" browser-process-hrtime@^1.0.0: version "1.0.0" @@ -1297,6 +1302,17 @@ call-bind@^1.0.0: function-bind "^1.1.1" get-intrinsic "^1.0.2" +call-bind@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.7.tgz#06016599c40c56498c18769d2730be242b6fa3b9" + integrity sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w== + dependencies: + es-define-property "^1.0.0" + es-errors "^1.3.0" + function-bind "^1.1.2" + get-intrinsic "^1.2.4" + set-function-length "^1.2.1" + callsites@^3.0.0: version "3.1.0" resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" @@ -1431,10 +1447,10 @@ content-disposition@0.5.4: dependencies: safe-buffer "5.2.1" -content-type@~1.0.4: - version "1.0.4" - resolved "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz" - integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== +content-type@~1.0.4, content-type@~1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" + integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== convert-source-map@^1.4.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0: version "1.8.0" @@ -1448,10 +1464,10 @@ cookie-signature@1.0.6: resolved "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz" integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ== -cookie@0.5.0: - version "0.5.0" - resolved "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz" - integrity sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw== +cookie@0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.6.0.tgz#2798b04b071b0ecbff0dbb62a505a8efa4e19051" + integrity sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw== cors@^2.8.5: version "2.8.5" @@ -1540,6 +1556,15 @@ deepmerge@^4.2.2: resolved "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz" integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== +define-data-property@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/define-data-property/-/define-data-property-1.1.4.tgz#894dc141bb7d3060ae4366f6a0107e68fbe48c5e" + integrity sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A== + dependencies: + es-define-property "^1.0.0" + es-errors "^1.3.0" + gopd "^1.0.1" + delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" @@ -1607,6 +1632,11 @@ encodeurl@~1.0.2: resolved "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz" integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== +encodeurl@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-2.0.0.tgz#7b8ea898077d7e409d3ac45474ea38eaf0857a58" + integrity sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg== + error-ex@^1.3.1: version "1.3.2" resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz" @@ -1614,6 +1644,18 @@ error-ex@^1.3.1: dependencies: is-arrayish "^0.2.1" +es-define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/es-define-property/-/es-define-property-1.0.0.tgz#c7faefbdff8b2696cf5f46921edfb77cc4ba3845" + integrity sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ== + dependencies: + get-intrinsic "^1.2.4" + +es-errors@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/es-errors/-/es-errors-1.3.0.tgz#05f75a25dab98e4fb1dcd5e1472c0546d5057c8f" + integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== + escalade@^3.1.1: version "3.1.1" resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz" @@ -1696,37 +1738,37 @@ expect@^27.5.1: jest-matcher-utils "^27.5.1" jest-message-util "^27.5.1" -express@^4.18.1: - version "4.18.2" - resolved "https://registry.npmjs.org/express/-/express-4.18.2.tgz" - integrity sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ== +express@^4.20.0: + version "4.20.0" + resolved "https://registry.yarnpkg.com/express/-/express-4.20.0.tgz#f1d08e591fcec770c07be4767af8eb9bcfd67c48" + integrity sha512-pLdae7I6QqShF5PnNTCVn4hI91Dx0Grkn2+IAsMTgMIKuQVte2dN9PeGSSAME2FR8anOhVA62QDIUaWVfEXVLw== dependencies: accepts "~1.3.8" array-flatten "1.1.1" - body-parser "1.20.1" + body-parser "1.20.3" content-disposition "0.5.4" content-type "~1.0.4" - cookie "0.5.0" + cookie "0.6.0" cookie-signature "1.0.6" debug "2.6.9" depd "2.0.0" - encodeurl "~1.0.2" + encodeurl "~2.0.0" escape-html "~1.0.3" etag "~1.8.1" finalhandler "1.2.0" fresh "0.5.2" http-errors "2.0.0" - merge-descriptors "1.0.1" + merge-descriptors "1.0.3" methods "~1.1.2" on-finished "2.4.1" parseurl "~1.3.3" - path-to-regexp "0.1.7" + path-to-regexp "0.1.10" proxy-addr "~2.0.7" qs "6.11.0" range-parser "~1.2.1" safe-buffer "5.2.1" - send "0.18.0" - serve-static "1.15.0" + send "0.19.0" + serve-static "1.16.0" setprototypeof "1.2.0" statuses "2.0.1" type-is "~1.6.18" @@ -1771,10 +1813,10 @@ figures@^3.2.0: dependencies: escape-string-regexp "^1.0.5" -fill-range@^7.0.1: - version "7.0.1" - resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz" - integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== +fill-range@^7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.1.1.tgz#44265d3cac07e3ea7dc247516380643754a05292" + integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== dependencies: to-regex-range "^5.0.1" @@ -1833,6 +1875,11 @@ function-bind@^1.1.1: resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== +function-bind@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" + integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== + gensync@^1.0.0-beta.2: version "1.0.0-beta.2" resolved "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz" @@ -1852,6 +1899,17 @@ get-intrinsic@^1.0.2: has "^1.0.3" has-symbols "^1.0.3" +get-intrinsic@^1.1.3, get-intrinsic@^1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.4.tgz#e385f5a4b5227d449c3eabbad05494ef0abbeadd" + integrity sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ== + dependencies: + es-errors "^1.3.0" + function-bind "^1.1.2" + has-proto "^1.0.1" + has-symbols "^1.0.3" + hasown "^2.0.0" + get-package-type@^0.1.0: version "0.1.0" resolved "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz" @@ -1879,6 +1937,13 @@ globals@^11.1.0: resolved "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz" integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== +gopd@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c" + integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA== + dependencies: + get-intrinsic "^1.1.3" + graceful-fs@^4.2.9: version "4.2.10" resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz" @@ -1910,6 +1975,18 @@ has-flag@^4.0.0: resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz" integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== +has-property-descriptors@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz#963ed7d071dc7bf5f084c5bfbe0d1b6222586854" + integrity sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg== + dependencies: + es-define-property "^1.0.0" + +has-proto@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has-proto/-/has-proto-1.0.3.tgz#b31ddfe9b0e6e9914536a6ab286426d0214f77fd" + integrity sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q== + has-symbols@^1.0.3: version "1.0.3" resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz" @@ -1922,6 +1999,13 @@ has@^1.0.3: dependencies: function-bind "^1.1.1" +hasown@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.2.tgz#003eaf91be7adc372e84ec59dc37252cedb80003" + integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== + dependencies: + function-bind "^1.1.2" + html-encoding-sniffer@^2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz" @@ -2602,6 +2686,11 @@ locate-path@^5.0.0: dependencies: p-locate "^4.1.0" +lodash.get@^4.4.2: + version "4.4.2" + resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" + integrity sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ== + lodash.isplainobject@^4.0.6: version "4.0.6" resolved "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz" @@ -2648,10 +2737,10 @@ media-typer@0.3.0: resolved "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz" integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== -merge-descriptors@1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz" - integrity sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w== +merge-descriptors@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.3.tgz#d80319a65f3c7935351e5cfdac8f9318504dbed5" + integrity sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ== merge-stream@^2.0.0: version "2.0.0" @@ -2664,11 +2753,11 @@ methods@~1.1.2: integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== micromatch@^4.0.4: - version "4.0.5" - resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz" - integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== + version "4.0.8" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.8.tgz#d66fa18f3a47076789320b9b1af32bd86d9fa202" + integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA== dependencies: - braces "^3.0.2" + braces "^3.0.3" picomatch "^2.3.1" mime-db@1.52.0: @@ -2774,6 +2863,11 @@ object-assign@^4: resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= +object-inspect@^1.13.1: + version "1.13.2" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.2.tgz#dea0088467fb991e67af4058147a24824a3043ff" + integrity sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g== + object-inspect@^1.9.0: version "1.12.2" resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz" @@ -2883,10 +2977,10 @@ path-parse@^1.0.7: resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== -path-to-regexp@0.1.7: - version "0.1.7" - resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz" - integrity sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ== +path-to-regexp@0.1.10: + version "0.1.10" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.10.tgz#67e9108c5c0551b9e5326064387de4763c4d5f8b" + integrity sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w== picocolors@^1.0.0: version "1.0.0" @@ -2962,6 +3056,13 @@ qs@6.11.0: dependencies: side-channel "^1.0.4" +qs@6.13.0: + version "6.13.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.13.0.tgz#6ca3bd58439f7e245655798997787b0d88a51906" + integrity sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg== + dependencies: + side-channel "^1.0.6" + querystringify@^2.1.1: version "2.2.0" resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" @@ -2972,10 +3073,10 @@ range-parser@~1.2.1: resolved "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== -raw-body@2.5.1: - version "2.5.1" - resolved "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz" - integrity sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig== +raw-body@2.5.2: + version "2.5.2" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.2.tgz#99febd83b90e08975087e8f1f9419a149366b68a" + integrity sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA== dependencies: bytes "3.1.2" http-errors "2.0.0" @@ -3098,16 +3199,47 @@ send@0.18.0: range-parser "~1.2.1" statuses "2.0.1" -serve-static@1.15.0: - version "1.15.0" - resolved "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz" - integrity sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g== +send@0.19.0: + version "0.19.0" + resolved "https://registry.yarnpkg.com/send/-/send-0.19.0.tgz#bbc5a388c8ea6c048967049dbeac0e4a3f09d7f8" + integrity sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw== + dependencies: + debug "2.6.9" + depd "2.0.0" + destroy "1.2.0" + encodeurl "~1.0.2" + escape-html "~1.0.3" + etag "~1.8.1" + fresh "0.5.2" + http-errors "2.0.0" + mime "1.6.0" + ms "2.1.3" + on-finished "2.4.1" + range-parser "~1.2.1" + statuses "2.0.1" + +serve-static@1.16.0: + version "1.16.0" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.16.0.tgz#2bf4ed49f8af311b519c46f272bf6ac3baf38a92" + integrity sha512-pDLK8zwl2eKaYrs8mrPZBJua4hMplRWJ1tIFksVC3FtBEBnl8dxgeHtsaMS8DhS9i4fLObaon6ABoc4/hQGdPA== dependencies: encodeurl "~1.0.2" escape-html "~1.0.3" parseurl "~1.3.3" send "0.18.0" +set-function-length@^1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/set-function-length/-/set-function-length-1.2.2.tgz#aac72314198eaed975cf77b2c3b6b880695e5449" + integrity sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg== + dependencies: + define-data-property "^1.1.4" + es-errors "^1.3.0" + function-bind "^1.1.2" + get-intrinsic "^1.2.4" + gopd "^1.0.1" + has-property-descriptors "^1.0.2" + setprototypeof@1.2.0: version "1.2.0" resolved "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz" @@ -3134,6 +3266,16 @@ side-channel@^1.0.4: get-intrinsic "^1.0.2" object-inspect "^1.9.0" +side-channel@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.6.tgz#abd25fb7cd24baf45466406b1096b7831c9215f2" + integrity sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA== + dependencies: + call-bind "^1.0.7" + es-errors "^1.3.0" + get-intrinsic "^1.2.4" + object-inspect "^1.13.1" + signal-exit@^3.0.2, signal-exit@^3.0.3: version "3.0.7" resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz"