Я использую lightbend в своем коде scala, чтобы мой application.properties
файл находился подальше от моей jar. Мне нужно передать текущую дату в application.properties
файле.
Date_read_write = 20190828
как мне сделать так, чтобы это подбиралось динамически, если это сценарий оболочки, я могу упомянуть
Date_read_write=`date +%Y%m%d`
как мне сделать аналогичный шаг в application.properties
файле?
Обновление для добавления времени
ниже мой application.properties
файл:
hdfs_link = hdfs://XX.XXX.XXX.XX:8080/sessions/data/events
mediaKey = 1234
eventName = media
Date_read_write = 20190815
time = *_W
parts = *
я использую выше для создания hdfs://XX.XXX.XXX.XX:8080/sessions/data/events/1234/media/20190815/*_W/*
с использованием :
val conf = ConfigFactory.load()
val hdfs_path = conf.getString("hdfs_link")+"/"+conf.getString("mediaKey")+"/"+conf.getString("eventName")+"/"+conf.getString("Date_read_write")+"/"+conf.getString("time")+"/"+conf.getString("parts")
но когда я добавляю
--driver-java-options -DDate_read_write=`date --date='1 days ago' '+%Y%m%d'`
к моей команде отправки искры, мой URL-адрес переходит на hdfs://XX.XXX.XXX.XX:8080/sessions/data/events/1234/media/20190828/*/*
Я понятия не имею, почему это добавление меняет значение time
.
Ниже приведена моя команда отправки искры:
nohup spark-submit --master yarn --deploy-mode client --num-executors 20 --executor-cores 6 --driver-memory 10g --executor-memory 10g --class metrics.MasterAggregateTable --files application.properties --driver-java-options -Dconfig.file = application.properties --driver-java-options -DDate_read_write = `date +% Y% m% d` --jars com.datastax.spark_spark-cassandra-connector_2.11- 2.3.0.jar UserMetrics.jar и