Giter Site home page Giter Site logo

newrelic / nr1-groundskeeper Goto Github PK

View Code? Open in Web Editor NEW
7.0 26.0 19.0 2.71 MB

NR1 Groundkeeper allows you to generate a live view of all the APM agents across your Services.

Home Page: https://discuss.newrelic.com/t/groundskeeper-nerdpack/84168

License: Apache License 2.0

JavaScript 90.51% SCSS 9.49%
newrelic nerdpack nr1 nr1-groundskeeper agent-groundskeeper groundskeeper apm nrlabs-viz nrlabs

nr1-groundskeeper's Introduction

New Relic One Catalog Project header

Agent Groundskeeper

CI GitHub release (latest SemVer including pre-releases) Snyk

Usage

Note: Version 2.6 with Distributed Tracing ingest estimator available now.

Note: Version 2 available now! Find out what's new in v2.

Agent Groundskeeper allows you to see the latest agent versions, compared to the versions currently running based on your upgrade SLO.

Quickly and easily zoom in on your environment by filtering on tags and searching by account, language and application.

This application will help you keep up to date with the latest agent versions and benefit from new capabilities being released.

Screenshot #1

Dependencies

Requires New Relic APM.

Enabling this App

This App is available via the New Relic Catalog.

To enable it in your account:

  1. go to Add Data > Apps and Visualzations and search for "Groundskeeper"
  2. Click the Groundskeeper card, and then click the Add this App button to add it to your account(s)
  3. Click Open App to launch the app (note: on the first time accessing the app, you may be prompted to enable it)

Once you have added your accounts, you can also open the app by:

  1. Open the Apps left-hand navigation menu item (you may need to click on the Add More ellipsis if it doesn't show up by default)
  2. In the Your Apps section, locate and click on the Groundskeeper card to open the app

Manual Deployment

If you need to customize the app, fork the codebase and follow the instructions on how to Customize a Nerdpack. If you have a change you feel everyone can benefit from, please submit a PR!

Support

This project is actively maintained by the New Relic Labs team. Connect with us directly by creating issues or asking questions in the discussions section of this repo.

We also encourage you to bring your experiences and questions to the Explorers Hub where our community members collaborate on solutions and new ideas.

New Relic has open-sourced this project, which is provided AS-IS WITHOUT WARRANTY OR DEDICATED SUPPORT.

Community Support

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

https://discuss.newrelic.com/t/groundskeeper-nerdpack/84168

Please do not report issues with Agent Groundskeeper to New Relic Global Technical Support. Instead, visit the Explorers Hub for troubleshooting and best-practices.

Issues / Enhancement Requests

Issues and enhancement requests can be submitted in the Issues tab of this repository. Please search for and review the existing open issues before submitting a new issue.

Security

As noted in our security policy, New Relic is committed to the privacy and security of our customers and their data. We believe that providing coordinated disclosure by security researchers and engaging with the security community are important means to achieve our security goals. If you believe you have found a security vulnerability in this project or any of New Relic's products or websites, we welcome and greatly appreciate you reporting it to New Relic through HackerOne.

Contributing

Contributions are welcome (and if you submit a Enhancement Request, expect to be invited to contribute it yourself ๐Ÿ˜). Please review our Contributors Guide.

Keep in mind that when you submit your pull request, you'll need to sign the CLA via the click-through using CLA-Assistant. If you'd like to execute our corporate CLA, or if you have any questions, please drop us an email at [email protected].

Open Source License

This project is distributed under the Apache 2 license.

nr1-groundskeeper's People

Contributors

amit-y avatar aso1124 avatar aswanson-nr avatar danielgolden avatar devfreddy avatar jbeveland27 avatar lizbaker avatar michellosier avatar nr-opensource-bot avatar prototypicalpro avatar rudouglas avatar semantic-release-bot avatar snyk-bot avatar tangollama avatar timglaser avatar tyreer avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nr1-groundskeeper's Issues

Agent Versions wrongly grouped in "Multible versions" tab

Description

I see a couple of my applications in the "Multiple versions" tab, showing versions like:
", 6.7.0.359"
", 6.8.0.360"

The pattern seems to be: "EMPTY_VERSION, REAL_VERSION"

When I check the applications in APM Settings/Environment, I see that they are only using one version, and not multiple.

Steps to Reproduce

  • I've deployed and subscribed the STABLE channel.
  • Open the Agents Groundkeeper
  • Check the "Multiple versions" tab

Expected Behaviour

As long as I don't have multiple agent versions running, I should not see applications in the "Multiple versions" tab.

Additional context

  • Affected apps stayed in the "Multiple versions" tab, even after we've upgraded all hosts of those apps to use the latest agent versions
  • I believe I've seen one or two apps that previously correctly showed up in "Up to date" with "6.8.0.360" are now showing up in "Multiple versions" with ", 6.8.0.360"

[Repolinter] Open Source Policy Issues

Repolinter Report

๐Ÿค–This issue was automatically generated by repolinter-action, developed by the Open Source and Developer Advocacy team at New Relic. This issue will be automatically updated or closed when changes are pushed. If you have any problems with this tool, please feel free to open a GitHub issue or give us a ping in #help-opensource.

This Repolinter run generated the following results:

โ— Error โŒ Fail โš ๏ธ Warn โœ… Pass Ignored Total
0 3 0 9 0 12

Fail #

โŒ readme-starts-with-nr1-catalog-header #

The README of a community plus project should have a NR1 Catalog header at the start of the README. If you already have a NR1 Catalog header and this rule is failing, your header may be out of date. For more information please visit https://opensource.newrelic.com/oss-category/. Below is a list of files or patterns that failed:

  • README.md: The first 1 lines do not contain the pattern(s): Open source NR1 Catalog header (see https://opensource.newrelic.com/oss-category).
    • ๐Ÿ”จ Suggested Fix: prepend [![New Relic One Catalog Project header](https://github.com/newrelic/opensource-website/raw/master/src/images/categories/New_Relic_One_Catalog_Project.png)](https://opensource.newrelic.com/oss-category/#new-relic-one-catalog-project) to file

โŒ readme-contains-security-section #

Doesn't contain a security section (README.md). New Relic recommends referencing our open source security policies in the README, found at https://github.com/newrelic/.github/blob/main/SECURITY.md. For more information please visit https://nerdlife.datanerd.us/new-relic/security-guidelines-for-publishing-source-code.

โŒ readme-contains-link-to-security-policy #

Doesn't contain a link to the security policy for this repository (README.md). New Relic recommends referencing the open source security policy (found under the "Security" tab of the repository) in the README. For an example of this, please see the Open By Default repository. For more information please visit https://nerdlife.datanerd.us/new-relic/security-guidelines-for-publishing-source-code.

Passed #

Click to see rules

โœ… license-file-exists #

Found file (LICENSE). New Relic requires that all open source projects have an associated license contained within the project. This license must be permissive (e.g. non-viral or copyleft), and we recommend Apache 2.0 for most use cases. For more information please visit https://docs.google.com/document/d/1vML4aY_czsY0URu2yiP3xLAKYufNrKsc7o4kjuegpDw/edit.

โœ… readme-file-exists #

Found file (README.md). New Relic requires a README file in all projects. This README should give a general overview of the project, and should point to additional resources (security, contributing, etc.) where developers and users can learn further. For more information please visit https://github.com/newrelic/open-source-tools/tree/master/javascript/oss-template.

โœ… readme-contains-discuss-topic #

Contains a link to the appropriate discuss.newrelic.com topic (README.md). New Relic recommends directly linking the your appropriate discuss.newrelic.com topic in the README, allowing developer an alternate method of getting support. For more information please visit https://nerdlife.datanerd.us/new-relic/security-guidelines-for-publishing-source-code.

โœ… third-party-notices-file-exists #

Found file (THIRD_PARTY_NOTICES.md). A THIRD_PARTY_NOTICES.md file must be present to grant attribution to all dependencies being used by this project. For JavaScript projects, you can generate this file using the oss-cli. For more information please visit https://docs.google.com/document/d/1y644Pwi82kasNP5VPVjDV8rsmkBKclQVHFkz8pwRUtE/view.

โœ… github-actions-workflow-file-exists #

Found file (.github/workflows/pr.yml). Any Community Plus project must integrate with GitHub actions. For more information please visit https://docs.google.com/document/d/1y644Pwi82kasNP5VPVjDV8rsmkBKclQVHFkz8pwRUtE/view.

โœ… nr1-catalog-config-file-exists #

Found file (catalog/config.json).

โœ… nr1-catalog-screenshots-directory-exists #

Found file (catalog/screenshots).

โœ… nr1-catalog-documentation-file-exists #

Found file (catalog/documentation.md).

โœ… package-scripts-present #

An eslint-check and eslint-fix npm script found in file (package.json). NPM scripts for ESLint (eslint-check and eslint-fix) are required to properly integrate with the nerdpack system.

Latest agent is showing up as "Out of date"

Description

Dotnet agents just updated are displayed as "out of date" The version shown installed is "8.20.262.0" while the "latest version" table displays as "8.20.262"

Steps to Reproduce

Launch Agent Groundskeeper
Select "the latest agents" for upgrade SLO

Expected Behaviour

There should be no applications listed under "Out of date" tab. All agents should be listed under "Up to date", as the version installed and the latest version are identical.

Additionally, the agent installed is three weeks old and should not be displayed if upgrade SLO is 1 month or 6 months.

Screenshot of Output

Agent_Groundskeeper___New_Relic_One

NR1 library deprecation issues

Repolinter Report

This report was generated automatically by the Repolinter.

This Repolinter run generated the following results:

โ— Error โŒ Fail โš ๏ธ Warn โœ… Pass Ignored Total
0 0 0 7 0 7

Passed #

Click to see rules

โœ… nr1-lib-deprecation-dropdown-label #

See the New Relic Developer docs for current API details https://developer.newrelic.com/components/dropdown. For more information please visit newrelic/developer-website#1033. All files passed this test.

โœ… nr1-lib-deprecation-accountpicker-onchange #

See the New Relic Developer docs for current API details https://developer.newrelic.com/components/account-picker. For more information please visit newrelic/developer-website#1033. All files passed this test.

โœ… nr1-lib-deprecation-icon-sizetype #

See the New Relic Developer docs for current API details https://developer.newrelic.com/components/icon. For more information please visit newrelic/developer-website#1033. All files passed this test.

โœ… nr1-lib-deprecation-entity-title-table-row-cell-value-reporting #

See the New Relic Developer docs for current API details https://developer.newrelic.com/components/entity-title-table-row-cell. For more information please visit newrelic/developer-website#1033. All files passed this test.

โœ… nr1-lib-deprecation-tooltip-classname #

See the New Relic Developer docs for current API details https://developer.newrelic.com/components/tooltip. For more information please visit newrelic/developer-website#1033. All files passed this test.

โœ… nr1-lib-deprecation-tooltip-style #

See the New Relic Developer docs for current API details https://developer.newrelic.com/components/tooltip. For more information please visit newrelic/developer-website#1033. All files passed this test.

โœ… nr1-lib-deprecation-tablerow-actions-icontype #

See the New Relic Developer docs for current API details https://developer.newrelic.com/components/table-row. For more information please visit newrelic/developer-website#1033. All files passed this test.

Extend groundskeeper to track infrastructure agents

Summary

I think this request is pretty straight forward - track infrastructure agents in addition to APM agents.

Desired Behaviour

Create ability to track existing infra agent versions and compare to latest version and release date. Create toggle for APM vs Infra. Keep the SLO comparison feature in place. Filtering based on tags will not be implemented in the first version.

Possible Solution

Compare existing agent versions to latest release version and release date.

Additional context

In the future, filters may be added.

Question

What is the source of truth (URL endpoint) for getting latest infra agent version details (e.g. version number and release date) ?

Groundskeeper not functioning in NR1 production

Description

Steps to Reproduce

Expected Behaviour

Relevant Logs / Console output

Your Environment

  • NR1 CLI version used:
  • Browser name and version:
  • Operating System and version:

Additional context

Filter by tag only shows 1 application

Description

User-reported: After loading groundskeeper and filtering by tag, only one application is shown regardless of what tag is chosen.

Steps to Reproduce

Cannot reproduce reported behavior. If you're reading this and experiencing the described issue, please comment w/ reproduction steps and your os/browser environment!

Your Environment

Tested (without repro) on Mac OS X 11, Safari 14.1.2, Firefox 92.0.1

Redesign groundkeeper UI

Summary

It doesn't look like this nerdpack, as useful as it is, has had much design attention up to this point. A thoughtful redesign would improve the user experience by quite it a bit, so I'm going to take some time to work on a redesign that I can recommend in a PR.

Desired Behaviour

Exactly the behavior that it already has, but with the application of ui design best practices and a visual style that aligns matches that of NR1.

Possible Solution

A redesign! Wireframe and mockups to come in the comments...

Additional context

This matters to me because I think it's important that the open source applications that we release as an org meet our standard of design and UX. Most/if not all of the folks building these apps aren't designers. This happens to be my specialty, so here we go!

Fails to load all applications

Description of issue

We currently have over 24K APM services across multiple subaccounts, under one main account. Whether using v1 or v2, I don't get all of those loaded. Loading takes sometimes 30 mins and even then, I get at most 15K-16K loaded. Usually, loading doesn't complete at all.

Steps to replicate

  1. https://one.newrelic.com/
  2. apps
  3. agent groundskeeper
  4. onscreen it says "Agent Groundskeeper v2, Switch to v1, Scanning 24814 applications"
  5. stuck here for hours, status bar never finishes

-OR-

  1. https://one.newrelic.com/
  2. apps
  3. agent groundskeeper
  4. onscreen it says "Agent Groundskeeper v2, Switch to v2, filter bar defaulted to agents < 2 weeks old and Out of date, Loaded x applications
  5. stuck here for hours, status bar never finishes

Expected Behaviour

  • step 5 shows 24814 applications loaded
  • all reports, filters are running against 24814 applications

Relevant Logs / Console output

Your Environment

  • NR1 CLI version used:
  • Browser name and version: Google Chrome Version 113.0.5672.127 (Official Build) (64-bit)
  • Operating System and version: Windows 10 Enterprise 22H2

Additional context

Opened a ticket with New Relic knowing they have had challenges scaling to our volume before and they sent me here

Can't install following instructions, Error: Cannot destructure property 'path' of 'flags' as it is undefined.

Description

I am following the provided guide to install Groundskeeper, but when I execute:
nr1 nerdpack:clone -r https://github.com/newrelic/nr1-groundskeeper.git

I receive the error:
ยป Error: Cannot destructure property 'path' of 'flags' as it is undefined.
ยป Code: UNKNOWN

Steps to Reproduce

Download the new relic client and configure the profile according to the New Relic developer center "Build on New Relic"
Try to install the app according to the documentation in https://github.com/newrelic/nr1-groundskeeper
When executing the first step of the clone:
nr1 nerdpack:clone -r https://github.com/newrelic/nr1-groundskeeper.git
the error happens

Expected Behaviour

Clone of Git the repository

Relevant Logs / Console output

ยป Error: Cannot destructure property 'path' of 'flags' as it is undefined.
ยป Code: UNKNOWN

Your Environment

  • NR1 CLI version used: @datanerd/nr1/2.83.5 win32-x64 node-v16.11.1
  • Browser name and version: Version 120.0.6099.130 (Official Build) (64-bit)
  • Operating System and version: Microsoft Windows [Version 10.0.22631.2861] and also happens in macOS 13.6.3

Additional context

Windows
git version 2.42.0.windows.2
npm version 10.2.3

Mac
git version 2.39.3 (Apple Git-145)
npm version 9.6.4

Copy/paste Guided Install

Summary

I would like to have a copy/paste install for Infrastructure, APM, Logs, etc. which will allow me to easily update out-of-date agents without hunting for install instructions.

Desired Behaviour

When I have a list of hosts that have out-of-date agents, I would like New Relic to provide the steps to remediate.

Possible Solution

I would like a single line copy/paste which allows me to install or update the Infrastructure agent, APM, and Logs.

Additional context

I really like the Agent Groundskeeper but I want it to be more prescriptive as to what I need to do to resolve.

Provide a Sequence ID to make entity counts > 1000 manageable within accounts

Summary

When you have more than 1000 entities in an account you need to use filters to select smaller populations of entities in order to run the report. We should provide a "sequence id" that can be added as a tag to entities in an account to break up those entities into populations so the report is more efficient.

Desired Behaviour

Add a tag that indexes the entities in an account into cohorts - of max 400 or 500 or so

Possible Solution

Introduce _tagWriting function

Additional context

Need to consider removing this tag should it be encountered in subsequent runs, or give the user the ability to delete the tag

[Repolinter] Open Source Policy Issues

Repolinter Report

๐Ÿค–This issue was automatically generated by repolinter-action, developed by the Open Source and Developer Advocacy team at New Relic. This issue will be automatically updated or closed when changes are pushed. If you have any problems with this tool, please feel free to open a GitHub issue or give us a ping in #help-opensource.

This Repolinter run generated the following results:

โ— Error โŒ Fail โš ๏ธ Warn โœ… Pass Ignored Total
0 1 0 12 0 13

Fail #

โŒ code-of-conduct-file-does-not-exist #

New Relic has moved the CODE_OF_CONDUCT file to a centralized location where it is referenced automatically by every repository in the New Relic organization. Because of this change, any other CODE_OF_CONDUCT file in a repository is now redundant and should be removed. For more information please visit https://docs.google.com/document/d/1y644Pwi82kasNP5VPVjDV8rsmkBKclQVHFkz8pwRUtE/view. Found files. Below is a list of files or patterns that failed:

  • CODE_OF_CONDUCT.md
    • ๐Ÿ”จ Suggested Fix: Remove file

Passed #

Click to see rules

โœ… license-file-exists #

Found file (LICENSE). New Relic requires that all open source projects have an associated license contained within the project. This license must be permissive (e.g. non-viral or copyleft), and we recommend Apache 2.0 for most use cases. For more information please visit https://docs.google.com/document/d/1vML4aY_czsY0URu2yiP3xLAKYufNrKsc7o4kjuegpDw/edit.

โœ… readme-file-exists #

Found file (README.md). New Relic requires a README file in all projects. This README should give a general overview of the project, and should point to additional resources (security, contributing, etc.) where developers and users can learn further. For more information please visit https://github.com/newrelic/open-source-tools/tree/master/javascript/oss-template.

โœ… readme-starts-with-nr1-catalog-header #

The first 1 lines contain all of the requested patterns. (README.md). The README of a community plus project should have a NR1 Catalog header at the start of the README. If you already have a NR1 Catalog header and this rule is failing, your header may be out of date, and you should update your header with the suggested one below. For more information please visit https://opensource.newrelic.com/oss-category/.

โœ… readme-contains-security-section #

Contains a security section (README.md). New Relic recommends having a Security section in your README to address concerns such as vulnerability reporting. This security section should also contain a link to the security policy (found under the "Security" tab of the repository). For an example of this section, please see the NR1 Catalog Template. For more information please visit https://nerdlife.datanerd.us/new-relic/security-guidelines-for-publishing-source-code.

โœ… readme-contains-link-to-security-policy #

Contains a link to the security policy for this repository (README.md). New Relic recommends referencing the open source security policy (https://github.com/newrelic/<repo-name>/security/policy or ../../security/policy) in a Security section in the README. For an example of this, please see the NR1 Catalog Template. For more information please visit https://nerdlife.datanerd.us/new-relic/security-guidelines-for-publishing-source-code.

โœ… readme-contains-discuss-topic #

Contains a link to the appropriate discuss.newrelic.com topic (README.md). New Relic recommends directly linking the your appropriate discuss.newrelic.com topic in the README, allowing developer an alternate method of getting support. For more information please visit https://nerdlife.datanerd.us/new-relic/security-guidelines-for-publishing-source-code.

โœ… third-party-notices-file-exists #

Found file (THIRD_PARTY_NOTICES.md). A THIRD_PARTY_NOTICES.md file must be present to grant attribution to all dependencies being used by this project. For JavaScript projects, you can generate this file using the oss-cli. For more information please visit https://docs.google.com/document/d/1y644Pwi82kasNP5VPVjDV8rsmkBKclQVHFkz8pwRUtE/view.

โœ… github-actions-workflow-file-exists #

Found file (.github/workflows/catalog.yml). Any Community Plus project must integrate with GitHub actions. For more information please visit https://docs.google.com/document/d/1y644Pwi82kasNP5VPVjDV8rsmkBKclQVHFkz8pwRUtE/view.

โœ… nr1-catalog-config-file-exists #

Found file (catalog/config.json).

โœ… nr1-catalog-screenshots-directory-exists #

Found file (catalog/screenshots).

โœ… nr1-catalog-documentation-file-exists #

Found file (catalog/documentation.md).

โœ… package-scripts-present #

An eslint-check and eslint-fix npm script found in file (package.json). NPM scripts for ESLint (eslint-check and eslint-fix) are required to properly integrate with the nerdpack system.

Downloadable CSV of agent version report

Downloadable CSV of agent version report

Summary

The web ui for viewing agent age data is great but there are times when I want to export the whole dataset and throw it into a spreadsheet I can manipulate, annotate, and share with others.

Desired Behaviour / Solution

When viewing the agent age report, I want to click a button and have the browser download a CSV-format file. It should combine data for all tables (up to date, out of date, multi-agent, no version) and an additional column indicating which table that app would appear in.

Columns:

Account Id, Account name, AppId, App name, Language, Agent version(s), Status

Add browser application - agent install type and max agent version

Summary

Please add Agent install type and Max agent version for Browser applications. These fields can be seen in New Relic Browser application tags

Desired Behaviour

In Agent Groundskeeper, please display Agent install type (PRO_SPA, PRO, LITE) and Max agent version.
image

Possible Solution

This can be added to the version columns for quick view.

Additional context

This feature would allow users to quickly identify browser applications that are out of date, since many users user the "copy/paste" method. Also, knowing the Agent install type helps troubleshoot similar apps. RIght now, there's no quick way for grouping agent install types for Browser Applications.

Add Latest Support Agent Version

Summary

[NOTE]: Add latest supported version to dashboard

Description

[NOTE]: Adding latest support version to the dashboard would allow the customer and NR to better manager their agent deployments. It would also allow for customer to prioritize which agents need to be upgraded.

Desired Behaviour

[NOTE]: # Add supported agent version beside the latest agent version in the UI

Possible Solution

Agent age SLA report

Add a feature to report the SLA attainment of agent versions grouped by an APM tag.

Summary

I want a dashboard view that rolls up what # and % of apps have up-to-date agents when grouped by a tag (APM label). This will make reporting by service owner much easier. For example, I want to report out on SLA attainment by Environment, AZ, Owning team, etc.

Desired Behaviour / Solution

As a separate UI flow, I want to select an SLA and a tag, then see a tabular report w/ a row for each discrete value of the selected tag. The row should report out # and % of apps w/ that tag value that are: within SLA, beyond SLA, reporting multiple agent versions, and reporting no version (8 numeric columns).

Table should also include a row for all apps that do not have the selected tag applied to them or have a blank value.

Table should be sortable by any column.

Upgrade the project meta data to support new catalog commands

Add metadata to the repository that matches the example laid out here.

  • Add a config.json file to a catalog directory in the repo root, matching this format.
  • Move the /screenshots directory into catalog:
    • Update the screenshot file names (matching this format)
    • Update the screenshot links in the README.md.
  • Add a documentation.md file to a catalog directory in the repo root, matching this format.
  • (Optional) If there's additional documentation referenced in the repo, add a additionalInfo.md file to a catalog directory in the repo root, matching this format.
  • Update the relative paths in documentation.md to be absolute paths
  • Add the new header image to the top of README.md and catalog/documentation.md.
  • Ensure the README.md commands section matches Justin's snippet.
  • Run npm start and let the CLI move the nr1.json
    • Edit that file to make sure the name and description make sense.

Commas in field affects CSV columns

When downloading the data to CSV, if an app has multiple runtime versions they are autofilling into individual columns of the row which throws off the rest of fields to the right

[Repolinter] Open Source Policy Issues

Repolinter Report

๐Ÿค–This issue was automatically generated by repolinter-action, developed by the Open Source and Developer Advocacy team at New Relic. This issue will be automatically updated or closed when changes are pushed. If you have any problems with this tool, please feel free to open a GitHub issue or give us a ping in #help-opensource.

This Repolinter run generated the following results:

โ— Error โŒ Fail โš ๏ธ Warn โœ… Pass Ignored Total
0 2 0 11 0 13

Fail #

โŒ readme-starts-with-nr1-catalog-header #

The README of a community plus project should have a NR1 Catalog header at the start of the README. If you already have a NR1 Catalog header and this rule is failing, your header may be out of date, and you should update your header with the suggested one below. For more information please visit https://opensource.newrelic.com/oss-category/. Below is a list of files or patterns that failed:

  • README.md: The first 1 lines do not contain the pattern(s): Open source NR1 Catalog header (see https://opensource.newrelic.com/oss-category).
    • ๐Ÿ”จ Suggested Fix: prepend the latest code snippet found at https://github.com/newrelic/opensource-website/wiki/Open-Source-Category-Snippets#code-snippet-3 to file

โŒ readme-contains-forum-topic #

Doesn't contain a link to the appropriate forum.newrelic.com topic (README.md). New Relic recommends directly linking the your appropriate forum.newrelic.com topic in the README, allowing developer an alternate method of getting support. For more information please visit https://nerdlife.datanerd.us/new-relic/security-guidelines-for-publishing-source-code.

Passed #

Click to see rules

โœ… license-file-exists #

Found file (LICENSE). New Relic requires that all open source projects have an associated license contained within the project. This license must be permissive (e.g. non-viral or copyleft), and we recommend Apache 2.0 for most use cases. For more information please visit https://docs.google.com/document/d/1vML4aY_czsY0URu2yiP3xLAKYufNrKsc7o4kjuegpDw/edit.

โœ… readme-file-exists #

Found file (README.md). New Relic requires a README file in all projects. This README should give a general overview of the project, and should point to additional resources (security, contributing, etc.) where developers and users can learn further. For more information please visit https://github.com/newrelic/open-source-tools/tree/master/javascript/oss-template.

โœ… readme-contains-security-section #

Contains a security section (README.md). New Relic recommends having a Security section in your README to address concerns such as vulnerability reporting. This security section should also contain a link to the security policy (found under the "Security" tab of the repository). For an example of this section, please see the NR1 Catalog Template. For more information please visit https://nerdlife.datanerd.us/new-relic/security-guidelines-for-publishing-source-code.

โœ… readme-contains-link-to-security-policy #

Contains a link to the security policy for this repository (README.md). New Relic recommends referencing the open source security policy (https://github.com/newrelic/<repo-name>/security/policy or ../../security/policy) in a Security section in the README. For an example of this, please see the NR1 Catalog Template. For more information please visit https://nerdlife.datanerd.us/new-relic/security-guidelines-for-publishing-source-code.

โœ… third-party-notices-file-exists #

Found file (THIRD_PARTY_NOTICES.md). A THIRD_PARTY_NOTICES.md file must be present to grant attribution to all dependencies being used by this project. For JavaScript projects, you can generate this file using the oss-cli. For more information please visit https://docs.google.com/document/d/1y644Pwi82kasNP5VPVjDV8rsmkBKclQVHFkz8pwRUtE/view.

โœ… code-of-conduct-should-not-exist-here #

New Relic has moved the CODE_OF_CONDUCT file to a centralized location where it is referenced automatically by every repository in the New Relic organization. Because of this change, any other CODE_OF_CONDUCT file in a repository is now redundant and should be removed. For more information please visit https://docs.google.com/document/d/1y644Pwi82kasNP5VPVjDV8rsmkBKclQVHFkz8pwRUtE/view. Did not find a file matching the specified patterns. All files passed this test.

โœ… github-actions-workflow-file-exists #

Found file (.github/workflows/catalog.yml). Any Community Plus project must integrate with GitHub actions. For more information please visit https://docs.google.com/document/d/1y644Pwi82kasNP5VPVjDV8rsmkBKclQVHFkz8pwRUtE/view.

โœ… nr1-catalog-config-file-exists #

Found file (catalog/config.json).

โœ… nr1-catalog-screenshots-directory-exists #

Found file (catalog/screenshots).

โœ… nr1-catalog-documentation-file-exists #

Found file (catalog/documentation.md).

โœ… package-scripts-present #

An eslint-check and eslint-fix npm script found in file (package.json). NPM scripts for ESLint (eslint-check and eslint-fix) are required to properly integrate with the nerdpack system.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.