我在我的服务器上启用了 Docker Swarm(Docker 版本是17.03.0-ce)。
Docker Swarm 的服务位于不同的节点上。
每个服务将日志写入文件。
是否可以使用一些 Docker 驱动程序从所有服务收集日志并将这些日志集中存储在每个服务的单独文件中。例如service-1.log,,service-2.log。
是否可以对日志文件名使用自定义文件格式?例如,10-07-17-service-1.log, 10-07-17-service-2.log, 10-07-17-service-2.log?
我已阅读有关使用ELK 堆栈的信息,但我想实现更简单的方法(将日志写入文件)。
我在 Ubuntu 18.10 上有 SDKMAN 5.7.3+337,它列出了这些可用的 Java 版本:
13.ea.17-open > * 10.0.2-open 1.0.0-rc-12-grl
12.0.1-zulu * 9.0.7-zulu 1.0.0-rc-11-grl
12.0.1-librca 9.0.4-open 1.0.0-rc-10-grl
12.0.1-sapmchn 8.0.212-zulu 1.0.0-rc-9-grl
12.0.1-open 8.0.212-amzn 1.0.0-rc-8-grl
+ 12.0.0-open 8.0.212-librca
11.0.3-sapmchn + 8.0.202-zulu
11.0.3-zulu 8.0.202.j9-adpt
11.0.3-amzn 8.0.202.hs-adpt
11.0.3-librca 8.0.202-zulufx
+ 11.0.2-open 7.0.222-zulu
11.0.2.j9-adpt 6.0.119-zulu
11.0.2.hs-adpt 1.0.0-rc-15-grl
11.0.2-zulufx 1.0.0-rc-14-grl
10.0.2-zulu 1.0.0-rc-13-grl
Run Code Online (Sandbox Code Playgroud)
而 Ubuntu 18.04.1 LTS(如 Windows 10 中的 WSL)上的相同 SDKMAN 版本显示:
13.ea.17-open * 9.0.4-open 1.0.0-rc-11-grl
12.0.1-sapmchn 8.0.212-zulu 1.0.0-rc-10-grl
12.0.1-zulu 8.0.212-amzn 1.0.0-rc-9-grl
12.0.1-open 8.0.212-librca 1.0.0-rc-8-grl
12.0.1-librca + 8.0.202-zulu
11.0.3-sapmchn 8.0.202.j9-adpt
11.0.3-zulu 8.0.202.hs-adpt
11.0.3-amzn …Run Code Online (Sandbox Code Playgroud) 是否可以JsonProperties根据定义的条件排除Spring Boot Rest调用的输出?(例如,用户的角色)
例:
public class Employee{
@JsonProperty
private String name;
@JsonProperty
private String fieldForManagerOnly;
@JsonProperty
private String fieldForEmployeeOnly;
}
Run Code Online (Sandbox Code Playgroud)
fieldForManagerOnly当用户拥有ROLE时,我希望在JSON输出中只有序列化manager.
我已经尝试了解决方案@JsonView(如Spring中最新杰克逊集成改进中所述),但该解决方案非常有限,因为@JsonView绑定到一个控制器方法,我想只有一个控制器方法.
我有以下POJO 类作为输入 -
public class Input implements java.io.Serializable {
private String id;
private List<Inputbenefit> Inputbenefits;
//and getter and setter method
}
Run Code Online (Sandbox Code Playgroud)
现在在控制器中我有 initbinder -
@InitBinder
public void initBinder(Object target,WebDataBinder binder) {
binder.registerCustomEditor(ArrayList.class, new CustomCollectionEditor(ArrayList.class) {
@Override
protected Object convertElement(Object element) {
Input input= new Input ();
if (element != null) {
ArrayList<Inputbenefit> id = (ArrayList<Inputbenefit>) element;
input.setInputbenefits(id);
}
return input;
}
});
Run Code Online (Sandbox Code Playgroud)
控制器中的 Post 方法签名是 -
@RequestMapping(value = "/addDependentOutput.html", method = RequestMethod.POST)
public String OutputForm(@ModelAttribute("Input") Input …Run Code Online (Sandbox Code Playgroud) 我想替换所有出现的\n \nwith \n\n(<new line><space><new line> to <new line><new line>).
我用这个代码:
assertThat(
"\n\n \n \n".replaceAll("(\n \n)+", "\n\n"),
is("\n\n\n\n")
);
Run Code Online (Sandbox Code Playgroud)
但不是\n\n\n\n我得到\n\n\n \n.
如何修复正则表达式以获得正确的结果?
好吧,我正在从新波士顿练习编码.
这是他的确切代码,但我仍然想知道为什么它没有显示任何东西?
public class Variables {
public static void main(String[] args) {
for (int counter = 1; counter == 10; counter++){
System.out.println(counter);
}
}
}
Run Code Online (Sandbox Code Playgroud) java ×3
spring-mvc ×2
docker ×1
docker-swarm ×1
jackson ×1
json ×1
logging ×1
regex ×1
sdkman ×1
spring-boot ×1