Sinatra's lightweight design makes it naturally performant, but bottlenecks in your code can still have big impacts on your throughput or response time. New Relic can help identify these bottlenecks by giving you details about key areas where your application is spending time. Is the app slow because of the database or Ruby's garbage collector? Are server requests queuing or is there a particularly hot method in the code base? We’ve got your answers.
Drill down into individual routes and queries
New Relic automatically detects your Sinatra routes and provides detailed performance data so you can focus on optimizing the slowest ones. For example, if a particular database query is taking too long, you can see what the query was, how long it took, and where it occurred in your code. You can also see individual events in transactions that are underperforming. Additionally, you can monitor where they occur in the context of the code and the running transaction. Adding custom instrumentation to your methods is easy and declarative, and can equip you with personalized tools for better understanding your app's performance.
Great for Service Oriented Architectures
Small Sinatra apps are often used to provide self-contained services within a larger application environment. With New Relic, you can see how all the services in your environment communicate and interact with Cross Application Tracing. You can also see a visual representation of how they link together. Additionally, you can follow a transaction from one app to another through your service stack. Seeing how your Sinatra app fits into the larger environment can be invaluable in optimizing your entire application stack.