Size: a a a

2020 June 02

AE

Alexandr Emelyanov in pro.jvm
Mikhail
Не проще будет при сборке конфигурации профильтровать паттерн вывода?
причем тут паттерн вывода?
источник

AE

Alexandr Emelyanov in pro.jvm
нам надо имя сервиса пропихнуть, mdc контекст пишется полями json через fluency напрямую в fluentd
источник

AE

Alexandr Emelyanov in pro.jvm
sleuth к сожалению не инструментирует сторонние апендеры(
источник

M

Mikhail in pro.jvm
Alexandr Emelyanov
нам надо имя сервиса пропихнуть, mdc контекст пишется полями json через fluency напрямую в fluentd
А, ну ты бы сразу говорил, для чего ты mdc используешь.
источник

AE

Alexandr Emelyanov in pro.jvm
как вариант попросить sleuth прописывать в mdc имя сервиса, но я не нашел в доках ничего
источник

AE

Alexandr Emelyanov in pro.jvm
Mikhail
А, ну ты бы сразу говорил, для чего ты mdc используешь.
так изначально вопрос был про MDC, не логично?)
источник

M

Mikhail in pro.jvm
Alexandr Emelyanov
так изначально вопрос был про MDC, не логично?)
Ну, у меня MDC в logback, в первую очередь, ассоциируется с самым его простым применением: в layout pattern логгера
источник

AE

Alexandr Emelyanov in pro.jvm
Mikhail
Ну, у меня MDC в logback, в первую очередь, ассоциируется с самым его простым применением: в layout pattern логгера
да, его обычное применение
источник

AE

Alexandr Emelyanov in pro.jvm
Mikhail
Ну, у меня MDC в logback, в первую очередь, ассоциируется с самым его простым применением: в layout pattern логгера
я пытался не через mdc, но логгер видимо инициализируется раньше
<springProperty scope="context" name="springAppName" source="spring.application.name"/>

 <appender name="FLUENT_SYNC" class="ch.qos.logback.more.appenders.FluencyLogbackAppender">
...
   <additionalField>
     <key>service</key>
     <value>${springAppName:-}</value>
   </additionalField>
...
</appender>
источник

AE

Alexandr Emelyanov in pro.jvm
*раньше параметров
источник

AE

Alexandr Emelyanov in pro.jvm
хотя странно, эта xml запрашивается с config server, url собирается с использованием ${spring.application.name}
источник

I

Igor in pro.jvm
Alexandr Emelyanov
я пытался не через mdc, но логгер видимо инициализируется раньше
<springProperty scope="context" name="springAppName" source="spring.application.name"/>

 <appender name="FLUENT_SYNC" class="ch.qos.logback.more.appenders.FluencyLogbackAppender">
...
   <additionalField>
     <key>service</key>
     <value>${springAppName:-}</value>
   </additionalField>
...
</appender>
https://github.com/elastic/ecs-logging-java
вот эта либа делает это сама, можешь посмотреть, как у них сделано
источник

AE

Alexandr Emelyanov in pro.jvm
Igor
https://github.com/elastic/ecs-logging-java
вот эта либа делает это сама, можешь посмотреть, как у них сделано
спасибо, ща посмотрю
источник

AE

Alexandr Emelyanov in pro.jvm
Igor
https://github.com/elastic/ecs-logging-java
вот эта либа делает это сама, можешь посмотреть, как у них сделано
они передают параметром в свой апендер
источник

AE

Alexandr Emelyanov in pro.jvm
вариант если только отнаследоваться от апендера
источник

Д

Дмитрий in pro.jvm
Quantum Harmonizer
Это правда только про FileNotFoundException. Если там будет, скажем, RuntimeException, или в catch будет оборачивание и перебрасывание, finally выполнится, а последующий код — нет
А какой смысл оборачивать рантайм исключение в трай кетч? Если я правильно понял то к нему относятся явные ошибки которые допустил сам программист
источник

AL

Aleksander L in pro.jvm
Vladimir
У кого-нибудь есть пример docker-compose с spring boot и react + nginx? Не могу подружить nginx и spring boot. Может есть у кого пример nginx.conf?
Я настраивал Spring boot +nginx + angular. Основная проблема в том, что нужно IP самого хоста передавать
Т.е. вначале выполняется
export DOCKERHOST=$(ifconfig | grep -E "([0-9]{1,3}\.){3}[0-9]{1,3}" | grep -v 127.0.0.1 | awk '{ print $2 }' | cut -f2 -d: | head -n1)
Потом в docker-compose в конфиге nginx добавляется
extra_hosts:
     - "outside:$DOCKERHOST"

и в самом nginx.conf добавляется
upstream backend {
 server outside:8080;
}

upstream frontend {
   server outside:4200;
}

Вроде всё. Если у кого есть более простой вариант, то тоже хотел бы узнать об этом
источник

A

Andrei in pro.jvm
Aleksander L
Я настраивал Spring boot +nginx + angular. Основная проблема в том, что нужно IP самого хоста передавать
Т.е. вначале выполняется
export DOCKERHOST=$(ifconfig | grep -E "([0-9]{1,3}\.){3}[0-9]{1,3}" | grep -v 127.0.0.1 | awk '{ print $2 }' | cut -f2 -d: | head -n1)
Потом в docker-compose в конфиге nginx добавляется
extra_hosts:
     - "outside:$DOCKERHOST"

и в самом nginx.conf добавляется
upstream backend {
 server outside:8080;
}

upstream frontend {
   server outside:4200;
}

Вроде всё. Если у кого есть более простой вариант, то тоже хотел бы узнать об этом
DOCKERHOST=$(hostname --ip-address)
источник

AE

Alexandr Emelyanov in pro.jvm
Aleksander L
Я настраивал Spring boot +nginx + angular. Основная проблема в том, что нужно IP самого хоста передавать
Т.е. вначале выполняется
export DOCKERHOST=$(ifconfig | grep -E "([0-9]{1,3}\.){3}[0-9]{1,3}" | grep -v 127.0.0.1 | awk '{ print $2 }' | cut -f2 -d: | head -n1)
Потом в docker-compose в конфиге nginx добавляется
extra_hosts:
     - "outside:$DOCKERHOST"

и в самом nginx.conf добавляется
upstream backend {
 server outside:8080;
}

upstream frontend {
   server outside:4200;
}

Вроде всё. Если у кого есть более простой вариант, то тоже хотел бы узнать об этом
костыли какие то. у вас один docker-compose?
источник

AL

Aleksander L in pro.jvm
Alexandr Emelyanov
костыли какие то. у вас один docker-compose?
один. Самая проблема из nginx контайнера обращаться на сам хост. Если знаешь как это сделать по-другому, то расскажи пожалуйста
источник