From 4e4f53d5345e828e2f21d571c6ff2d316ebae63b Mon Sep 17 00:00:00 2001 From: Polina Kirf Date: Tue, 28 Apr 2026 18:38:51 +0300 Subject: [PATCH 1/2] configure the logger, edit the .gitignore file --- .gitignore | 2 ++ pom.xml | 17 ++++++++++++++ src/main/java/mate/academy/Main.java | 6 ++++- .../service/AuthenticationServiceImpl.java | 6 ++++- .../academy/service/OrderServiceImpl.java | 10 ++++++-- src/main/resources/log4j2.xml | 23 +++++++++++++++++++ 6 files changed, 60 insertions(+), 4 deletions(-) create mode 100644 src/main/resources/log4j2.xml diff --git a/.gitignore b/.gitignore index 6366460f0..4089836e9 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ .idea/* *.iml target/* +*.logs +app.log diff --git a/pom.xml b/pom.xml index d524faa08..8b0bb3ad6 100644 --- a/pom.xml +++ b/pom.xml @@ -8,6 +8,13 @@ jv-logger 1.0-SNAPSHOT + + + central + https://repo1.maven.org/maven2/ + + + 17 UTF-8 @@ -24,6 +31,16 @@ 4.12 test + + org.apache.logging.log4j + log4j-api + 2.23.1 + + + org.apache.logging.log4j + log4j-core + 2.23.1 + diff --git a/src/main/java/mate/academy/Main.java b/src/main/java/mate/academy/Main.java index 085758fbf..afaa13929 100644 --- a/src/main/java/mate/academy/Main.java +++ b/src/main/java/mate/academy/Main.java @@ -6,15 +6,19 @@ import mate.academy.service.AuthenticationServiceImpl; import mate.academy.service.OrderService; import mate.academy.service.OrderServiceImpl; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; public class Main { + private static final Logger logger = LogManager.getLogger(Main.class); + public static void main(String[] args) { AuthenticationService authenticationService = new AuthenticationServiceImpl(); User user; try { user = authenticationService.login("bob", "1234"); } catch (AuthenticationException e) { - e.printStackTrace(); + logger.error("Can't login", e); return; } OrderService orderService = new OrderServiceImpl(); diff --git a/src/main/java/mate/academy/service/AuthenticationServiceImpl.java b/src/main/java/mate/academy/service/AuthenticationServiceImpl.java index f9fe83b70..4f298a781 100644 --- a/src/main/java/mate/academy/service/AuthenticationServiceImpl.java +++ b/src/main/java/mate/academy/service/AuthenticationServiceImpl.java @@ -2,11 +2,15 @@ import mate.academy.exception.AuthenticationException; import mate.academy.model.User; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; public class AuthenticationServiceImpl implements AuthenticationService { + private static final Logger logger = LogManager.getLogger(AuthenticationServiceImpl.class); + @Override public User login(String login, String password) throws AuthenticationException { - //TODO: add corresponding log message about method login was called + logger.info("method login was called. Params: login={}", login); User user = findByLogin(login); if (!user.getPassword().equals(password)) { throw new AuthenticationException("Username or password are incorrect"); diff --git a/src/main/java/mate/academy/service/OrderServiceImpl.java b/src/main/java/mate/academy/service/OrderServiceImpl.java index eeabe1555..3a09263a3 100644 --- a/src/main/java/mate/academy/service/OrderServiceImpl.java +++ b/src/main/java/mate/academy/service/OrderServiceImpl.java @@ -4,16 +4,21 @@ import java.util.List; import mate.academy.model.Order; import mate.academy.model.Product; +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; public class OrderServiceImpl implements OrderService { + private static final Logger logger = LogManager.getLogger(OrderServiceImpl.class); + @Override public Order completeOrder(Long userId) { - // TODO: add log message about method completeOrder was called List products = getAllProductsFromShoppingCart(userId); Order order = new Order(products, userId); // NOTE: In production ready code this order identifier should be generated by DB // For test purpose we simplify this and return dummy data order.setOrderId(1L); + logger.info("method completeOrder was called. Params: userId={}, products={}, " + + "orderId={}", userId, products.size(), order.getOrderId()); return order; } @@ -24,7 +29,8 @@ private List getAllProductsFromShoppingCart(Long userId) { Product macBook = new Product("MacBook Air 2020", BigDecimal.valueOf(1399)); Product xiaomi = new Product("Xiaomi 12", BigDecimal.valueOf(499)); List products = List.of(iphone, macBook, xiaomi); - // TODO: add log message about successful fetched data from DB + logger.info("successful fetched data. Params: userId={}, products={}", + userId, products); return products; } } diff --git a/src/main/resources/log4j2.xml b/src/main/resources/log4j2.xml new file mode 100644 index 000000000..4e7f97699 --- /dev/null +++ b/src/main/resources/log4j2.xml @@ -0,0 +1,23 @@ + + + + + + + + + %d %p %c:%L %m%n + + + + + + + + + + + + + + \ No newline at end of file From f86aca5749fe9d55fe8e08114ad6370d67db9775 Mon Sep 17 00:00:00 2001 From: Polina Kirf Date: Tue, 28 Apr 2026 18:48:19 +0300 Subject: [PATCH 2/2] add log4j2.xml --- .../java/mate/academy/service/AuthenticationServiceImpl.java | 2 +- src/main/java/mate/academy/service/OrderServiceImpl.java | 4 ++-- src/main/resources/log4j2.xml | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/mate/academy/service/AuthenticationServiceImpl.java b/src/main/java/mate/academy/service/AuthenticationServiceImpl.java index 4f298a781..b1e20ad9f 100644 --- a/src/main/java/mate/academy/service/AuthenticationServiceImpl.java +++ b/src/main/java/mate/academy/service/AuthenticationServiceImpl.java @@ -10,7 +10,7 @@ public class AuthenticationServiceImpl implements AuthenticationService { @Override public User login(String login, String password) throws AuthenticationException { - logger.info("method login was called. Params: login={}", login); + logger.info("Method login was called. Params: login={}", login); User user = findByLogin(login); if (!user.getPassword().equals(password)) { throw new AuthenticationException("Username or password are incorrect"); diff --git a/src/main/java/mate/academy/service/OrderServiceImpl.java b/src/main/java/mate/academy/service/OrderServiceImpl.java index 3a09263a3..aea4067ee 100644 --- a/src/main/java/mate/academy/service/OrderServiceImpl.java +++ b/src/main/java/mate/academy/service/OrderServiceImpl.java @@ -17,7 +17,7 @@ public Order completeOrder(Long userId) { // NOTE: In production ready code this order identifier should be generated by DB // For test purpose we simplify this and return dummy data order.setOrderId(1L); - logger.info("method completeOrder was called. Params: userId={}, products={}, " + logger.info("Method completeOrder was called. Params: userId={}, products={}, " + "orderId={}", userId, products.size(), order.getOrderId()); return order; } @@ -29,7 +29,7 @@ private List getAllProductsFromShoppingCart(Long userId) { Product macBook = new Product("MacBook Air 2020", BigDecimal.valueOf(1399)); Product xiaomi = new Product("Xiaomi 12", BigDecimal.valueOf(499)); List products = List.of(iphone, macBook, xiaomi); - logger.info("successful fetched data. Params: userId={}, products={}", + logger.info("Successful fetched data. Params: userId={}, products={}", userId, products); return products; } diff --git a/src/main/resources/log4j2.xml b/src/main/resources/log4j2.xml index 4e7f97699..b66d5311b 100644 --- a/src/main/resources/log4j2.xml +++ b/src/main/resources/log4j2.xml @@ -20,4 +20,4 @@ - \ No newline at end of file +