рдореЗрд░рд╛ рд╡рд┐рдХрд╛рд╕ рдЕрдиреБрднрд╡ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рд╡рд┐рдВрдбреЛрдЬрд╝ рдФрд░ рд▓рд┐рдирдХреНрд╕ рдХреЗ рд▓рд┐рдП рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреА рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдореИрдВ рдЖрдорддреМрд░ рдкрд░ рдмрд╛рдЗрдирд░реА рд╕рдВрдЧрддрддрд╛ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХрддрдо рдХреНрд░реЙрд╕-рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реВрдВред рдФрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рд▓реЙрдЧрд┐рдВрдЧ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдХрдИ рд╕реНрдерд┐рд░ рд╕рдорд╛рдзрд╛рди рдЬрдорд╛ рд╣реБрдП рд╣реИрдВред
рд╡рд┐рд╖рдп рдЗрд╕
рд▓реЗрдЦ рдХреЗ рд▓рд┐рдП рдПрдХ рдирд┐рд░рдВрддрд░рддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдиреМрд╕рд┐рдЦрд┐рдП рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛ред
рдпрд╣рд╛рдБ рдореИрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдореБрджреНрджреЛрдВ рдкрд░ рдкреНрд░рдХрд╛рд╢ рдбрд╛рд▓рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдБ:
- рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд▓реЙрдЧрд░ рдФрд░ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреА рдЖрдВрддрд░рд┐рдХ рд╕рдВрдкрддреНрддрд┐ред
- рд╡реЙрд▓реНрдпреВрдо, рд╕реНрддрд░ рдФрд░ рд▓реЙрдЧ рд╕рдВрджреЗрд╢реЛрдВ рдХрд╛ рд╡рд┐рд╡рд░рдгред
- рд╕рд╛рдорд╛рдиреНрдп рд╡рд┐рдиреНрдпрд╛рд╕ рдирд┐рдпрдо рд╡рд┐рдХрд╛рд╕ рдореЗрдВ, рд▓рдбрд╝рд╛рдИ рдореЗрдВ, рдФрд░ рдЬрд╛рдВрдЪ рдореЗрдВред
рдЗрд╕рд▓рд┐рдП, рдореИрдВ рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рдЕрдкрдиреЗ рдкрд░рд┐рд╡рд░реНрдзрди рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░реВрдВрдЧрд╛ред
рд▓реЗрдЦрдХ рдХреА рддрд░рд╣, рдореИрдВ NLog рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдЗрд╕рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВред рдХреЗ рдмрд╛рдж рдмреЗрд╢рдХ
рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рд▓рдХрдбрд╝рд╣рд╛рд░реЗ рдореЗрдВ рдЙрдирдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди, рдиреАрдЪреЗ рд╡рд░реНрдгрд┐рдд рдЕрднреНрдпрд╛рд╕ рдЙрди рдкрд░ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рд╡реИрд╕реЗ, log4net
рдХрд╛ рд╡рд┐рдХрд╛рд╕ рдЬрд╛рд░реА
рд╣реИ ред
рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, "рдПрдХ рд╕рдореНрдорд╛рдирд┐рдд рд▓рдХрдбрд╝рд╣рд╛рд░реЗ рдХреА рд╕реБрд╡рд┐рдзрд╛рдПрдБ" рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рджреЛ рдЖрд╡рд╢реНрдпрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рд╣реИрдВ:
- рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЕрд╡рд▓реЛрдХрди / рдкреБрдирдГ рд▓реЛрдб рдХрд░рдирд╛ рдХреЗрд╡рд▓ рдПрдХ рдЙрдкрдпреЛрдЧреА рдХреМрд╢рд▓ рдирд╣реАрдВ рд╣реИ, рдмрд▓реНрдХрд┐ рдПрдХ рдмрд╣реБрдд рд╣реА рдЖрд╡рд╢реНрдпрдХ рд╣реИред
- рдСрдл рдж рд╕реНрдЯреЗрдЯ рдореЗрдВ рдиреНрдпреВрдирддрдо рд╣рд╕реНрддрдХреНрд╖реЗрдкред
рд╣реБрдб NLog рдХреЗ рддрд╣рдд
рджреВрд╕рд░реА рд╕реБрд╡рд┐рдзрд╛ рдХреА рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдкрд░ рддреБрд░рдВрдд рдЪрд░реНрдЪрд╛ рдХрд░реЗрдВред
рдЕрдХреНрд╕рд░, рдХреЛрдб рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЗ рд╕рдордп, рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рджреМрд░рд╛рди рдПрдХ рдЪрд░ рдХреЗ рдореВрд▓реНрдп рдХреЛ рджреЗрдЦрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдЖрдорддреМрд░ рдкрд░, рд╡реЗ рдбрд┐рдмрдЧрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд░реБрдЪрд┐ рдХреЗ рд╕реНрдерд╛рди рдкрд░ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рд░реЛрдХрддреЗ рд╣реИрдВред рдореЗрд░реЗ рд▓рд┐рдП, рдпрд╣ рдПрдХ рд╕реНрдкрд╖реНрдЯ рд╕рдВрдХреЗрдд рд╣реИ рдХрд┐
рдЯреНрд░реЗрд╕ рдХрд╛ рдирд┐рд╖реНрдХрд░реНрд╖ рдЗрд╕ рд╕реНрдерд╛рди рдкрд░ рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛ред рдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд╕рд╛рде рдкреВрд░рд╛, рд╣рдо рддреБрд░рдВрдд рдЗрд╕ рдЪрд░ рдХрд╛ рдПрдХ рд╕реНрдХреИрди рдФрд░ рдЕрдиреНрдп рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд╕рд╛рде рддреБрд▓рдирд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдорд┐рд▓рддрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдореИрдВ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдбрд┐рдмрдЧрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реВрдВред
рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдПрдХ рд╕реИрдиреНрдп рдЖрд╡реЗрджрди рдореЗрдВ, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╡рд┐рд╕реНрддреГрдд рд▓реЙрдЧрд┐рдВрдЧ рдмрдВрдж рднреА рдирд┐рд╖реНрдкрд╛рджрди рдХреА рдЧрддрд┐ рдФрд░ рд╕рдорд╛рдирддрд╛ рджреЛрдиреЛрдВ рдХреЗ рд╕рд╛рде рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХрд░ рд╕рдХрддрд╛ рд╣реИред
NLog рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рддрдХрдиреАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ:
- рдЕрд╕реНрдерд┐рд░ рдЪрд░ рдореЗрдВ рд▓реЙрдЧ рд╕реНрддрд░ рдХреИрд╢рд┐рдВрдЧред рдЗрд╕рдХреЗ рд▓рд┐рдП рдмреНрд▓реЙрдХрд┐рдВрдЧ рдпрд╛ рдереНрд░реЗрдб рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬрд╝реЗрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред
- рд▓реЙрдЧрд┐рдВрдЧ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд░рд▓ рд╡рд┐рдзрд┐ред рдХреБрдЫ рд╢рд░реНрддреЛрдВ рдХреЗ рддрд╣рдд, рдпрд╣ рдЬреАрдЯ-рд╕рдВрдХрд▓рди рдХреЗ рджреМрд░рд╛рди рдЗрдирд▓рд╛рдЗрди-рдЗрди-рдХреЛрдб рдХрд╛ рдиреЗрддреГрддреНрд╡ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рдпрд╣ рддрд░реНрдХ рдХреЛ рдПрдХ рдХреЛрдб рдЕрдиреБрднрд╛рдЧ рдХреЗ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд╕рд╢рд░реНрдд рдЫреЛрдбрд╝реЗрдВ рдореЗрдВ рдмрджрд▓ рджреЗрддрд╛ рд╣реИ рдФрд░ рд▓реЙрдЧрд┐рдВрдЧ рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдорд╛рдкрджрдВрдбреЛрдВ рдХреЛ рдХреЙрдкреА рдФрд░ рдкрд╛рд╕ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред
- рд▓реЙрдЧрд┐рдВрдЧ рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рд╡рд┐рд╕реНрддреГрдд рдУрд╡рд░рд▓реЛрдбрд┐рдВрдЧред рд▓реЙрдЧрд┐рдВрдЧ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдЯрд╛рдЗрдк рд░реВрдкрд╛рдВрддрд░рдг рдХреЛ рдХрдо рдХрд░реЗрдВ, рдФрд░ рд╡реНрдпрд░реНрде рдореБрдХреНрдХреЗрдмрд╛рдЬреА рд╕реЗ рднреА рдмрдЪрд╛рдПрдВред
- рдкреНрд░рддрд┐рдирд┐рдзрд┐ рджреНрд╡рд╛рд░рд╛ рд╕рдВрджреЗрд╢ рдирд┐рд░реНрдорд╛рдг рдореЗрдВ рджреЗрд░реАред рдЖрдкрдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдФрд░ рдЖрд╕рд╛рдиреА рд╕реЗ рдЬрдЯрд┐рд▓ рд╕рдВрджреЗрд╢ рдкреАрдврд╝реА рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
рдХрдХреНрд╖рд╛ рдХрд╛ рд╕реНрд░реЛрдд рдХреЛрдб
рдпрд╣рд╛рдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛
рд╣реИ ред
рдмрд╣реБрдд рдмрдврд╝рд┐рдпрд╛! NLog рдХреЗ рд▓рд┐рдП, рдЖрдк рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдкрдХреЗ рдордирдорд╛рдиреЗ рдврдВрдЧ рд╕реЗ рд╡рд┐рд╕реНрддреГрдд рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЗрд╕рд╕реЗ рдкреНрд░рджрд░реНрд╢рди рдкрд░ рдХрдо рд╕реЗ рдХрдо рдкреНрд░рднрд╛рд╡ рдкрдбрд╝реЗрдЧрд╛ред рд▓реЗрдХрд┐рди, рдпрд╣ рд▓реЙрдЧрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЖрдзреЗ рдХреЛрдб рдХреЛ рд╕рдорд░реНрдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдХрд╛рд░рдг рдирд╣реАрдВ рд╣реИред
рдХреНрдпрд╛ рдФрд░ рдХреИрд╕реЗ рд▓реЙрдЧ рдЗрди рдХрд░реЗрдВ
рдирд┐рдпрдореЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП:
- рд▓реЙрдЧ рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдПрдХ рдЕрд▓рдЧ рд▓рд╛рдЗрди рдкрд░ рд░рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
- рд╕рдВрджреЗрд╢ рдпрдерд╛рд╕рдВрднрд╡ рдЫреЛрдЯрд╛ рдФрд░ рд╕реВрдЪрдирд╛рддреНрдордХ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
- рдХреЗрд╡рд▓ рджреБрд░реНрд▓рдн рдпрд╛ рдШрд╛рддрдХ рд╕рдВрджреЗрд╢ рд╕реНрдерд╛рдиреАрдпрдХреГрдд рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред
- рдХрд┐рд╕реА рд╡рд┐рдзрд┐ рдХреЗ рд╕реНрдерд╛рдиреАрдп рдЪрд░ рдпрд╛ рдХрд┐рд╕реА рд╡рд░реНрдЧ рд╡рд┐рдзрд┐ рдХреЗ рдЖрдВрддрд░рд┐рдХ рд╡рд░реНрдЧ рдЪрд░ рд╕реЗ рддрд░реНрдХ рд▓реЗрдирд╛ рдЙрдЪрд┐рдд рд╣реИред
- рдкреНрд░рдХрд╛рд░ рдХреЗ рд░реВрдкрд╛рдВрддрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЙрдЪрд┐рдд рдирд╣реАрдВ рд╣реИред
рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд▓реЙрдЧ рдХреЗ рд▓рд┐рдП рдЖрдЙрдЯрдкреБрдЯ рдХрд░рддреЗ рд╕рдордп, рд╣рдореЗрд╢рд╛ рд╕рдВрднрд╛рд╡рд┐рдд рдЕрдирд╛рд╡рд╢реНрдпрдХ рдЧрдгрдирд╛рдУрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдкрд░ рдзреНрдпрд╛рди рджреЗрдВ рдЬреЛ рд▓реЙрдЧ рдХреЗ рдЕрдХреНрд╖рдо рд╣реЛрдиреЗ рдкрд░ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдВрдЧреЗред
рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг (рдХреБрдЫ рд╡рд░реНрдЧ рдХрд╛ рдЯреБрдХрдбрд╝рд╛):
private static Logger Log = LogManager. GetCurrentClassLogger ( ) ; <br/>
<br/>
public string Request ( string cmd, string getParams ) <br/>
{ <br/>
Uri uri = new Uri ( _baseUri, cmd + "?" + getParams ) ; <br/>
Log. Debug ( "Request for uri:`{0}'" , uri ) ; <br/>
HttpWebRequest webReq = ( HttpWebRequest ) WebRequest. Create ( uri ) ; <br/>
webReq. Method = "GET" ; <br/>
webReq. Timeout = _to ; <br/>
<br/>
string respText ; <br/>
try <br/>
{ <br/>
string page ; <br/>
using ( WebResponse resp = webReq. GetResponse ( ) ) <br/>
using ( Stream respS = resp. GetResponseStream ( ) ) <br/>
using ( StreamReader sr = new StreamReader ( respS ) ) <br/>
page = sr. ReadToEnd ( ) ; <br/>
Log. Trace ( "Response page:`{0}'" , page ) ; <br/>
return page ; <br/>
} <br/>
catch ( Exception err ) <br/>
{ <br/>
Log. Warn ( "Request for uri:`{0}' exception: {1}" , uri, err. Message ) ; <br/>
throw ; <br/>
} <br/>
}
private static Logger Log = LogManager. GetCurrentClassLogger ( ) ; <br/>
<br/>
public string Request ( string cmd, string getParams ) <br/>
{ <br/>
Uri uri = new Uri ( _baseUri, cmd + "?" + getParams ) ; <br/>
Log. Debug ( "Request for uri:`{0}'" , uri ) ; <br/>
HttpWebRequest webReq = ( HttpWebRequest ) WebRequest. Create ( uri ) ; <br/>
webReq. Method = "GET" ; <br/>
webReq. Timeout = _to ; <br/>
<br/>
string respText ; <br/>
try <br/>
{ <br/>
string page ; <br/>
using ( WebResponse resp = webReq. GetResponse ( ) ) <br/>
using ( Stream respS = resp. GetResponseStream ( ) ) <br/>
using ( StreamReader sr = new StreamReader ( respS ) ) <br/>
page = sr. ReadToEnd ( ) ; <br/>
Log. Trace ( "Response page:`{0}'" , page ) ; <br/>
return page ; <br/>
} <br/>
catch ( Exception err ) <br/>
{ <br/>
Log. Warn ( "Request for uri:`{0}' exception: {1}" , uri, err. Message ) ; <br/>
throw ; <br/>
} <br/>
}
рддрд░реНрдХ рдХреЗ рд▓рд┐рдП рд╕рднреА рд▓реЙрдЧрд┐рдВрдЧ рддрд░реНрдХ рдЖрд╡рд╢реНрдпрдХ рдереЗред
рдбреАрдмрдЧ рд╕рдВрджреЗрд╢ рдЙрди рддрд░реНрдХреЛрдВ рдХреЛ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬрд┐рдирдХреЗ рд╕рд╛рде рд╣рдо рдлрд╝рдВрдХреНрд╢рди рдореЗрдВ рдЖрдП рдереЗред рддреНрд░реБрдЯрд┐ рд╣реИрдВрдбрд▓рд░ рдореЗрдВ, рд╣рдо
рдбрд┐рдмрдЧ рд╕реНрддрд░ рдХреЗ рдЕрдХреНрд╖рдо рд╣реЛрдиреЗ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдЗрдирдкреБрдЯ рдорд╛рдкрджрдВрдбреЛрдВ рдХреА рдирдХрд▓ рдХрд░рддреЗ рд╣реИрдВред рдФрд░ рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдЗрдХрд╛рдИ рдкрд░реАрдХреНрд╖рдг рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдиреЗ рдкрд░ рдЬрд╛рдирдХрд╛рд░реА рджреЗрдЧрд╛ред рд╣рдо рдПрдХ рдЕрдкрд╡рд╛рдж рд╕реНрдЯреИрдХ рдирд╣реАрдВ рдлреЗрдВрдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рд╣реИрдВрдбрд▓рд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрднрд╡ рд╣реИред
рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд╡рд░реНрддрдорд╛рди рддреНрд░реБрдЯрд┐ рд╣реИрдВрдбрд▓рд░ рдореЗрдВ рдЙрд╕ рд╕рдВрджрд░реНрдн рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдирд╛ рдЙрдкрдпреЛрдЧреА рд╣реЛрддрд╛ рд╣реИ рдЬреЛ рдЕрдкрд╡рд╛рдж рдХреЗ рдЕрдкрд╡рд╛рдж рдФрд░ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдиреЗрддреГрддреНрд╡ рдХрд░рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдореЗрдВ,
WebException рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП
рд╕реНрдерд┐рддрд┐ рдлрд╝реАрд▓реНрдб рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдирд╛ рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛ред
рд╕реБрд░рдХреНрд╖рд╛ рдЙрдкрд╛рдпреЛрдВ рдХреЛ рд▓реЙрдЧ рдХрд░реЗрдВ
NLog рдХреА рдХреБрдЫ рдСрдЯреЛ-рд▓реЙрдЧрд┐рдВрдЧ рдХреНрд╖рдорддрд╛рдУрдВ рдХреЗ рдмрд╛рд╡рдЬреВрдж, рдЗрд╕ рдмрд╛рдд рдХреА рдХреЛрдИ рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВ рд╣реИ рдХрд┐ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рдЕрдВрдд рдореЗрдВ рд▓реЙрдЧ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИред
рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ,
AppDomain.ProcessExit рдЗрд╡реЗрдВрдЯ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдХреЗ рд░рд┐рдХреЙрд░реНрдбрд┐рдВрдЧ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рд╣реА рдирд╣реАрдВ рд╣реИред рдиреЗрдЯрд╡рд░реНрдХ рдкрд░ рд▓реЙрдЧ рд╕рд╣рд┐рдд рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рддрд░реАрдХреЛрдВ рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рдЗрд╕ рдШрдЯрдирд╛ рдХрд╛ рд╣реИрдВрдбрд▓рд░ рдПрдХ рд╕реАрдорд┐рдд рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рд╣реИред .Net рдореЗрдВ, рдпрд╣ рд░рди рдЯрд╛рдЗрдо 2 рд╕реЗрдХрдВрдб рд╕реЗ рдЕрдзрд┐рдХ рдирд╣реАрдВ рд╣реИ, рдЬрдмрдХрд┐ рдореЛрдиреЛ рдореЗрдВ рдпрд╣ рдПрдХ
рдереНрд░реЗрдбрдкреВрд▓ рд╣реИ ред рдЗрд╕рд▓рд┐рдП, рдЕрдзрд┐рдХ рдЕрдиреБрдХреВрд▓ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХрд╛ рдзреНрдпрд╛рди рд░рдЦрдирд╛ рдЙрдкрдпреЛрдЧреА рд╣реИред
рдкрд╣рд▓реА рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐
AppDomain.UnhandledException рдШрдЯрдирд╛ рдХреЛ рд╕рдВрднрд╛рд▓рдирд╛ рд╣реИред рдЗрд╕рдореЗрдВ, рд▓реЙрдЧ рдХреЗ рд▓рд┐рдП рдкреВрд░реНрдг рддреНрд░реБрдЯрд┐ рдЬрд╛рдирдХрд╛рд░реА рд▓рд┐рдЦреА рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдП рдФрд░
рд▓реЙрдЧрдореИрдирдЧрд░ рдХрд╣рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдлрд╝реНрд▓рд╢ () ред рдЗрд╕ рдИрд╡реЗрдВрдЯ рдХрд╛ рд╣реИрдВрдбрд▓рд░ рдЙрд╕реА рдереНрд░реЗрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЕрдкрд╡рд╛рдж рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИ, рдФрд░ рдЕрдВрдд рдореЗрдВ, рддреБрд░рдВрдд рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдЕрдирд▓реЛрдб рдХрд░рддрд╛ рд╣реИред
private static readonly Logger Log = LogManager. GetCurrentClassLogger ( ) ; <br/>
<br/>
public static void Main ( string [ ] args ) <br/>
{ <br/>
AppDomain. CurrentDomain . UnhandledException += OnUnhandledException ; <br/>
( ... ) <br/>
LogManager. Flush ( ) ; <br/>
} <br/>
<br/>
static void OnUnhandledException ( object sender, UnhandledExceptionEventArgs e ) <br/>
{ <br/>
Log. Fatal ( "Unhandled exception: {0}" , e. ExceptionObject ) ; <br/>
LogManager. Flush ( ) ; <br/>
}
private static readonly Logger Log = LogManager. GetCurrentClassLogger ( ) ; <br/>
<br/>
public static void Main ( string [ ] args ) <br/>
{ <br/>
AppDomain. CurrentDomain . UnhandledException += OnUnhandledException ; <br/>
( ... ) <br/>
LogManager. Flush ( ) ; <br/>
} <br/>
<br/>
static void OnUnhandledException ( object sender, UnhandledExceptionEventArgs e ) <br/>
{ <br/>
Log. Fatal ( "Unhandled exception: {0}" , e. ExceptionObject ) ; <br/>
LogManager. Flush ( ) ; <br/>
}
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдЖрдкрдХреЛ
LogManager.Flush () рдХреЛ рдХреЙрд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрд╣рд╛рдВ рднреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕рдорд╛рдкреНрддрд┐ рд╕рдВрднрд╡ рд╣реИред рд╕рднреА рдЧреИрд░-рдкреГрд╖реНрдарднреВрдорд┐ рдереНрд░реЗрдбреНрд╕ рдХреЗ рдЕрдВрдд рдореЗрдВред
рдпрджрд┐ рдЖрдкрдХрд╛ рдЖрд╡реЗрджрди рдПрдХ рдЬреАрдд-рд╕реЗрд╡рд╛ рдпрд╛ Asp.Net рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдХреЛрдб рдХреЗ рд╕рдВрдмрдВрдзрд┐рдд рдЖрд░рдВрдн рдФрд░ рдЕрдВрдд рдХреА рдШрдЯрдирд╛рдУрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдХрд┐рддрдирд╛ рд▓реЙрдЧ рдЗрди рдХрд░рдирд╛ рд╣реИ
рдбреЗрд╡рд▓рдкрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдЧрдВрднреАрд░ рд╕рдорд╕реНрдпрд╛ред рдЖрдк рд╣рдореЗрд╢рд╛ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХреЛрдб рдмрд╣реБрдд рдмреБрд░рд╛ рд▓рдЧрдиреЗ рд▓рдЧрддрд╛ рд╣реИред рдореИрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд┐рдЪрд╛рд░реЛрдВ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдд рд╣реВрдВред
рд▓реЙрдЧрд┐рдВрдЧ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдПрдХ рдЯрд┐рдкреНрдкрдгреА рд╣реИред рдЕрдзрд┐рдХрд╛рдВрд╢ рднрд╛рдЧ рдХреЗ рд▓рд┐рдП
рдЯреНрд░реЗрд╕ рд╕реНрддрд░
рд▓реЙрдЧрд┐рдВрдЧ рдЙрдиреНрд╣реЗрдВ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИред
рдЯреНрд░реЗрд╕ рдФрд░
рдбрд┐рдмрдЧ рдХрд╛ рд╕реНрддрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рджреНрд╡рд╛рд░рд╛ рдкрдврд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЬреЛ рдХреБрдЫ рдЕрдзрд┐рдХ рд╣реИ рд╡рд╣ рддрдХрдиреАрдХреА рд╕рд╣рд╛рдпрддрд╛ рдФрд░ рдкреНрд░рд╡реЗрд╢ рд╣реИред рдЗрд╕рд▓рд┐рдП,
рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕реНрддрд░ рдкрд░
, рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдкреНрд░рд╢реНрдиреЛрдВ рдХрд╛ рд╕рд╣реА рдЙрддреНрддрд░ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП: "рдХреНрдпрд╛ рд╣реБрдЖ?", "рдХреНрдпреЛрдВ?" рдФрд░, рдпрджрд┐ рд╕рдВрднрд╡ рд╣реЛ, рддреЛ "рдЗрд╕реЗ рдХреИрд╕реЗ рдареАрдХ рдХрд░реЗрдВ?"ред рдпрд╣ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╕рдЪ рд╣реИред
рд▓реЙрдЧрд┐рдВрдЧ рд╕реНрддрд░реЛрдВ рдХреА рдЧреБрдгрд╛рддреНрдордХ рд░рдЪрдирд╛ рдХрд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдореЗрдВ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╣рд╛рдВ рд╣рдо рдХреЗрд╡рд▓ рдорд╛рддреНрд░рд╛рддреНрдордХ рд░рдЪрдирд╛ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ:
- рдЯреНрд░реЗрд╕ - рд╕рдм рдХреБрдЫ рдХрд╛ рдирд┐рд╖реНрдХрд░реНрд╖ред рдпрджрд┐ рдбрд┐рдмрдЧ рддреНрд░реБрдЯрд┐ рдХреЛ рд╕реНрдерд╛рдиреАрдпрдХреГрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИред рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреЗ рдЕрд╡рд░реЛрдзрдХ рдФрд░ рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рдХреЙрд▓ рдХреЛ рдиреЛрдЯ рдХрд░рдирд╛ рдЙрдкрдпреЛрдЧреА рд╣реИред
- рдбреАрдмрдЧ - "рдмрдбрд╝реЗ" рдСрдкрд░реЗрд╢рди рдХреЗ рдХреЙрд▓ рдХреЗ рд▓реЙрдЧрд┐рдВрдЧ рдХреНрд╖рдгред рдкреНрд░рд╡рд╛рд╣, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдЕрдиреБрд░реЛрдз, рдЖрджрд┐ рдХреЛ рд░реЛрдХрдирд╛ / рд╢реБрд░реВ рдХрд░рдирд╛
- рдЬрд╛рдирдХрд╛рд░реА - рдПрдХ рдмрд╛рд░ рдХрд╛ рдСрдкрд░реЗрд╢рди рдЬреЛ рдмрд╣реБрдд рдХрдо рджреЛрд╣рд░рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ рдирд╣реАрдВред (рд▓реЛрдбрд┐рдВрдЧ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди, рдкреНрд▓рдЧ-рдЗрди, рдмреИрдХрдЕрдк рд╢реБрд░реВ рдХрд░рдирд╛)
- рдЪреЗрддрд╛рд╡рдиреА - рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рдХреЙрд▓ рдкреИрд░рд╛рдореАрдЯрд░, рдПрдХ рдЕрдЬреАрдм рдЕрдиреБрд░реЛрдз рдкреНрд░рд╛рд░реВрдк, рдЧрд▓рдд рд▓реЛрдЧреЛрдВ рдХреЗ рдмрджрд▓реЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд╕рдм рдХреБрдЫ рдЬреЛ рдЧреИрд░-рдирд┐рдпрдорд┐рдд рдЙрдкрдпреЛрдЧ рдХрд╛ рд╕рдВрдХреЗрдд рджреЗ рд╕рдХрддрд╛ рд╣реИред
- рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рдзреНрдпрд╛рди рдореЗрдВ рддреНрд░реБрдЯрд┐ - рдПрдХ рдХрд╛рд░рдгред рдпрд╣рд╛рдВ рддреНрд░реБрдЯрд┐ рдХреЗ рдПрдХ рд╡рд┐рд╢реЗрд╖ рд╕реНрдерд╛рди рдХрд╛ рд╡рд╛рддрд╛рд╡рд░рдг рджрд┐рд▓рдЪрд╕реНрдк рд╣реИред
- рдШрд╛рддрдХ - рдпрд╣рд╛рдБ рдФрд░ рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИред рд╣рдо рд╕рдм рдХреБрдЫ рд╣рдо рддрдХ рдкрд╣реБрдБрдЪ рд╕рдХрддреЗ рд╣реИрдВ рдХрдЯреМрддреА, рдХреНрдпреЛрдВрдХрд┐ рдЖрд╡реЗрджрди рдЖрдЧреЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред
рдореБрдХрд╛рдмрд▓рд╛ рддреИрдирд╛рддреА рд╣реИ
рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╡рд┐рдХрд╛рд╕ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рддрдХ рдкрд╣реБрдВрдЪ рдЧрдпрд╛ рд╣реИред
рд╣рдо рд▓реЙрдЧ рд░реЛрдЯреЗрд╢рди, рдлрд╝рд╛рдЗрд▓ рдЖрдХрд╛рд░ рдФрд░ рдЗрддрд┐рд╣рд╛рд╕ рдХреА рдЧрд╣рд░рд╛рдИ рдХреЗ рдореБрджреНрджреЛрдВ рдХреЛ рд╕реНрдердЧрд┐рдд рдХрд░ рджреЗрдВрдЧреЗред рдпрд╣ рдкреНрд░рддреНрдпреЗрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реИ рдФрд░ рд╕реЗрд╡рд╛ рдХреЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдВрдЪрд╛рд▓рди рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдореИрдВ рдХреЗрд╡рд▓ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд╢рдмреНрджрд╛рд░реНрде рд╕рдВрдЧрдарди рдкрд░ рдзреНрдпрд╛рди рдХреЗрдиреНрджреНрд░рд┐рдд рдХрд░реВрдВрдЧрд╛ред рдЙрдиреНрд╣реЗрдВ 3 рд╕рдореВрд╣реЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдореЙрдбреНрдпреВрд▓ рд▓реЙрдЧ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдЕрд▓рдЧ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдм рд╕реЗ рдореИрдВ рдЕрднреА рднреА рдкреНрд░рддреНрдпреЗрдХ рд╕рдореВрд╣ рдХреЗ рд▓рд┐рдП рдПрдХ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реВрдВрдЧрд╛ред
- рдЬрд╛рдирдХрд╛рд░реА рд╕рдореВрд╣, рд╕рднреА рд╕реНрд░реЛрддреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдкрдпреБрдХреНрдд рд╕реНрддрд░ рдХреЗ рд╕рд╛рдеред рдпрд╣ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдХреЗ рд▓рд┐рдП рдЬрд╛рдирдХрд╛рд░реА рд╣реИред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЪреАрдЬреЗрдВ рдпрд╣рд╛рдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ: рдЬрдм рдЖрд╡реЗрджрди рд╢реБрд░реВ рд╣реБрдЖ, рдХреНрдпрд╛ рд╡рд┐рдиреНрдпрд╛рд╕ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдкрдврд╝реЗ рдЧрдП рд╣реИрдВ, рдХреНрдпрд╛ рдЖрд╡рд╢реНрдпрдХ рд╕реЗрд╡рд╛рдПрдВ рдЙрдкрд▓рдмреНрдз рд╣реИрдВ, рдЖрджрд┐ред рдЗрд╕рдХреА рдореБрдЦреНрдп рд╕рдВрдкрддреНрддрд┐: рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЖрдХрд╛рд░ рдХреЗрд╡рд▓ рддрдм рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдкреБрдирдГ рдЖрд░рдВрдн рд╣реЛрддрд╛ рд╣реИред рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ, рдлрд╝рд╛рдЗрд▓ рдирд╣реАрдВ рдмрдврд╝рдиреА рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЙрдиреНрдЪ рдХреА рд╕рдлрд▓рддрд╛ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдмрд╛рд╣рд░реА рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ред рдпрд╣ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреАрд╡рд░реНрдб рддреНрд░реБрдЯрд┐ рдФрд░ рдШрд╛рддрдХ рдХреА рдЕрдиреБрдкрд╕реНрдерд┐рддрд┐ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред рд╕рддреНрдпрд╛рдкрди рд╣рдореЗрд╢рд╛ рдЕрдиреБрдорд╛рдирд┐рдд рд░реВрдк рд╕реЗ рдХрдо рд╕рдордп рд▓реЗрдЧрд╛ред
- рдЪреЗрддрд╛рд╡рдиреА рд╕рдореВрд╣ред рдпрд╣ рднреА рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдХреЗ рд▓рд┐рдП рдЬрд╛рдирдХрд╛рд░реА рд╣реИред рдпрд╣ рдлрд╝рд╛рдЗрд▓ рд╕рд╛рдорд╛рдиреНрдп рдСрдкрд░реЗрд╢рди рдХреЗ рджреМрд░рд╛рди рдЕрдиреБрдкрд╕реНрдерд┐рдд рдпрд╛ рдЦрд╛рд▓реА рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рддрджрдиреБрд╕рд╛рд░, рдЗрд╕рдХреА рд╕реНрдерд┐рддрд┐ рдХреА рдирд┐рдЧрд░рд╛рдиреА рддреБрд░рдВрдд рдПрдХ рдЦрд░рд╛рдмреА рдХрд╛ рд╕рдВрдХреЗрдд рджреЗрдЧреАред рд╡рд┐рднрд┐рдиреНрди рд╕реНрд░реЛрддреЛрдВ рдХреЗ рд▓рд┐рдП рд▓рдЪреАрд▓реЗ рдврдВрдЧ рд╕реЗ рдлрд┐рд▓реНрдЯрд░ рдХреЛ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░рдХреЗ, рдЖрдк рддрдм рдХрд╛рдлреА рд╕рдЯреАрдХ рдорд╛рдирджрдВрдб рдЪреБрди рд╕рдХрддреЗ рд╣реИрдВ рдЬрдм рдЖрдкрдХреЛ рдЖрдорддреМрд░ рдкрд░ рд╕реЗрд╡рд╛ рдкрд░ рдзреНрдпрд╛рди рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдПред
- рд╕рдореВрд╣ рдЕрд╡рд▓реЛрдХрди ред рдПрдХ рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ, рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рджреМрд░рд╛рди рдХреБрдЫ рд╕рдорд╕реНрдпрд╛ рдореЙрдбреНрдпреВрд▓ рдЙрдЬрд╛рдЧрд░ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдбрд┐рдмрдЧ рдбреНрд░рд┐рд▓ рдореЗрдВ рдЙрдирд╕реЗ рдЬрд╛рдирдХрд╛рд░реА рдпрд╣рд╛рдВ рднреЗрдЬреА рдЬрд╛рддреА рд╣реИред
рдпрджрд┐ рдЖрд╡реЗрджрди рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдХреЗрд╡рд▓ рдкрд╣рд▓реЗ рджреЛ рд╕рдореВрд╣ рд╕рдВрдЪрд╛рд▓рди рдореЗрдВ рд░рд╣рддреЗ рд╣реИрдВред
рдХреНрд░реИрд╢ рдЬрд╛рдВрдЪ
рдЬрдм рдХреЛрдИ рд░рдирд┐рдВрдЧ рд╕реЗрд╡рд╛ рдХрд┐рд╕реА рддреНрд░реБрдЯрд┐ рдХреЗ рд▓рдХреНрд╖рдг рджрд┐рдЦрд╛рддреА рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдЗрд╕реЗ рддреБрд░рдВрдд рдкреБрдирд░рд╛рд░рдВрдн рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╢рд╛рдпрдж рд╣рдо рдЧрд▓рдд рдереНрд░реЗрдб рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬрд╝реЗрд╢рди рд╕реЗ рдЬреБрдбрд╝реА рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдкрдХрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП "рднрд╛рдЧреНрдпрд╢рд╛рд▓реА" рд╣реИрдВред рдФрд░ рдпрд╣ рдкрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЕрдЧрд▓реА рдмрд╛рд░ рдЗрд╕рдХреА рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рдХреЗ рд▓рд┐рдП рдХрд┐рддрдирд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЖрдкрдХреЛ рдирд┐рдЧрд░рд╛рдиреА рд╕рдореВрд╣ рдХреЗ рд▓рд┐рдП рдкреВрд░реНрд╡-рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрдиреЗрдХреНрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рд╡рд╣ рд╣реИ рдЬрд┐рд╕реЗ рдПрдХ рд╕рднреНрдп рд▓рдХрдбрд╝рд╣рд╛рд░рд╛ рдмрдирд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреА рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдПред рдЬрдм рд╣рдореЗрдВ рдкреБрд╖реНрдЯрд┐ рдорд┐рд▓реА рдХрд┐ рдирдпрд╛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рд╣рдо рдлрд┐рд░ рд╕реЗ рд╡рд┐рдлрд▓рддрд╛ рдХреЛ рднрдбрд╝рдХрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдпрд╣ рдХрдИ рдмрд╛рд░ рд╡рд╛рдВрдЫрдиреАрдп рд╣реИред рдпрд╣ "рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛" рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдЗрд╕рдХреЗ рдкреНрд░рдЬрдирди рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд╡рд╕рд░ рдкреНрд░рджрд╛рди рдХрд░реЗрдЧрд╛ред рдЕрдЧрд▓рд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХрд╛ рдХрд╛рдо рд╣реИред рдЗрд╕ рдмреАрдЪ, рдЖрдк рд░рд┐рдмреВрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рд▓реЙрдЧ рдПрд╕рд┐рдВрдХреНрд░реЛрдирд╕ рдХреЗ рд▓рд┐рдП рдЖрдЙрдЯрдкреБрдЯ рдмрдирд╛рдирд╛ рд╡рд╛рдВрдЫрдиреАрдп рд╣реИред
рдЙрджрд╛рд╣рд░рдг, рдореБрдХрд╛рдмрд▓рд╛ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ред
<nlog autoReload = "true" > <br/>
<targets > <br/>
<target name = "fileInfo" type = "AsyncWrapper" queueLimit = "5000" overflowAction = "Block" > <br/>
<target type = "File" fileName = "${basedir}/logs/info.log" /> <br/>
</target > <br/>
<target name = "fileWarn" type = "AsyncWrapper" queueLimit = "5000" overflowAction = "Block" > <br/>
<target type = "File" fileName = "${basedir}/logs/warn.log" /> <br/>
</target > <br/>
</targets > <br/>
<br/>
<rules > <br/>
<logger name = "*" minlevel = "Info" writeTo = "fileInfo" /> <br/>
<logger name = "*" minlevel = "Warn" writeTo = "fileWarn" /> <br/>
</rules > <br/>
</nlog >
<nlog autoReload = "true" > <br/>
<targets > <br/>
<target name = "fileInfo" type = "AsyncWrapper" queueLimit = "5000" overflowAction = "Block" > <br/>
<target type = "File" fileName = "${basedir}/logs/info.log" /> <br/>
</target > <br/>
<target name = "fileWarn" type = "AsyncWrapper" queueLimit = "5000" overflowAction = "Block" > <br/>
<target type = "File" fileName = "${basedir}/logs/warn.log" /> <br/>
</target > <br/>
</targets > <br/>
<br/>
<rules > <br/>
<logger name = "*" minlevel = "Info" writeTo = "fileInfo" /> <br/>
<logger name = "*" minlevel = "Warn" writeTo = "fileWarn" /> <br/>
</rules > <br/>
</nlog >
рдлрд┐рд▓реНрдЯрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╕рдордп, рдкреНрд░рддреНрдпреЗрдХ рдХреЛ рд╕рдмрд╕рд┐рд╕реНрдЯрдо рдХреЗ рд▓рд┐рдП рд▓реЙрдЧрд┐рдВрдЧ рд╕реНрддрд░реЛрдВ рдХреА рд╕рд╛рдкреЗрдХреНрд╖рддрд╛ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреБрдЫ рдореЙрдбреНрдпреВрд▓, рдЬрд┐рд╕рдореЗрдВ рдПрдХ
рд╕реВрдЪрдирд╛ рдкреНрд░рд╛рд░рдВрдн рд╕рдВрджреЗрд╢ рд╣реИ, рдкреНрд░рддреНрдпреЗрдХ рдЬреБрдбрд╝реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдмреЗрд╢рдХ,
рдЗрдВрдлреЛ рдЧреНрд░реБрдк рдХреЛ рдЗрд╕рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ
рд╡рд╛рд░реНрди рд▓реЗрд╡рд▓ рддрдХ рд╕реАрдорд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
рд▓рдХрдбрд╝рд╣рд╛рд░реЗ рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП
рд▓рдХрдбрд╝рд╣рд╛рд░рд╛ рд╣рдереМрдбрд╝реЗ рдХреА рддрд░рд╣ рд╕рд░рд▓ рдФрд░ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдФрд░ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЙрд╕рдХреЗ рджрд╛рдпрд░реЗ рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдЕрдХреНрд╕рд░ рд░рдЦрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛрддрд╛ рд╣реИред рдбрд┐рдЬрд╛рдЗрди рдкреИрдЯрд░реНрди, рдпрд╣ рдЬреНрдпрд╛рджрд╛рддрд░ рдЙрдкрдпреЛрдЧреА рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдирд╣реАрдВред рдХрд╛рдлреА рдмрд╛рд░, рдореИрдВрдиреЗ рд▓рдХрдбрд╝рд╣рд╛рд░рд╛ (
рдЙрджрд╛рд╣рд░рдг ) рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╛рдорд╛рдиреНрдпреАрдХреГрдд рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рд╕реНрддрд╛рд╡реЛрдВ рдХреЛ рдиреЛрдЯрд┐рд╕ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ рдпрд╛ рдмрд╛рдж рдореЗрдВ NLog рдмрдирд╛рдо log4net рдХреЛ рдЪреБрдирдиреЗ рдХреЗ рдХрд╖реНрдЯреЛрдВ рдХреЛ рд╕реНрдердЧрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдПрдХ рдЖрд╡рд░рдг рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ред
рдХрд╛рд░рдг рдЬреЛ рднреА рд╣реЛ, рд╣рдореЗрдВ рдпрд╣ рдпрд╛рдж рд░рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдкрд╣рд▓реА рдЬрдЧрд╣ рдореЗрдВ, рдРрд╕реА рд╕реБрд╡рд┐рдзрд╛рдПрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЛ рдЕрдиреБрдХреВрд▓рди рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреЛ рдорд╛рд░ рджреЗрддреА рд╣реИрдВред
рдлрд╝рд┐рд▓реНрдЯрд░ рдХреЗ рд╕рд╛рде рднреА, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рд╕реАрдзреЗ рд▓рдХрдбрд╝рд╣рд╛рд░рд╛ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИред рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдЬрд╛рдирдХрд╛рд░реА рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреА рдЖрдВрддрд░рд┐рдХ рд╕рдВрд░рдЪрдирд╛ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреА рд╣реИред рдпрд╣ рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдк рд░рд┐рдлреИрдХреНрдЯрд░рд┐рдВрдЧ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рд▓рдХрдбрд╝рд╣рд╛рд░рд╛ рдХреЗ рдЙрддреНрдкрд╛рджрди рдХреЛ рдмрдЪрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рд╢рд╛рдпрдж, рдпрд╣ рд╕рд┐рд░реНрдл рд╕реЛрдЪрдиреЗ рдФрд░ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд╛рдпрдХ рд╣реИред рд╢рд╛рдпрдж рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдХреЗрд╡рд▓ рд▓реЙрдЧрд┐рдВрдЧ рдХреЗ рджреВрд╕рд░реЗ рд╕реНрддрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рд▓рдХрдбрд╝рд╣рд╛рд░рд╛ рдХреЗ рдКрдкрд░ рд░реИрдкрд░ рд╕рд┐рд░реНрдл рд╕рд╣реА рдЪреАрдЬ рд╣реЛрдЧреАред
рдореБрдЭреЗ NLog рд╕реЗ рдХреНрдпрд╛ рдпрд╛рдж рдЖ рд░рд╣рд╛ рд╣реИ?
- рд▓рдВрдмрд░ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреА рдХрдХреНрд╖рд╛рдПрдВ рдмрдирд╛рдиреЗ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдХрдбрд╝рд╣рд╛рд░рд╛ рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдЕрддрд┐рд░рд┐рдХреНрдд рдЕрдзрд┐рднрд╛рд░ ред рдореИрдВ рдлреЙрд░реНрдо рдХреА рдХреЙрд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ
рд▓реЙрдЧ.рдЯреНрд░реЗрд╕ <TArg1, TArg2> (рдлрдВрдХ <TArg1, TArg2, string> messageCustrator, TArg1 arg1, TArg2 arg2)
рд▓реЗрдХрд┐рди рдЗрд╕ рд╕рдордп, рд╕рдмрд╕реЗ рдЫреЛрдЯреЗ рдорд╛рдирд╡ рдкрдардиреАрдп рд╡рд┐рдХрд▓реНрдк рдореЗрдВ рдЫрд┐рдкреА рд╣реБрдИ рдХрдХреНрд╖рд╛ рдкреАрдврд╝реА рд╢рд╛рдорд┐рд▓ рд╣реИ:
Log.Trace () => MessageCreate (arg1, arg2)) - рдмрд╛рдЗрдирд░реА рд╕рдВрдЧрддрддрд╛ рд╡рд┐рднрд┐рдиреНрди рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдореЛрдВ рдкрд░ рд╕реЗрд╡рд╛рдУрдВ рдХрд╛ рддреНрд╡рд░рд┐рдд рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИред NLog рдореЗрдВ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдмрд╣реБрдд рд╕рд╛рд░реЗ рд╕рд╢рд░реНрдд рд╕рдВрдХрд▓рди рдирд┐рд░реНрджреЗрд╢ рд╣реИрдВред рдпрд╛рдиреА рдореЛрдиреЛ рдХреЗ рд▓рд┐рдП рдмрд╛рдЗрдирд░реА рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд░реВрдк рд╕реЗ рдбреЙрдЯрдиреЗрдЯ рдореЗрдВ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рдПрдХ рд╕реАрдорд┐рдд рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рднрд▓реЗ рд╣реА рднрд╡рд┐рд╖реНрдпрд╡рд╛рдгреА рдХрд░рдирд╛ рдмрд╣реБрдд рд╡рд╛рдВрдЫрдиреАрдп рд╣реЛред
- рд╕рд╢рд░реНрдд рд╡рд┐рд╕реНрддрд╛рд░ред рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рджреНрд╡рд┐рдЖрдзрд╛рд░реА рд╕рдВрдЧрддрддрд╛ рдХреЗ рд╕рд╛рде рдЖрдкрдХреЛ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХрд╛ рддреНрдпрд╛рдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╡рд┐рд╕реНрддрд╛рд░ рддрдВрддреНрд░ рд╣реИред рдЬреЛ рдХреБрдЫ рднреА рд╢реЗрд╖ рд╣реИ, рд╡рд╣ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХреЛ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИред рдкрд┐рдЫрд▓реА рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЗ рд╕рд╛рде, рдпрд╣ IL-binaries рдХреЗ рд╕рд╛рде рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдХрд░ рдПрдХ рд╕рд░рд▓ рдкрд░рд┐рдирд┐рдпреЛрдЬрди рднреА рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред
- рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд╕рдВрджрд░реНрдн рдореЗрдВ рдЖрдВрддрд░рд┐рдХ рд╕рдВрджреЗрд╢ рд▓реЙрдЧ рдХрд░рдирд╛ред рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдмрдирд╛рдИ рдЧрдИ рд▓реЙрдЧрд░реНрд╕ рдХреА рдПрдХ рд╕реВрдЪреА рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧреАред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рд╕реЗ рдмрдЪрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЬрдм рдХрд┐рд╕реА рдлрд╛рдЗрд▓ рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ рдЕрдкрдиреЗ рдЖрдк рдЖрдЙрдЯрдкреБрдЯ рдПрд░рд░реНрд╕ рд▓рд┐рдЦрдирд╛ рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИред
NLog, Log4Net, рдПрдВрдЯрд░рдкреНрд░рд╛рдЗрдЬ рд▓рд╛рдЗрдмреНрд░реЗрд░реА, рд╕реНрдорд╛рд░реНрдЯрдЗрдВрд╕реНрдкреЗрдХреНрдЯ ...
рдЖрдкрд╕ рдореЗрдВ рд▓рдХрдбрд╝рд╣рд╛рд░реЗ рдХреА рд╡рд┐рднрд┐рдиреНрди рддреБрд▓рдирд╛рдПрдВ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╡рд┐рд╡рд░рдг рдХреЛ рдпрд╛рдж рдХрд░рддреА рд╣реИрдВред
рди рдХреЗрд╡рд▓ рд╕реАрдорд╛рдУрдВ / рдЕрд╡рд╕рд░реЛрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░рдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рдмрд▓реНрдХрд┐ рдЕрдкрдиреА рдЗрдЪреНрдЫрд╛ рд╕реВрдЪреА рдХреЛ рдЬрд▓реНрджреА рд╕реЗ рдЬреЛрдбрд╝рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рднреА рд╣реИред
рдЗрд╕рд▓рд┐рдП, рдореИрдВ рдЕрднреА рдХреЗ рд▓рд┐рдП NLog рдХреЗ рд╕рд╛рде рджреЛрд╕реНрдд рдмрдиреВрдВрдЧрд╛ред
рдореИрдВ рддреБрдореНрд╣реЗрдВ рдХреНрдпрд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдБ?