āĻāĻšā§! āĻĒāĻžāĻ āĻā§āĻ˛āĻŋ āĻ˛ā§āĻāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻŽāĻŋ āĻŦāĻŋāĻļā§āĻˇāĻāĻžāĻŦā§ āĻā§āĻ° āĻĻāĻŋāĻ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻŦāĻŋāĻˇāĻ¯āĻŧ āĻĨāĻžāĻā§ āĻ¯āĻž āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ āĻāĻžāĻā§ āĻāĻā§āĻŦāĻžāĻ°ā§ āĻ
āĻĒāĻ°āĻŋāĻšāĻžāĻ°ā§āĻ¯ āĻšāĻŦā§āĨ¤ āĻ¤āĻžāĻ, āĻļā§āĻ¨ā§āĻ¨! āĻāĻāĻā§ āĻāĻŽāĻ°āĻž āĻ¯ā§ āĻŦāĻŋāĻˇāĻ¯āĻŧāĻāĻŋ āĻāĻāĻžāĻ° āĻāĻ°āĻŦ āĻ¤āĻž āĻ
āĻŦāĻļā§āĻ¯āĻ āĻāĻ°ā§āĻŽāĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻĻāĻŋāĻ¨ āĻĨā§āĻā§ āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒā§ āĻāĻžāĻā§ āĻāĻ¸āĻŦā§āĨ¤ āĻāĻŽāĻ°āĻž āĻāĻžāĻāĻž āĻ˛āĻāĻŋāĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻĨāĻž āĻŦāĻ˛āĻ¤ā§ āĻ¯āĻžāĻā§āĻāĻŋāĨ¤ āĻāĻ āĻŦāĻŋāĻˇāĻ¯āĻŧāĻāĻŋ āĻŽā§āĻā§āĻ āĻāĻāĻŋāĻ˛ āĻ¨āĻ¯āĻŧ (āĻāĻŽāĻŋ āĻāĻŽāĻ¨āĻāĻŋ āĻ¸āĻšāĻ āĻŦāĻ˛āĻ¤ā§ āĻāĻžāĻ)āĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻāĻžāĻāĻ°āĻŋāĻ¤ā§ āĻāĻžāĻĒ āĻĻā§āĻāĻ¯āĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¨āĻžāĻ° āĻ¯āĻĨā§āĻˇā§āĻ āĻ¸ā§āĻĒāĻˇā§āĻ āĻāĻŋāĻ¨āĻŋāĻ¸ āĻĨāĻžāĻāĻŦā§, āĻ¤āĻžāĻ āĻāĻāĻ¨āĻ āĻāĻāĻŋ āĻĒā§āĻā§āĻāĻžāĻ¨ā§āĻĒā§āĻā§āĻāĻāĻžāĻŦā§ āĻŦā§āĻāĻž āĻāĻžāĻ˛ :) āĻāĻā§āĻāĻž, āĻāĻ˛ā§āĻ¨ āĻļā§āĻ°ā§ āĻāĻ°āĻž āĻ¯āĻžāĻāĨ¤
āĻāĻžāĻāĻž āĻ˛āĻāĻŋāĻ āĻāĻŋ?
āĻ˛āĻāĻŋāĻ āĻšāĻ˛ āĻāĻāĻāĻŋ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽā§āĻ° āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻĄā§āĻāĻž āĻ°ā§āĻāĻ°ā§āĻĄ āĻāĻ°āĻžāĻ° āĻāĻžāĻāĨ¤ āĻāĻŽāĻ°āĻž āĻāĻ āĻĄā§āĻāĻž āĻ°ā§āĻāĻ°ā§āĻĄ āĻāĻ°āĻžāĻ° āĻāĻžāĻ¯āĻŧāĻāĻžāĻāĻŋāĻā§ "āĻ˛āĻ" āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧāĨ¤ āĻĻā§āĻāĻŋ āĻĒā§āĻ°āĻļā§āĻ¨ āĻ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻŋāĻ¤ āĻšāĻ¯āĻŧ: āĻā§āĻ¨ āĻĄā§āĻāĻž āĻ˛ā§āĻāĻž āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻā§āĻĨāĻžāĻ¯āĻŧ? "āĻā§āĻĨāĻžāĻ¯āĻŧ" āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻāĻ°āĻž āĻ¯āĻžāĻāĨ¤ āĻāĻĒāĻ¨āĻŋ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻāĻžāĻ¯āĻŧāĻāĻžāĻ¯āĻŧ āĻāĻāĻāĻŋ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽā§āĻ° āĻāĻžāĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻĄā§āĻāĻž āĻ˛āĻŋāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻĒāĻ¨āĻžāĻ° āĻĒāĻĄāĻŧāĻžāĻļā§āĻ¨āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻĒāĻ¨āĻŋ āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻļāĻ System.out.println()āĻāĻ¨āĻ¸ā§āĻ˛ā§ āĻĄā§āĻāĻž āĻāĻāĻāĻĒā§āĻ āĻāĻ°āĻ¤ā§āĨ¤ āĻāĻāĻŋ āĻĒā§āĻ°āĻā§āĻ¤āĻĒāĻā§āĻˇā§ āĻ˛āĻāĻŋāĻ, āĻ¯āĻĻāĻŋāĻ āĻ¤āĻžāĻ° āĻ¸āĻšāĻāĻ¤āĻŽ āĻāĻāĻžāĻ°ā§āĨ¤ āĻ āĻŦāĻļā§āĻ¯āĻ, āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻŦāĻž āĻāĻāĻāĻŋ āĻĒāĻŖā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻĻāĻ˛ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻŦ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻāĻ¨āĻ āĻ¨āĻ¯āĻŧ: āĻ¸ā§āĻĒāĻˇā§āĻāĻ¤āĻ, āĻ¤āĻžāĻ°āĻž āĻāĻāĻāĻŋ IDE āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻ¤ā§ āĻāĻŦāĻ āĻāĻ¨āĻ¸ā§āĻ˛ āĻ¨āĻŋāĻ°ā§āĻā§āĻˇāĻŖ āĻāĻ°āĻ¤ā§ āĻāĻžāĻāĻŦā§ āĻ¨āĻž :) āĻ¤āĻĨā§āĻ¯ āĻ°ā§āĻāĻ°ā§āĻĄ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻāĻ°ā§ āĻĒā§āĻ°āĻĨāĻžāĻāĻ¤ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻāĻā§: āĻĒāĻžāĻ ā§āĻ¯ āĻĢāĻžāĻāĻ˛āĨ¤ āĻŽāĻžāĻ¨ā§āĻˇ āĻāĻ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ā§ āĻĄā§āĻāĻž āĻĒāĻĄāĻŧāĻ¤ā§ āĻ āĻ¨ā§āĻ āĻŦā§āĻļāĻŋ āĻ¸ā§āĻŦāĻžāĻā§āĻāĻ¨ā§āĻĻā§āĻ¯āĻŦā§āĻ§ āĻāĻ°ā§ āĻāĻŦāĻ āĻ āĻŦāĻļā§āĻ¯āĻ āĻāĻāĻŋ āĻĄā§āĻāĻž āĻ¸āĻāĻ°āĻā§āĻˇāĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻ¨ā§āĻ āĻŦā§āĻļāĻŋ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻāĻ¨āĻ! āĻāĻāĻ¨ āĻĻā§āĻŦāĻŋāĻ¤ā§āĻ¯āĻŧ āĻĒā§āĻ°āĻļā§āĻ¨: āĻā§āĻ¨ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻĄā§āĻāĻž āĻ˛āĻ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤? āĻāĻāĻž āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§! āĻāĻžāĻāĻž āĻāĻ° āĻ˛āĻāĻŋāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻā§āĻŦāĻ āĻ¨āĻŽāĻ¨ā§āĻ¯āĻŧāĨ¤ āĻāĻĒāĻ¨āĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻ¯āĻž āĻāĻ°ā§ āĻ¸āĻŦ āĻ˛āĻ āĻ˛āĻ āĻāĻ°āĻ¤ā§ āĻāĻāĻŋ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨. āĻāĻāĻĻāĻŋāĻā§, āĻāĻāĻŋ āĻāĻžāĻ˛āĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ āĻ¨ā§āĻ¯āĻĻāĻŋāĻā§, āĻāĻ˛ā§āĻĒāĻ¨āĻž āĻāĻ°ā§āĻ¨ āĻ¯ā§ āĻĢā§āĻ¸āĻŦā§āĻ āĻŦāĻž āĻā§āĻāĻāĻžāĻ°ā§āĻ° āĻ˛āĻāĻā§āĻ˛āĻŋ āĻāĻ¤ āĻŦāĻĄāĻŧ āĻšāĻŦā§ āĻ¯āĻĻāĻŋ āĻ¤āĻžāĻ°āĻž āĻ¸ā§āĻā§āĻ˛āĻŋāĻ¤ā§ āĻ¸āĻŦāĻāĻŋāĻā§ āĻ˛āĻŋāĻā§ āĻĨāĻžāĻā§āĨ¤ āĻāĻ āĻŦā§āĻšā§ āĻā§āĻŽā§āĻĒāĻžāĻ¨āĻŋāĻ° āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻāĻ¤ āĻĄā§āĻāĻž āĻ¸āĻā§āĻāĻ¯āĻŧ āĻāĻ°āĻžāĻ° āĻā§āĻˇāĻŽāĻ¤āĻž āĻāĻā§āĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ˛ā§āĻĒāĻ¨āĻž āĻāĻ°ā§āĻ¨ āĻ¯ā§ 500 āĻāĻŋāĻāĻžāĻŦāĻžāĻāĻ āĻā§āĻā§āĻ¸āĻ āĻ˛āĻāĻā§āĻ˛āĻŋāĻ¤ā§ āĻāĻāĻāĻŋ āĻā§āĻ°ā§āĻ¤āĻ° āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¤āĻĨā§āĻ¯ āĻā§āĻāĻā§ āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻāĻ¤āĻāĻž āĻāĻ āĻŋāĻ¨ āĻšāĻŦā§? āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻāĻĄāĻŧā§āĻ° āĻāĻžāĻĻāĻžāĻ¯āĻŧ āĻāĻāĻāĻŋ āĻ¸ā§āĻ āĻā§āĻāĻāĻā§āĻ¨ āĻā§āĻ¯āĻŧā§ āĻāĻžāĻ°āĻžāĻĒ āĻšāĻŦā§. āĻ¤āĻĻāĻ¨ā§āĻ¸āĻžāĻ°ā§, āĻāĻžāĻāĻž āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¤ā§āĻ°ā§āĻāĻŋ āĻĄā§āĻāĻž āĻ˛āĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻ āĻĨāĻŦāĻž āĻāĻŽāĻ¨āĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¸āĻŽāĻžāĻ˛ā§āĻāĻ¨āĻžāĻŽā§āĻ˛āĻ āĻ¤ā§āĻ°ā§āĻāĻŋ! āĻāĻāĻŋ āĻŦāĻ˛ā§āĻā§, āĻāĻžāĻāĻžāĻ° āĻ¨ā§āĻāĻŋāĻ āĻ˛āĻāĻŋāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻāĻĨāĻž āĻŦāĻ˛āĻž āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻ°ā§āĻĒā§ āĻ¸āĻ āĻŋāĻ āĻ¨āĻ¯āĻŧāĨ¤ āĻāĻ¸āĻ˛ āĻŦāĻŋāĻˇāĻ¯āĻŧāĻāĻŋ āĻšāĻ˛ āĻ¯ā§ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻžāĻ°āĻĻā§āĻ° āĻāĻžāĻˇāĻžāĻ¤ā§ āĻāĻ āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻž āĻ¯ā§āĻ āĻāĻ°āĻžāĻ° āĻāĻā§ āĻ˛āĻāĻŋāĻ āĻāĻ°āĻž āĻĻāĻ°āĻāĻžāĻ° āĻāĻŋāĻ˛āĨ¤ āĻāĻžāĻāĻž āĻ¤āĻžāĻ° āĻ¨āĻŋāĻāĻ¸ā§āĻŦ āĻ˛āĻāĻŋāĻ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻāĻžāĻ˛ā§ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻ¸āĻŦāĻžāĻ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§ log4j āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻāĻŋāĻ˛āĨ¤ āĻāĻžāĻāĻž āĻ˛āĻāĻŋāĻ āĻāĻ° āĻāĻ¤āĻŋāĻšāĻžāĻ¸ āĻāĻ¸āĻ˛ā§ āĻ āĻ¨ā§āĻ āĻĻā§āĻ°ā§āĻ āĻāĻŦāĻ āĻ¤āĻĨā§āĻ¯āĻĒā§āĻ°ā§āĻŖāĨ¤ āĻ¸āĻāĻā§āĻˇā§āĻĒā§, āĻāĻžāĻāĻžāĻ° āĻ¨āĻŋāĻāĻ¸ā§āĻŦ āĻ˛āĻāĻŋāĻ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻāĻā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻā§āĻāĻ āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¨āĻž :) āĻĒāĻ°ā§, āĻ¯āĻāĻ¨ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻ˛āĻāĻŋāĻ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻāĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻžāĻ°āĻĻā§āĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻļā§āĻ°ā§ āĻšāĻ¯āĻŧ, āĻ¤āĻāĻ¨ āĻ¸āĻžāĻŽāĻā§āĻāĻ¸ā§āĻ¯ā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻĻā§āĻāĻž āĻĻā§āĻ¯āĻŧāĨ¤ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ āĻ¸āĻš āĻāĻ āĻĄāĻāĻ¨ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻ¤ā§ āĻāĻžāĻāĻžāĻāĻŋāĻā§ āĻ¨āĻ¤ā§āĻ¨ āĻāĻ°ā§ āĻāĻĻā§āĻāĻžāĻŦāĻ¨ āĻāĻ°āĻž āĻĨā§āĻā§ āĻŽāĻžāĻ¨ā§āĻˇāĻā§ āĻĨāĻžāĻŽāĻžāĻ¤ā§, āĻŦāĻŋāĻŽā§āĻ°ā§āĻ¤ SLF4J āĻĢā§āĻ°ā§āĻŽāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ ("āĻāĻžāĻāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž āĻ˛āĻāĻŋāĻ āĻĢā§āĻ¯āĻžāĻā§āĻĄ") āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤ āĻāĻā§ āĻŦāĻŋāĻŽā§āĻ°ā§āĻ¤ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ, āĻāĻžāĻ°āĻŖ āĻāĻĒāĻ¨āĻŋ SLF4J āĻā§āĻ˛āĻžāĻ¸ā§āĻ° āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻā§āĻ˛āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ āĻāĻ˛ āĻāĻ°āĻ˛ā§āĻ, āĻ¤āĻžāĻ°āĻž āĻāĻ¸āĻ˛ā§ āĻāĻā§ āĻāĻ¸āĻž āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ˛āĻāĻŋāĻ āĻĢā§āĻ°ā§āĻŽāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§: log4j, āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ java.util.logging āĻāĻŦāĻ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯āĨ¤ āĻ¯āĻĻāĻŋ āĻā§āĻ¨ā§ āĻ¸āĻŽāĻ¯āĻŧā§ āĻāĻĒāĻ¨āĻžāĻ° Log4j-āĻāĻ° āĻāĻŋāĻā§ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻšāĻ¯āĻŧ āĻ¯āĻž āĻ āĻ¨ā§āĻ¯ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻ¤ā§ āĻ¨āĻž āĻĨāĻžāĻā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻĒāĻ¨āĻŋ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻāĻ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°ā§āĻā§āĻā§āĻ āĻ˛āĻŋāĻā§āĻ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ āĻ¨āĻž, āĻļā§āĻ§ā§ SLF4J āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨āĨ¤ āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻāĻŋ Log4j āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻāĻ˛ āĻāĻ°āĻž āĻ¯āĻžāĻ. āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻŽāĻ¨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨ā§āĻ¨ āĻ¯ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻ° Log4j āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻ¨ā§āĻ, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻĒāĻ¨āĻžāĻā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° "āĻā§ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻšāĻŦā§"āĻāĻāĻžāĻ¨ā§ , āĻāĻŦāĻ Log4j āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻāĻāĻžāĻ¨ā§ āĨ¤ āĻāĻ°āĻĒāĻ°ā§, āĻāĻ°ā§āĻāĻžāĻāĻāĻāĻŋ āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ āĻāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻā§āĻ˛āĻžāĻ¸āĻĒāĻžāĻĨā§ JAR āĻĢāĻžāĻāĻ˛ āĻ¯ā§āĻ āĻāĻ°āĻ¤ā§ IntelliJ IDEA āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨āĨ¤ āĻŽā§āĻ¨ā§ āĻāĻāĻā§āĻŽ: āĻĢāĻžāĻāĻ˛ -> āĻĒā§āĻ°āĻāĻ˛ā§āĻĒ āĻāĻžāĻ āĻžāĻŽā§ -> āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻā§āĻ˛āĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ JAR āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻ¸ā§āĻā§āĻ˛āĻŋāĻā§ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒā§ āĻ¯ā§āĻā§āĻ¤ āĻāĻ°ā§āĻ¨ (āĻāĻŽāĻ°āĻž āĻ¯ā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖāĻžāĻāĻžāĻ°āĻā§āĻ˛āĻŋ āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄ āĻāĻ°ā§āĻāĻŋ āĻ¤āĻžāĻ¤ā§ āĻ āĻ¨ā§āĻāĻā§āĻ˛āĻŋ JAR āĻĢāĻžāĻāĻ˛ āĻ°āĻ¯āĻŧā§āĻā§ â āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨āĻā§āĻ˛āĻŋ āĻĻā§āĻāĻ¤ā§ āĻāĻŦāĻŋāĻā§āĻ˛āĻŋ āĻĻā§āĻā§āĻ¨) āĻ¨ā§āĻ āĻāĻ°ā§āĻ¨ āĻ¯ā§ āĻāĻ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻāĻŋ āĻ¸ā§āĻ āĻļāĻŋāĻā§āĻˇāĻžāĻ°ā§āĻĨā§āĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¯āĻžāĻ°āĻž āĻŽā§āĻ¯āĻžāĻā§āĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ā§āĻ¨ āĻ¨āĻžāĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻŽā§āĻ¯āĻžāĻā§āĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ā§āĻ¨ āĻ¤āĻŦā§ āĻ¸ā§āĻāĻžāĻ¨ā§ āĻļā§āĻ°ā§ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻž āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻžāĻ˛ (āĻ āĻ¨ā§āĻ āĻ¸āĻšāĻ)āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ Maven āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ , āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻ āĻ¨āĻŋāĻ°ā§āĻāĻ°āĻ¤āĻž āĻ¯ā§āĻ āĻāĻ°ā§āĻ¨:<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
<version>2.14.0</version>
</dependency>
āĻĻāĻžāĻ°ā§āĻŖ! āĻāĻŽāĻ°āĻž āĻ¸ā§āĻāĻŋāĻāĻ¸ āĻŦā§āĻ° āĻāĻ°ā§āĻāĻŋ :) āĻāĻ˛ā§āĻ¨ āĻĻā§āĻāĻŋ āĻāĻŋāĻāĻžāĻŦā§ SLF4J āĻāĻžāĻ āĻāĻ°ā§āĨ¤ āĻāĻŽāĻ°āĻž āĻāĻŋāĻāĻžāĻŦā§ āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°āĻŦ āĻ¯ā§ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽā§āĻ° āĻāĻžāĻ āĻā§āĻĨāĻžāĻ āĻ°ā§āĻāĻ°ā§āĻĄ āĻāĻ°āĻž āĻāĻā§? āĻāĻāĻŋ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻŽāĻžāĻĻā§āĻ° āĻĻā§āĻāĻŋ āĻāĻŋāĻ¨āĻŋāĻ¸ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨: āĻ˛āĻāĻžāĻ° āĻāĻŦāĻ āĻ
ā§āĻ¯āĻžāĻĒā§āĻ¨ā§āĻĄāĻžāĻ°āĨ¤ āĻĒā§āĻ°āĻĨāĻŽ āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻāĻ°āĻž āĻ¯āĻžāĻāĨ¤ āĻāĻāĻāĻŋ āĻ˛āĻāĻžāĻ° āĻšāĻ˛ āĻāĻāĻāĻŋ āĻŦāĻ¸ā§āĻ¤ā§ āĻ¯āĻž āĻ˛āĻāĻŋāĻ āĻāĻ° āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻāĻāĻāĻŋ āĻ˛āĻāĻžāĻ° āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻā§āĻŦāĻ āĻ¸āĻšāĻ: āĻāĻŽāĻ°āĻž āĻ¸ā§āĻā§āĻ¯āĻžāĻāĻŋāĻ LoggerFactory.getLogger() āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻāĻŋ āĻāĻ°āĻŋāĨ¤ āĻŽā§āĻĨāĻĄ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ° āĻšāĻ˛ āĻā§āĻ˛āĻžāĻ¸ āĻ¯āĻžāĻ° āĻ
āĻĒāĻžāĻ°ā§āĻļāĻ¨ āĻ˛āĻ āĻāĻ°āĻž āĻšāĻŦā§āĨ¤ āĻāĻ¸ā§āĻ¨ āĻāĻŽāĻžāĻĻā§āĻ° āĻā§āĻĄ āĻāĻžāĻ˛āĻžāĻ:
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class MyTestClass {
public static final Logger LOGGER = LoggerFactory.getLogger(MyTestClass.class);
public static void main(String[] args) {
LOGGER.info("Test log entry!!!");
LOGGER.error("An error occurred!");
}
}
āĻāĻ¨āĻ¸ā§āĻ˛ āĻāĻāĻāĻĒā§āĻ:
ERROR StatusLogger No Log4j 2 configuration file found. Using default configuration (logging only errors to the console), or user programmatically provided configurations. Set system property 'log4j2.debug' to show Log4j 2 internal initialization logging. See https://logging.apache.org/log4j/2.x/manual/configuration.html for instructions on how to configure Log4j 2 15:49:08.907 [main] ERROR MyTestClass - An error occurred!
āĻāĻŽāĻ°āĻž āĻāĻāĻžāĻ¨ā§ āĻāĻŋ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻā§āĻāĻŋ? āĻĒā§āĻ°āĻĨāĻŽāĻ¤, āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻĻā§āĻāĻ¤ā§. āĻāĻāĻŋ āĻāĻāĻ¨ āĻāĻŽāĻžāĻĻā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻ¸ā§āĻāĻŋāĻāĻ¸ā§āĻ° āĻ
āĻāĻžāĻŦā§āĻ° āĻāĻžāĻ°āĻŖā§āĻ āĻĒāĻ°āĻŋāĻŖāĻ¤āĻŋāĨ¤ āĻ¸ā§āĻ āĻ
āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§, āĻāĻŽāĻžāĻĻā§āĻ° āĻ˛āĻāĻžāĻ° āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¤ā§āĻ°ā§āĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž (ERROR) āĻāĻāĻāĻĒā§āĻ āĻāĻ°āĻ¤ā§ āĻ¸āĻā§āĻˇāĻŽ āĻāĻŦāĻ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻ¨āĻ¸ā§āĻ˛ā§āĨ¤ logger.info () āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻāĻžāĻ āĻāĻ°ā§āĻ¨āĻŋāĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ logger.error() āĻāĻ°ā§āĻā§! āĻāĻ¨āĻ¸ā§āĻ˛ā§, āĻāĻŽāĻ°āĻž āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¤āĻžāĻ°āĻŋāĻ āĻĻā§āĻāĻŋ, āĻ¯ā§ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻāĻā§āĻā§ ( āĻĒā§āĻ°āĻ§āĻžāĻ¨), āĻļāĻŦā§āĻĻ "āĻ¤ā§āĻ°ā§āĻāĻŋ", āĻāĻŦāĻ āĻāĻŽāĻžāĻĻā§āĻ° āĻŦāĻžāĻ°ā§āĻ¤āĻž! ERROR āĻšāĻ˛ āĻ˛āĻāĻŋāĻ āĻ˛ā§āĻā§āĻ˛āĨ¤ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻāĻžāĻŦā§, āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻ˛āĻ āĻāĻ¨ā§āĻā§āĻ°āĻŋ "ERROR" āĻļāĻŦā§āĻĻ āĻĻāĻŋāĻ¯āĻŧā§ āĻāĻŋāĻšā§āĻ¨āĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽā§āĻ° āĻāĻ āĻ¸āĻŽāĻ¯āĻŧā§ āĻāĻāĻāĻŋ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻāĻā§āĻā§āĨ¤ āĻ¯āĻĻāĻŋ āĻāĻ¨ā§āĻā§āĻ°āĻŋāĻāĻŋ "INFO" āĻļāĻŦā§āĻĻ āĻĻāĻŋāĻ¯āĻŧā§ āĻāĻŋāĻšā§āĻ¨āĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻāĻŋ āĻā§āĻŦāĻ˛ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽā§āĻ° āĻ¸ā§āĻŦāĻžāĻāĻžāĻŦāĻŋāĻ āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ˛āĻžāĻĒā§āĻ° āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¤āĻĨā§āĻ¯ āĻāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§āĨ¤ SLF4J āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻ¤ā§ āĻ
āĻ¨ā§āĻāĻā§āĻ˛āĻŋ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻ˛āĻāĻŋāĻ āĻ¸ā§āĻ¤āĻ° āĻ°āĻ¯āĻŧā§āĻā§ āĻ¯āĻž āĻāĻĒāĻ¨āĻžāĻā§ āĻ¨āĻŽāĻ¨ā§āĻ¯āĻŧāĻāĻžāĻŦā§ āĻ˛āĻāĻŋāĻ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧāĨ¤ āĻāĻāĻŋ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°āĻž āĻā§āĻŦ āĻ¸āĻšāĻ: āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§ āĻāĻžāĻāĻž āĻ˛āĻāĻžāĻ° āĻā§āĻ˛āĻžāĻ¸ā§ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻļā§āĻ§ā§ āĻĒā§āĻ°āĻžāĻ¸āĻā§āĻāĻŋāĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻāĻ˛ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§. āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻ°ā§āĻāĻŋāĻ¨ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻ˛āĻ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨, logger.info() āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§ āĻāĻ˛ āĻāĻ°ā§āĻ¨āĨ¤ āĻāĻāĻāĻŋ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯, logger.error() āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ āĨ¤ āĻāĻāĻāĻŋ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯, logger.warn() āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
āĻāĻāĻ¨ āĻ ā§āĻ¯āĻžāĻĒā§āĻ¨ā§āĻĄāĻžāĻ° āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻĨāĻž āĻŦāĻ˛āĻž āĻ¯āĻžāĻ
āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻĒā§āĻ¨ā§āĻĄāĻžāĻ° āĻšāĻ˛ āĻ¸ā§āĻ āĻāĻžāĻ¯āĻŧāĻāĻž āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻĄā§āĻāĻž āĻ¯āĻžāĻ¯āĻŧāĨ¤ āĻāĻāĻāĻŋ āĻāĻĒāĻžāĻ¯āĻŧā§, āĻāĻāĻāĻŋ āĻĄā§āĻāĻž āĻā§āĻ¸ā§āĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤, āĻ āĻ°ā§āĻĨāĻžā§ "āĻŦāĻŋāĻ¨ā§āĻĻā§ āĻŦāĻŋ"āĨ¤ āĻĄāĻŋāĻĢāĻ˛ā§āĻāĻ°ā§āĻĒā§, āĻĄā§āĻāĻž āĻāĻ¨āĻ¸ā§āĻ˛ā§ āĻāĻāĻāĻĒā§āĻ āĻšāĻ¯āĻŧāĨ¤ āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻĒā§āĻ°ā§āĻŦāĻŦāĻ°ā§āĻ¤ā§ āĻāĻĻāĻžāĻšāĻ°āĻŖā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻŋāĻā§ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¨āĻž: āĻĒāĻžāĻ ā§āĻ¯āĻāĻŋ āĻāĻ¨āĻ¸ā§āĻ˛ā§ āĻāĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻšāĻ¯āĻŧā§āĻā§ āĻāĻŦāĻ Log4j āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻ° āĻ˛āĻāĻžāĻ° āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻ¨āĻ¸ā§āĻ˛ā§ āĻ¤ā§āĻ°ā§āĻāĻŋ-āĻ¸ā§āĻ¤āĻ°ā§āĻ° āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻā§āĻ˛āĻŋ āĻāĻāĻāĻĒā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ā§ˇ āĻ¸ā§āĻĒāĻˇā§āĻāĻ¤āĻ, āĻā§āĻā§āĻ¸āĻ āĻĢāĻžāĻāĻ˛ā§ āĻ˛āĻ āĻĒāĻĄāĻŧāĻž āĻāĻŦāĻ āĻ˛ā§āĻāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻŋ āĻāĻ°āĻ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻāĻ¨āĻāĨ¤ āĻ˛āĻāĻžāĻ°ā§āĻ° āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻāĻāĻ°āĻŖ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§, āĻāĻŽāĻžāĻĻā§āĻ° āĻĢāĻžāĻāĻ˛ āĻ ā§āĻ¯āĻžāĻĒā§āĻ¨ā§āĻĄāĻžāĻ° āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻļā§āĻ°ā§ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻĒāĻ¨āĻžāĻā§ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ src āĻĢā§āĻ˛ā§āĻĄāĻžāĻ°ā§ āĻāĻāĻāĻŋ log4j.xml āĻĢāĻžāĻāĻ˛ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§āĻ XML āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻā§āĻ° āĻ¸āĻžāĻĨā§ āĻĒāĻ°āĻŋāĻāĻŋāĻ¤: āĻāĻŽāĻ°āĻž āĻ¸āĻŽā§āĻĒā§āĻ°āĻ¤āĻŋ āĻāĻāĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻāĻāĻŋ āĻĒāĻžāĻ āĻĒā§āĻ¯āĻŧā§āĻāĻŋ :) āĻāĻāĻžāĻ¨ā§ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§ āĻ°āĻ¯āĻŧā§āĻā§:<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="INFO">
<Appenders>
<File name="MyFileAppender" fileName="C:\Users\Username\Desktop\testlog.txt" immediateFlush="false" append="false">
<PatternLayout pattern="%d{yyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
</File>
</Appenders>
<Loggers>
<Root level="INFO">
<AppenderRef ref="MyFileAppender"/>
</Root>
</Loggers>
</Configuration>
āĻāĻāĻžāĻ¨ā§ āĻŦāĻŋāĻļā§āĻˇ āĻŦāĻŋāĻļā§āĻˇ āĻŦāĻž āĻāĻ āĻŋāĻ¨ āĻāĻŋāĻā§āĻ āĻ¨ā§āĻ :) āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¤āĻžāĻ°āĻĒāĻ°āĻ, āĻāĻ¸ā§āĻ¨ āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ¯āĻžāĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻāĨ¤
<Configuration status="INFO">
āĻāĻāĻŋ āĻ¤āĻĨāĻžāĻāĻĨāĻŋāĻ¤ StatusLogger. āĻāĻāĻŋ āĻāĻŽāĻžāĻĻā§āĻ° āĻ˛āĻāĻžāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤ āĻ¨āĻ¯āĻŧ āĻāĻŦāĻ Log4j āĻāĻ° āĻ
āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻā§āĻ˛āĻŋāĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧā§ˇ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ status="INFO" āĻāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ status="TRACE" āĻ¸ā§āĻ āĻāĻ°ā§āĻ¨ āĻāĻŦāĻ Log4j-āĻāĻ° āĻ
āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻāĻžāĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¤āĻĨā§āĻ¯ āĻāĻ¨āĻ¸ā§āĻ˛ā§ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻŋāĻ¤ āĻšāĻŦā§ (āĻāĻŽāĻžāĻĻā§āĻ° āĻ
ā§āĻ¯āĻžāĻĒā§āĻ¨ā§āĻĄāĻžāĻ° āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ āĻšāĻ˛ā§āĻ āĻ¸ā§āĻā§āĻ¯āĻžāĻāĻžāĻ¸āĻ˛āĻāĻžāĻ° āĻāĻ¨āĻ¸ā§āĻ˛ā§ āĻĄā§āĻāĻž āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻ¨ āĻāĻ°ā§)āĨ¤ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻāĻ¨ āĻāĻāĻŋāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻ¨ā§āĻ, āĻ¤āĻžāĻ āĻāĻāĻŋāĻā§ āĻ¯ā§āĻŽāĻ¨ āĻāĻā§ āĻ¤ā§āĻŽāĻ¨āĻ āĻā§āĻĄāĻŧā§ āĻĻā§āĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻāĨ¤
<Appenders>
<File name="MyFileAppender" fileName="C:\Users\Evgeny\Desktop\testlog.txt" append="true">
<PatternLayout pattern="%d{yyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
</File>
</Appenders>
āĻāĻāĻžāĻ¨ā§ āĻāĻŽāĻ°āĻž āĻāĻŽāĻžāĻĻā§āĻ° āĻ
ā§āĻ¯āĻžāĻĒā§āĻ¨ā§āĻĄāĻžāĻ° āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŋāĨ¤ <File> āĻā§āĻ¯āĻžāĻ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§ āĻ¯ā§ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ āĻ
ā§āĻ¯āĻžāĻĒā§āĻ¨ā§āĻĄāĻžāĻ° āĻšāĻŦā§ āĨ¤ name="MyFileAppender" āĻ
ā§āĻ¯āĻžāĻĒā§āĻ¨ā§āĻĄāĻžāĻ°ā§āĻ° āĻ¨āĻžāĻŽ āĻ¸ā§āĻ āĻāĻ°ā§āĨ¤ fileName="C:\Users\Username\Desktop\testlog.txt" āĻ˛āĻ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻĒāĻĨ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĄā§āĻāĻž āĻ˛ā§āĻāĻž āĻšāĻŦā§āĨ¤ append="true" āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻˇā§ āĻĄā§āĻāĻž āĻ˛ā§āĻāĻž āĻāĻāĻŋāĻ¤ āĻāĻŋāĻ¨āĻž āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§āĨ¤ āĻāĻŽāĻžāĻĻā§āĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, āĻāĻ āĻ
āĻŦāĻŋāĻāĻ˛ āĻāĻŽāĻ°āĻž āĻāĻŋ āĻāĻ°āĻŦ. āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻŽāĻžāĻ¨āĻāĻŋāĻā§ āĻŽāĻŋāĻĨā§āĻ¯āĻžāĻ¤ā§ āĻ¸ā§āĻ āĻāĻ°ā§āĻ¨, āĻ¤āĻžāĻšāĻ˛ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻŦāĻžāĻ° āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻļā§āĻ°ā§ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ˛āĻ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻĒā§āĻ°āĻžāĻ¨ā§ āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻšāĻŦā§āĨ¤ <PatternLayout pattern="%d{yyy-MM-dd HH:mm:ss.SSS} [%t] %-5āĻ˛ā§āĻā§āĻ˛ %āĻ˛āĻāĻžāĻ°{36} - %msg%n"/>āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻāĻŋāĻ āĻ¸ā§āĻāĻŋāĻāĻ¸ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§āĨ¤ āĻāĻŽāĻžāĻĻā§āĻ° āĻ˛āĻā§ āĻā§āĻā§āĻ¸āĻ āĻāĻŋāĻāĻžāĻŦā§ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¤āĻž āĻāĻžāĻ¸ā§āĻāĻŽāĻžāĻāĻ āĻāĻ°āĻ¤ā§ āĻāĻāĻžāĻ¨ā§ āĻāĻŽāĻ°āĻž āĻ°ā§āĻā§āĻ˛āĻžāĻ° āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻļāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋāĨ¤
<Loggers>
<Root level="INFO">
<AppenderRef ref="MyFileAppender"/>
</Root>
</Loggers>
āĻāĻāĻžāĻ¨ā§ āĻāĻŽāĻ°āĻž āĻŽā§āĻ˛ āĻ¸ā§āĻ¤āĻ° āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°āĻŋāĨ¤ āĻāĻŽāĻ°āĻž "INFO" āĻ¸ā§āĻ¤āĻ° āĻ¸ā§āĻ āĻāĻ°ā§āĻāĻŋ, āĻ¯āĻžāĻ° āĻŽāĻžāĻ¨ā§ āĻšāĻ˛ āĻ¯ā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ° āĻ¸ā§āĻ¤āĻ°āĻā§āĻ˛āĻŋ INFO āĻĨā§āĻā§ āĻŦā§āĻļāĻŋ (āĻāĻŽāĻ°āĻž āĻāĻĒāĻ°ā§ āĻ¯ā§ āĻā§āĻŦāĻŋāĻ˛āĻāĻŋ āĻĻā§āĻā§āĻāĻŋ āĻ¸ā§ āĻ
āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§) āĻ˛āĻ āĻāĻ°āĻž āĻšāĻŦā§ āĻ¨āĻžāĨ¤ āĻāĻŽāĻžāĻĻā§āĻ° āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽā§ 3āĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻĨāĻžāĻāĻŦā§: āĻāĻāĻāĻŋ āĻ¤āĻĨā§āĻ¯, āĻāĻāĻāĻŋ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻ¤ā§āĻ°ā§āĻāĻŋā§ˇ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§, āĻ¸āĻŽāĻ¸ā§āĻ¤ 3āĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻ˛āĻ āĻāĻ°āĻž āĻšāĻŦā§āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ°ā§āĻ āĻ˛ā§āĻā§āĻ˛āĻā§ ERROR āĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§āĻ¨, āĻ¤āĻžāĻšāĻ˛ā§ LOGGER.error() āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻāĻ˛ āĻĨā§āĻā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻļā§āĻˇ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻāĻŋ āĻ˛āĻā§ āĻļā§āĻˇ āĻšāĻŦā§āĨ¤ āĻāĻĒāĻ°āĻ¨ā§āĻ¤ā§, āĻĒāĻ°āĻŋāĻļāĻŋāĻˇā§āĻā§āĻ° āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻāĻāĻžāĻ¨ā§ āĻ¯āĻžāĻ¯āĻŧāĨ¤ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§, āĻāĻĒāĻ¨āĻžāĻā§ <Root> āĻā§āĻ¯āĻžāĻā§āĻ° āĻāĻŋāĻ¤āĻ°ā§ āĻāĻāĻāĻŋ <ApprenderRef> āĻā§āĻ¯āĻžāĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻāĻŦāĻ āĻāĻāĻŋāĻ¤ā§ ref='your appender's name' āĻ
ā§āĻ¯āĻžāĻā§āĻ°āĻŋāĻŦāĻŋāĻāĻ āĻ¯ā§āĻ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻā§āĻ˛ā§ āĻ¯āĻžāĻ¨, āĻāĻāĻžāĻ¨ā§ āĻāĻŽāĻ°āĻž āĻ
ā§āĻ¯āĻžāĻĒā§āĻ¨ā§āĻĄāĻžāĻ°ā§āĻ° āĻ¨āĻžāĻŽ āĻ¸ā§āĻ āĻāĻ°āĻŋ: <. āĻāĻŦāĻ āĻāĻāĻžāĻ¨ā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻā§āĻĄ!
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class MyTestClass {
public static final Logger LOGGER = LoggerFactory.getLogger(MyTestClass.class);
public static void main(String[] args) {
LOGGER.info("The program is starting!!!");
try {
LOGGER.warn("Attention! The program is trying to divide a number by another.
System.out.println(12/0);
} catch (ArithmeticException x) {
LOGGER.error("Error! Division by zero!");
}
}
}
āĻ
āĻŦāĻļā§āĻ¯āĻ, āĻāĻāĻž āĻāĻāĻā§ āĻŦāĻŋāĻļā§āĻ°ā§ (āĻāĻāĻāĻŋ RuntimeException āĻ§āĻ°āĻž āĻāĻāĻāĻŋ āĻ¸āĻ¨ā§āĻĻā§āĻšāĻāĻ¨āĻ āĻ§āĻžāĻ°āĻŖāĻž), āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻŋ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻĻā§āĻĻā§āĻļā§āĻ¯ā§ āĻ¨āĻŋāĻā§āĻāĻ¤ :) āĻāĻ¸ā§āĻ¨ āĻāĻŽāĻžāĻĻā§āĻ° main() āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻāĻŋ āĻĒāĻ°āĻĒāĻ° 4 āĻŦāĻžāĻ° āĻāĻžāĻ˛āĻžāĻ āĻāĻŦāĻ āĻāĻŽāĻžāĻĻā§āĻ° testlog.txt āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻĻā§āĻā§āĻ¨āĨ¤ āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻāĻŋ āĻāĻā§ āĻĨā§āĻā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¨āĻž: āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ āĻāĻāĻŋ āĻāĻ°āĻŦā§āĨ¤ āĻ¸āĻŦ āĻāĻžāĻ! :) āĻāĻāĻ¨ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻāĻāĻŋ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻž āĻ˛āĻāĻžāĻ° āĻāĻā§āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§ āĻ˛āĻāĻžāĻ° āĻāĻ˛ āĻ¯ā§āĻ āĻāĻ°ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻžāĻ¨ā§ āĻāĻŋāĻā§ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽā§āĻ° āĻ¸āĻžāĻĨā§ āĻā§āĻ˛āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻ¤āĻžāĻ°āĻĒāĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻ˛āĻ āĻ¤āĻžāĻāĻžāĻ¨ :) āĻāĻāĻŋ āĻāĻā§āĻ°āĻ¤āĻž āĻ˛āĻāĻŋāĻ āĻŦāĻŋāĻˇāĻ¯āĻŧ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°ā§. āĻāĻ āĻŦāĻ¸ā§ āĻ¸āĻŦ āĻĒāĻĄāĻŧāĻž āĻā§āĻ¯āĻžāĻ˛ā§āĻā§āĻāĻŋāĻ āĻšāĻŦā§āĨ¤ āĻāĻāĻŋ āĻŦāĻ˛ā§āĻā§, āĻāĻ¤ā§ āĻĒā§āĻ°āĻā§āĻ° āĻ
āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ āĻĻāĻ°āĻāĻžāĻ°ā§ āĻ¤āĻĨā§āĻ¯ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻĒāĻ¨āĻŋ āĻā§āĻāĻžāĻŦā§ āĻ˛āĻāĻžāĻ° āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻŦā§āĻ¨ āĻ¤āĻž āĻļāĻŋāĻāĻŦā§āĻ¨ āĻ¯āĻžāĻ¤ā§ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻā§āĻā§āĻ¸āĻ āĻĢāĻžāĻāĻ˛ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§ āĻ¯āĻĻāĻŋ āĻāĻŽāĻžāĻĻā§āĻ° testlog.txt āĻĢāĻžāĻāĻ˛ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻāĻžāĻ°ā§ āĻĒā§āĻāĻāĻžāĻ¯āĻŧ :) āĻāĻŦāĻ āĻāĻāĻŋ āĻāĻŽāĻžāĻĻā§āĻ° āĻā§āĻ˛āĻžāĻ¸ āĻļā§āĻˇ āĻāĻ°ā§! āĻāĻ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻā§āĻŦ āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ āĻŦāĻŋāĻˇāĻ¯āĻŧā§āĻ° āĻ¸āĻžāĻĨā§ āĻĒāĻ°āĻŋāĻāĻŋāĻ¤ āĻšāĻ¯āĻŧā§āĻā§āĻ¨ āĻāĻŦāĻ āĻāĻ āĻā§āĻāĻžāĻ¨āĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ā§āĻ° āĻāĻžāĻā§ āĻ
āĻŦāĻļā§āĻ¯āĻ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻšāĻžāĻ¯āĻŧāĻ āĻšāĻŦā§āĨ¤ āĻĒāĻ°ā§āĻ° āĻŦāĻžāĻ° āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤! :)