sul-dlss / preservation_catalog

Rails application to track, audit and replicate archival artifacts associated with SDR objects.
https://sul-dlss.github.io/preservation_catalog/
Other
2 stars 2 forks source link

(SPC) feature flag for perf data of seeding #273

Closed ndushay closed 6 years ago

ndushay commented 6 years ago

For the code that seeds the catalog (called from rake task?) have a feature flag that can turn on

tallenaz commented 6 years ago

for how to set up newrelic, see, for example, https://github.com/sul-dlss/exhibits/search?q=newrelic

jmartin-sul commented 6 years ago

if we use newrelic, i'd vote for doing this via the settings available in newrelic.yml. IIRC, there is a flag for whether perf data is sent to newrelic, and a flag for whether profiling is even run. the latter seems like the more useful one, if we're concerned about profiling overhead (but also, the more obvious one to toggle is the one for sending the data to newrelic, based on what i remember from last time i looked at newrelic's documentation).

tallenaz commented 6 years ago

The monitor_modeflag lets the agent collects performance data, and reports it to the New Relic service. It looks like that defaults to true (for example, the exhibits test environment sets it to false, while prod and stage don't set it at all). As far as I can tell, we can't access profiling, because that requires a paid account, which ours is not. I tried to verify this by attempting to look at the "Thread Profiler" in one of our apps, and was greeted by an option to upgrade. If there are other profiling tools available via newrelic, I haven't found them yet.

I'd say that because it is simple enough to set up, we should set up basic monitoring, and talk about another way to track profiling overhead.

tallenaz commented 6 years ago

newrelic is installed on stage, but off for the moment. looking into porting argo's profiler into PC.

ndushay commented 6 years ago

Is this covered by the two flavors of seeding rake task?

jmartin-sul commented 6 years ago

yup, i think this is covered by the two flavors of rake task and by newrelic.yml. closing with the same rationale as #274.