How can I configure Solr logs to get sent to Azure Application Insights?
I see can use a Log4J appender. https://docs.microsoft.com/en-us/azure/application-insights/app-insights-java-trace-logs
Solr is an open source project, and I don't compile it myself, I just use the distribution.
How can I drop in Application Insights/Log4J appender, without recompiling having installed the SDK? I just want to configure the logs to get sent to application insghts, for effectively a 3rd party application. And configure the instrumentation key.
I'm normally a C# dev, but familiar with Log4Net. So appologies if this is simple in Java Log4J. Not been able to find a post for this scenario so posting here.
Using Solr 6.6.
It takes a lot less configuration than you'd expect, and most of the info is hidden away in the link that you've already got: https://docs.microsoft.com/en-gb/azure/azure-monitor/app/java-trace-logs
First, go download the jar files from https://github.com/Microsoft/ApplicationInsights-Java/releases. You'll want
applicationinsights-logging-log4j1_2-2.3.0
andapplicationinsights-core-2.3.0
. Put these in the server/lib folder and Solr will load them automatically for you.Next you''ll need to add a new appender for app insights into your log4j.properties file
You also need to add this
aiAppender
to thelog4j.rootLogger
list in the same file (it'll probably look something like this:log4j.rootLogger=INFO, file, CONSOLE, aiAppender
)Finally, you need an ApplicationInsights.xml file, which you can get an example of from here https://docs.microsoft.com/en-gb/azure/azure-monitor/app/java-get-started#2-add-the-application-insights-sdk-for-java-to-your-project
Drop this in the server/resources folder, set your instrumentation key and you're good to go!