Android-Java | SimpleDateFormat& URL更改字符取决于设备语言

时间:2017-08-23 10:30:55

标签: java android elasticsearch logstash kibana

我有一个Android应用程序,我将日志发送到logstash服务器。

要创建索引,我使用静态字符串标识符和当前日期:

  

indexofapp-20170823

但由于某种原因,有时索引在日期中带有奇怪的字符:

  

indexofapp-ㅢㅂㅢㅀㅢㅁㅢㅇㅢㅀㅢㅆㅢㅁㅢㅂ

这是我构建日期和网址的方式:

DateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.sssZ");

df = new SimpleDateFormat("yyyyMMdd");
String date = df.format(new Date());

String urlString = Values.URL.ELASTICACHE;

URL url = new URL(urlString + "/indexofapp-" + date + "/" + logType + "/");

我怀疑可能是某些用其他语言配置的Android设备正在改变字符......这打破了我们的日志服务器,有什么帮助吗?

1 个答案:

答案 0 :(得分:0)

您不需要自己创建索引,如果不存在,logstash会为您创建索引。

以下是实现该目标的示例logstash配置

input {
  <Your Input Plugin>
}

filter {
  <Optional Filters>
}

output {
  elasticsearch {
    hosts => ["<Elasticsearch IP>:<Elasticsearch Port>"]
    index => "indexofapp-%{+YYYYMMdd}"
  }
}

有关详细信息,请参阅here