newrelic / newrelic-salesforce-exporter

New Relic integration for Salesforce logs.
Apache License 2.0
10 stars 15 forks source link

Reduce User Dependency and dependency on Local Python Agent for Salesforce Event Logs #45

Open suneelmanne opened 4 months ago

suneelmanne commented 4 months ago

Currently, our New Relic setup collects Salesforce event logs using a Salesforce connected app for authentication and a locally-stored Python New Relic Salesforce agent to download logs and send them to New Relic. This process is dependent on my system, which poses several issues:

Single Point of Failure: If my system is unavailable (e.g., I'm on leave), logs are not downloaded and sent to New Relic. User Dependency: The process relies on the locally stored configuration files and the Python agent on my machine. Scalability and Maintenance: Managing and maintaining the script on a single machine is not scalable and presents challenges for ongoing support.

Steps to Reproduce:

Configure the Salesforce connected app for authentication. Set up the Python New Relic Salesforce agent with configuration files stored locally. Run the agent to download and send logs to New Relic. Observe that if the system (my machine) is unavailable, logs are not sent to New Relic.

Expected Behavior: Logs should be consistently downloaded and sent to New Relic without relying on a single user or machine.

Actual Behavior: When my system is unavailable, no logs are sent to New Relic, causing gaps in log data. Proposed Solution:

Move the Python agent and configuration files to a centralized, server-based, or cloud-based solution. Set up an automated process or service to ensure continuous operation, regardless of individual availability. Implement failover mechanisms to handle potential system downtimes.

Please suggest