debug: add detailed logging for Telegram inquiry notifications
TaxBaik CI/CD / build-and-deploy (push) Successful in 1m27s
TaxBaik CI/CD / build-and-deploy (push) Successful in 1m27s
- Add debug logging to Contact page form handler - Add detailed logging to TelegramInquiryNotificationService - Track inquiry submission and notification flow Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -7,6 +7,7 @@ namespace TaxBaik.Web.Pages;
|
|||||||
public class ContactModel : PageModel
|
public class ContactModel : PageModel
|
||||||
{
|
{
|
||||||
private readonly InquiryService _inquiryService;
|
private readonly InquiryService _inquiryService;
|
||||||
|
private readonly ILogger<ContactModel> _logger;
|
||||||
|
|
||||||
[BindProperty]
|
[BindProperty]
|
||||||
public string Name { get; set; } = "";
|
public string Name { get; set; } = "";
|
||||||
@@ -26,35 +27,45 @@ public class ContactModel : PageModel
|
|||||||
[BindProperty]
|
[BindProperty]
|
||||||
public bool Agree { get; set; }
|
public bool Agree { get; set; }
|
||||||
|
|
||||||
public ContactModel(InquiryService inquiryService)
|
public ContactModel(InquiryService inquiryService, ILogger<ContactModel> logger)
|
||||||
{
|
{
|
||||||
_inquiryService = inquiryService;
|
_inquiryService = inquiryService;
|
||||||
|
_logger = logger;
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<IActionResult> OnPostAsync()
|
public async Task<IActionResult> OnPostAsync()
|
||||||
{
|
{
|
||||||
|
_logger.LogInformation("[Contact] POST 요청 시작: Name={Name}, Phone={Phone}, Service={Service}", Name, Phone, ServiceType);
|
||||||
|
|
||||||
if (!ModelState.IsValid || !Agree)
|
if (!ModelState.IsValid || !Agree)
|
||||||
|
{
|
||||||
|
_logger.LogWarning("[Contact] 유효성 검사 실패 또는 동의 미체크");
|
||||||
return Page();
|
return Page();
|
||||||
|
}
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
await _inquiryService.SubmitAsync(
|
_logger.LogInformation("[Contact] SubmitAsync 호출 전");
|
||||||
|
var inquiryId = await _inquiryService.SubmitAsync(
|
||||||
Name,
|
Name,
|
||||||
Phone,
|
Phone,
|
||||||
ServiceType,
|
ServiceType,
|
||||||
Message,
|
Message,
|
||||||
Email,
|
Email,
|
||||||
HttpContext.Connection.RemoteIpAddress?.ToString());
|
HttpContext.Connection.RemoteIpAddress?.ToString());
|
||||||
|
_logger.LogInformation("[Contact] SubmitAsync 완료: InquiryId={Id}", inquiryId);
|
||||||
TempData["Success"] = "상담 신청이 접수되었습니다. 빠른 시간 내에 연락드리겠습니다.";
|
TempData["Success"] = "상담 신청이 접수되었습니다. 빠른 시간 내에 연락드리겠습니다.";
|
||||||
return RedirectToPage();
|
return RedirectToPage();
|
||||||
}
|
}
|
||||||
catch (ValidationException ex)
|
catch (ValidationException ex)
|
||||||
{
|
{
|
||||||
|
_logger.LogWarning(ex, "[Contact] 유효성 검사 오류: {Message}", ex.Message);
|
||||||
ModelState.AddModelError("", ex.Message);
|
ModelState.AddModelError("", ex.Message);
|
||||||
return Page();
|
return Page();
|
||||||
}
|
}
|
||||||
catch
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
|
_logger.LogError(ex, "[Contact] 예외 발생");
|
||||||
ModelState.AddModelError("", "시스템 오류가 발생했습니다. 잠시 후 다시 시도해주세요.");
|
ModelState.AddModelError("", "시스템 오류가 발생했습니다. 잠시 후 다시 시도해주세요.");
|
||||||
return Page();
|
return Page();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -22,10 +22,16 @@ public class TelegramInquiryNotificationService : IInquiryNotificationService
|
|||||||
|
|
||||||
public async Task NotifyCreatedAsync(int inquiryId, string name, string phone, string serviceType, string message, string? ipAddress, DateTime createdAtUtc, CancellationToken ct = default)
|
public async Task NotifyCreatedAsync(int inquiryId, string name, string phone, string serviceType, string message, string? ipAddress, DateTime createdAtUtc, CancellationToken ct = default)
|
||||||
{
|
{
|
||||||
|
_logger.LogInformation("[Telegram] NotifyCreatedAsync 시작: InquiryId={Id}, Name={Name}", inquiryId, name);
|
||||||
|
|
||||||
var botToken = _configuration["Telegram:BotToken"];
|
var botToken = _configuration["Telegram:BotToken"];
|
||||||
var chatId = _configuration["Telegram:InquiryChatId"];
|
var chatId = _configuration["Telegram:InquiryChatId"];
|
||||||
if (string.IsNullOrWhiteSpace(chatId))
|
if (string.IsNullOrWhiteSpace(chatId))
|
||||||
chatId = _configuration["Telegram:ChatId"];
|
chatId = _configuration["Telegram:ChatId"];
|
||||||
|
|
||||||
|
_logger.LogInformation("[Telegram] 설정 확인: BotToken={Token}, ChatId={ChatId}",
|
||||||
|
string.IsNullOrWhiteSpace(botToken) ? "없음" : "있음", chatId);
|
||||||
|
|
||||||
if (string.IsNullOrWhiteSpace(botToken) || string.IsNullOrWhiteSpace(chatId))
|
if (string.IsNullOrWhiteSpace(botToken) || string.IsNullOrWhiteSpace(chatId))
|
||||||
{
|
{
|
||||||
_logger.LogWarning("텔레그램 새 문의 알림 설정이 누락되었습니다. Telegram:BotToken 또는 Telegram:InquiryChatId/ChatId를 확인하세요.");
|
_logger.LogWarning("텔레그램 새 문의 알림 설정이 누락되었습니다. Telegram:BotToken 또는 Telegram:InquiryChatId/ChatId를 확인하세요.");
|
||||||
|
|||||||
Reference in New Issue
Block a user