我有一个Spring Boot控制台应用程序,我通过JMX访问执行器endpoint。问题是返回的文本打印得不好,也不是JSON。它看起来像这样:
{context=application, parent=null, beans=[{bean=helloWorldApplication, scope=singleton, type=com.surpreso.spring_skeleton.HelloWorldApplication, resource=null, dependencies=[helloWorldService]}, {bean=helloWorldService, scope=singleton, type=com.surpreso.spring_skeleton.HelloWorldService, resource=file [C:/src-tmp/spring-skeleton/target/classes/com/surpreso/spring_skeleton/HelloWorldService.class], dependencies=[]}, {bean=com.surpreso.spring_skeleton.DefaultConfig, ...
将其转换为可读格式的最佳方法是什么?是否可以将JMX执行器配置为漂亮打印?是否可以将JMX执行器配置为使用JSON?
有一个关于Spring Boot Actuatorendpoint的漂亮打印JSON输出的相关问题,但在这种情况下,我被JMX卡住了,因为我没有Web应用程序。作为下一步,我将尝试CRaSH,但我很好奇我是否可以将JMX执行器配置为更可用。
我使用的是Spring Boot的1.2.5版本。
更新:崩溃实现使用相同的格式,因此它不是解决方案。
更新2:我在1.3.0中看到了这个关于“在所有Endpoint MBeans中使用配置的ObjectMapper(如果可用)”的提交,但我不知道要为漂亮的打印设置哪些属性。它很近...
更新3:spring.jackson.serialization.indent_output=true
通过CRaSH接口没有任何效果。我现在在1.3.0。M2。
粘贴的输出是有效的json文档。到底是什么让你认为它是无效的?
如果您想漂亮地打印格式,这实际上取决于您访问JMXendpoint的方式。例如,如果您通过JConsole访问它,我不确定漂亮的打印输出对于大型文档是否具有可读性。如果您手动访问JMXendpoint,那么您可以非常轻松地读取String并漂亮地打印输出(JSONObject
有一个toString
方法,它接受您要在文档上应用的缩进)。
关于CRaSH,这实际上是不相关的。执行器endpoint位于CRaSH之外,不使用它的任何功能。
编辑:我的错误,这不是有效的JSON,我在Spring Boot问题跟踪器中创建了#3658。
Spring Boot Actuctor提供了几个endpoint来监控应用程序: 使用以下方法检查endpoint: 结果如下: 这对机器消费很好,但人类很难读懂。 我想对Spring Boot执行器endpoint的JSON输出进行格式化(即漂亮的打印),以使操作人员更容易阅读它们。 我试过设置 但此设置并不影响执行器的输出。 是否有一个配置来启用Spring Boot执行器JSON输出的漂亮
如何从AWS漂亮地打印出Boto EC2输出? 这是原版(不太漂亮): s是什么? 如果我尝试使用Python的JSON转储,我得到:
问题内容: 如果有人对JSON的打印非常了解,那么我将不胜感激! 我正在使用以下功能将JSON字符串移动到文件中,以将复杂的python字符串转换为JSON格式: 问题是我遇到了方括号的语法错误,因为这对我来说是个新话题,我不知道该如何解决。我需要的JSON格式如下: 我正在使用Google Visualization API,您可能对此比较熟悉,但是我需要动态图。上面的代码是API创建图形所需的
问题内容: 我正在创建一个JSON文件的脚本。现在,我只是使用(PHP 5.2.x)将数组编码为JSON输出。然后,我将返回值打印到文件中并保存。问题是客户端希望能够打开这些JSON文件以提高可读性,因此我想在其中添加换行符并“漂亮打印” JSON输出。有关如何执行此操作的任何想法?我唯一可以看到的替代方法是完全不使用,而只是手动写入文件内容,并为每行添加自己的换行符。 这是我得到的: 这就是我想
下面是我的例子: 如何为JSONARRAY启用漂亮的打印? 我认为这足以解释我的问题,但是这里有一些bla bla bla bla bla bla因为stackoverflow问我更多的细节,让我发布问题。
问题内容: 我使用以下代码将a漂亮地打印到JSON中: 输出: 这有点 太多了 (每个列表元素的换行!)。 我应该使用哪种语法: 代替? 问题答案: 几年后,我找到了带有内置模块的解决方案: 输出: