Мы пытаемся разработать приложение искровой Java-оболочки в линейке Linux Azure HDInsight. Мы смогли подать заявку через Ливи, и она работает нормально.Вход в Azure из приложения Spark Java
Проблема, с которой мы сталкиваемся, связана с протоколированием. Как мы можем использовать log4j здесь, потому что если мы используем RollingFileAppender, тогда мы должны поместить путь к выходному файлу .log. В нашем случае мы должны записать журнал в хранилище blob. Но мы считаем, что нормальная регистрация не сработает.
Мы нашли некоторый механизм регистрации, предоставленный компанией Azure через Azureinsights, но все они сделаны для веб-проекта, и я думаю, что он не работает из нашего приложения Java.
Можете ли вы, пожалуйста, помочь мне здесь, как мы можем реализовать регистрацию приложений из приложения искры java? Может быть, в будущем люди из организации могут подумать о том, чтобы использовать Splunk как инструменты для работы с журналами.
Ждем вас к помощи.
Thanks, Shamik.
спасибо. Я проверил с AzureLogAppender, но я проверил, что журналы не генерируются. Попробуем другие варианты и опубликуйте результат. – Shamik
Я думаю, что AzureLogAppender работает правильно, но проблема в том, что когда я отправляю работу Spark через Livy в кластере пряжи, приложение log4j не используется. Есть ли способ? Я проверил с помощью метода PropertyConfigurator.configure(), но специфический для приложения log4j не получает. – Shamik
@Shamik. Есть два пути. 1. Загрузите файлы jar в хранилище кластера, связанное с кластером. Для этого вы можете использовать утилиту командной строки AzCopy. См. Https://azure.microsoft.com/en-us/documentation/articles/hdinsight-apache-spark-livy-rest-interface/#submit-a-batch-job-the-cluster. 2. в основном приложения Java и Scala упаковываются в файл .jar, который может быть отправлен через API LIvy. –