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
|
||||
{
|
||||
private readonly InquiryService _inquiryService;
|
||||
private readonly ILogger<ContactModel> _logger;
|
||||
|
||||
[BindProperty]
|
||||
public string Name { get; set; } = "";
|
||||
@@ -26,35 +27,45 @@ public class ContactModel : PageModel
|
||||
[BindProperty]
|
||||
public bool Agree { get; set; }
|
||||
|
||||
public ContactModel(InquiryService inquiryService)
|
||||
public ContactModel(InquiryService inquiryService, ILogger<ContactModel> logger)
|
||||
{
|
||||
_inquiryService = inquiryService;
|
||||
_logger = logger;
|
||||
}
|
||||
|
||||
public async Task<IActionResult> OnPostAsync()
|
||||
{
|
||||
_logger.LogInformation("[Contact] POST 요청 시작: Name={Name}, Phone={Phone}, Service={Service}", Name, Phone, ServiceType);
|
||||
|
||||
if (!ModelState.IsValid || !Agree)
|
||||
{
|
||||
_logger.LogWarning("[Contact] 유효성 검사 실패 또는 동의 미체크");
|
||||
return Page();
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
await _inquiryService.SubmitAsync(
|
||||
_logger.LogInformation("[Contact] SubmitAsync 호출 전");
|
||||
var inquiryId = await _inquiryService.SubmitAsync(
|
||||
Name,
|
||||
Phone,
|
||||
ServiceType,
|
||||
Message,
|
||||
Email,
|
||||
HttpContext.Connection.RemoteIpAddress?.ToString());
|
||||
_logger.LogInformation("[Contact] SubmitAsync 완료: InquiryId={Id}", inquiryId);
|
||||
TempData["Success"] = "상담 신청이 접수되었습니다. 빠른 시간 내에 연락드리겠습니다.";
|
||||
return RedirectToPage();
|
||||
}
|
||||
catch (ValidationException ex)
|
||||
{
|
||||
_logger.LogWarning(ex, "[Contact] 유효성 검사 오류: {Message}", ex.Message);
|
||||
ModelState.AddModelError("", ex.Message);
|
||||
return Page();
|
||||
}
|
||||
catch
|
||||
catch (Exception ex)
|
||||
{
|
||||
_logger.LogError(ex, "[Contact] 예외 발생");
|
||||
ModelState.AddModelError("", "시스템 오류가 발생했습니다. 잠시 후 다시 시도해주세요.");
|
||||
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)
|
||||
{
|
||||
_logger.LogInformation("[Telegram] NotifyCreatedAsync 시작: InquiryId={Id}, Name={Name}", inquiryId, name);
|
||||
|
||||
var botToken = _configuration["Telegram:BotToken"];
|
||||
var chatId = _configuration["Telegram:InquiryChatId"];
|
||||
if (string.IsNullOrWhiteSpace(chatId))
|
||||
chatId = _configuration["Telegram:ChatId"];
|
||||
|
||||
_logger.LogInformation("[Telegram] 설정 확인: BotToken={Token}, ChatId={ChatId}",
|
||||
string.IsNullOrWhiteSpace(botToken) ? "없음" : "있음", chatId);
|
||||
|
||||
if (string.IsNullOrWhiteSpace(botToken) || string.IsNullOrWhiteSpace(chatId))
|
||||
{
|
||||
_logger.LogWarning("텔레그램 새 문의 알림 설정이 누락되었습니다. Telegram:BotToken 또는 Telegram:InquiryChatId/ChatId를 확인하세요.");
|
||||
|
||||
Reference in New Issue
Block a user