newrelic-experimental / nri-db

Database On-Host Integration for New Relic Infrastructure (formerly 'InfraDBPlugin')
Apache License 2.0
3 stars 2 forks source link

May be helpful to have instructions and examples on how to provide the non-packaged drivers to the environment #7

Open alaiavee opened 1 month ago

alaiavee commented 1 month ago

Summary

While out of scope for support, we are seeing some customers reach out for issues that appear related to the necessary drivers not being loaded. It may be helpful to have instructions and examples on how to provide the non-packaged drivers to the environment.

Example from what one customer reported in a support case: image

Desired Behavior

Improve documentation with guidance for providing non-packaged driver dependencies to the environment.

Possible Solution

For Sybase, I was able to find documentation on SAP's site for the jdbc42 driver below: https://help.sap.com/docs/SAP_SQL_Anywhere/98ad9ec940e2465695685d98e308dff5/3bd588c76c5f10149824867aa281fadd.html

Which indicates you may download the jconn42.jar from the SAP download center: https://help.sap.com/docs/SUPPORT_CONTENT/sqlany/3362971224.html

The SAP documentation also provides info on how to add the driver to the CLASSPATH of the environment: https://help.sap.com/docs/SAP_SQL_Anywhere/98ad9ec940e2465695685d98e308dff5/3bd588c76c5f10149824867aa281fadd.html#setting-the-class-file-path-for-jconnect ​​​​​​​

alaiavee commented 1 month ago

Updated info:

For Sybase, you only need the jconn4.jar. Everything else here as documented in the readme will be sufficient for getting started with monitoring Sybase.

To obtain the jconn4.jar, SAP Adaptive Server Enterprise (Sybase) must be installed. If it isn't installed already then you may download it from Sybase. https://www.sap.com/products/technology-platform/sybase-ase/trial.html

Sybase Install

Extract the compressed archive and install as you normally would. The key thing to install here are: SAP Adaptive Server Enterprise (Sybase) jConnect 16.0 for JDBC

Windows

Right-click on ASE_Suite.winx64.zip and select Extract All… Once extracted go to ASE_Suite.winx64 > ebf30397 > setup.exe The typical install set should cover this

Linux

Extract using the usual: sudo tar -xf ASE_Suite.linuxamd64.tgz Once extracted, run sudo ./ebf30399/setup.bin The Typical install set should get everything we need

To add the driver to the CLASPATH, refer to the instructions in the readme: https://github.com/newrelic-experimental/nri-db/blob/8eabf545964f6540914f762fec7e4e9af2a8df6c/README.md?plain=1#L550

Examples for adding the driver (jconn4.jar in this case) to the classpath for manual execution of the integration are provided in the "Manual Execution" section of the readme: https://github.com/newrelic-experimental/nri-db#manual-execution

Configuration that may be needed:

Enable Monitoring:

sp_configure "enable monitoring", 1
sp_configure "enable stmt cache monitoring", 1
sp_configure "execution time monitoring", 1
sp_configure "statement cache size", 100 (optional)

Create Monitoring Login

It is recommended to create a monitoring login for your SAP Adaptive Server Enterprise (Sybase) database.

use master
go
sp_addlogin newrelic, "NewRelic1!", master
sp_role "grant", mon_role, newrelic
go

Grant Monitoring Role to User

If you already have a log and user to monitor SAP Adaptive Server Enterprise (Sybase) then simply add this role with public access.

grant role mon_role to newrelic
grant select on master..sysquerymetrics to mon_role

The user name should match what is specified in your configuration file: https://github.com/newrelic-experimental/nri-db/blob/8eabf545964f6540914f762fec7e4e9af2a8df6c/config/plugin.sybase.json#L13