Estoy usando org.elasticsearch.client.RestHighLevelClient para ejecutar consultas.
De acuerdo con la documentación oficial, es posible registrar solicitudes en formato curl:
He agregado la siguiente línea a mi log4j.properties:
log4j.logger.org.elasticsearch.client = debug
Ahora veo solicitudes http, pero, ¿cómo puedo configurar el formato de rizo?
De acuerdo con su documentación, debe habilitar un tracer
registrador específico , que es responsable específicamente de la respuesta en formato curl.
Puede lograr esto en log4j 1.x con las siguientes líneas:
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}] [%-5p] %c{1}:%L - %m%n
log4j.logger.tracer=TRACE, stdout
Para habilitar el seguimiento de la versión RestHighLevelClient 7. + para mostrar la URL de las llamadas de descanso realizadas por el cliente elástico. Haz los pasos a continuación
Cambios a nivel de archivo Agregue estas dependencias en pom.xml
<!-- log4j2 -->
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.11.2</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.11.2</version>
</dependency>
<!-- slf4j to make log4j work with commons logging used by elastic -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.12</version>
</dependency>
<!-- To bind log4j2 to sl4j -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.12</version>
<scope>test</scope>
</dependency>
<!-- To bind commons logging used by elastic to sl4j -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>1.7.12</version>
</dependency>
<!-- commons logging used by elastic -->
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
<exclusions>
<exclusion>
<!-- Defined below -->
<artifactId>slf4j-api</artifactId>
<groupId>org.slf4j</groupId>
</exclusion>
</exclusions>
</dependency>
Cambios en el archivo log4j2.properties
status = error
name = PropertiesConfig
filters = threshold
filter.threshold.type = ThresholdFilter
filter.threshold.level = debug
appenders = console
appender.console.type = Console
appender.console.name = STDOUT
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = %d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
rootLogger.level = debug
rootLogger.appenderRefs = stdout
rootLogger.appenderRef.stdout.ref = STDOUT
log4j.logger.tracer=TRACE, stdout
Por si acaso alguien no quiere molestar a sí mismo con los madereros, es posible llamar toString()
en QueryBuilder
y ver una solicitud.
Tengo un gran archivo wav que me gustaría incluir en fragmentos más pequeños. También tengo un archivo .cue que tiene la longitud de la velocidad de fotogramas, en la que deberían estar los fragmentos más pequeños. Descubrí cómo dividir el wav ...
Revisé un proyecto maven e importé a mi Eclipse (Indigo) con integración maven a través del complemento m2eclipse. Configuré el proyecto como un proyecto maven. Cuando haga clic en mi proyecto y haga clic en ...
antes de haber estado usando etiquetas de tiempo de renderizado (como a4j: repeat, ui: repeat), para crear paneles basados en una colección de elementos. Todo eso cambió y ahora debo usar c: forEach en su lugar. En cada panel hago un ...
Tenía cierta confusión sobre dónde debería poner el inicio de sesión comercial entre Model y Presenter. Algunos tutoriales dicen que el modelo tiene inicio de sesión comercial y otros dicen que el modelo es solo POJO.