[2026-03-30 14:31:51] SingleArticleApply fetch_failed url=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products effective_url=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products status=403
[2026-03-30 14:32:20] SingleArticleApply fetch_failed url=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products effective_url=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products status=403
[2026-03-30 14:40:55] SingleArticleApply fetch_method_used method=ArticleScraper::fetchUrl url=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products response_length=0
[2026-03-30 14:47:26] SingleArticleApply fetch_method_used method=ArticleScraper::fetchUrl url=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products path=ajax/finalize-article.php -> ArticleScraper::getCleanArticleText -> ArticleScraper::fetchHtml
[2026-03-30 14:47:26] SingleArticleApply fetch_result url=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products response_length=0
[2026-03-30 14:47:29] SingleArticleApply fetch_method_used method=ArticleScraper::fetchUrl url=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products path=ajax/finalize-article.php -> ArticleScraper::getCleanArticleText -> ArticleScraper::fetchHtml
[2026-03-30 14:47:30] SingleArticleApply fetch_result url=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products response_length=0
[2026-03-30 15:05:46] [SINGLE_APPLY] request_started
[2026-03-30 15:05:46] [SINGLE_APPLY] input_url=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products
[2026-03-30 15:05:46] [SINGLE_APPLY] start url=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products
[2026-03-30 15:05:46] [SINGLE_APPLY] using method=ArticleScraper::fetchUrl
[2026-03-30 15:05:46] [SINGLE_APPLY] html_returned=no
[2026-03-30 15:05:46] [SINGLE_APPLY] html_length=0
[2026-03-30 15:06:10] [SINGLE_APPLY] request_started
[2026-03-30 15:06:10] [SINGLE_APPLY] input_url=https://edition.cnn.com/2026/03/26/health/medical-school-admissions-investigation
[2026-03-30 15:06:10] [SINGLE_APPLY] start url=https://edition.cnn.com/2026/03/26/health/medical-school-admissions-investigation
[2026-03-30 15:06:10] [SINGLE_APPLY] using method=ArticleScraper::fetchUrl
[2026-03-30 15:06:10] [SINGLE_APPLY] html_returned=yes
[2026-03-30 15:06:10] [SINGLE_APPLY] html_length=3708875
[2026-03-30 15:06:10] [SINGLE_APPLY] title_extraction=started
[2026-03-30 15:06:10] [SINGLE_APPLY] title_found=yes
[2026-03-30 15:06:10] SingleArticleApply title_extracted url=https://edition.cnn.com/2026/03/26/health/medical-school-admissions-investigation title_length=92
[2026-03-30 15:10:21] [SINGLE_APPLY] request_started
[2026-03-30 15:10:21] [SINGLE_APPLY] input_url=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products
[2026-03-30 15:10:21] [SINGLE_APPLY] start url=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products
[2026-03-30 15:10:21] [SINGLE_APPLY] source_validation=skipped
[2026-03-30 15:10:21] [SINGLE_APPLY] using method=ArticleScraper::fetchUrl
[2026-03-30 15:10:21] [SINGLE_APPLY] html_returned=no
[2026-03-30 15:10:21] [SINGLE_APPLY] html_length=0
[2026-03-30 15:18:51] [SINGLE_APPLY] endpoint_started
[2026-03-30 15:18:51] [SINGLE_APPLY] auth_passed
[2026-03-30 15:18:51] [SINGLE_APPLY] method_passed
[2026-03-30 15:18:51] [SINGLE_APPLY] request_started
[2026-03-30 15:18:51] [SINGLE_APPLY] input_url=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products
[2026-03-30 15:18:51] [SINGLE_APPLY] service_called
[2026-03-30 15:18:51] [SINGLE_APPLY] start
[2026-03-30 15:18:51] [SINGLE_APPLY] url_received=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products
[2026-03-30 15:18:51] [SINGLE_APPLY] validation_passed
[2026-03-30 15:18:51] [SINGLE_APPLY] source_validation=skipped
[2026-03-30 15:18:51] [SINGLE_APPLY] duplicate_check_passed
[2026-03-30 15:18:51] [SINGLE_APPLY] fetch_started
[2026-03-30 15:18:51] [SINGLE_APPLY] using method=ArticleScraper::fetchUrl
[2026-03-30 15:18:51] [SINGLE_APPLY] html_returned=no
[2026-03-30 15:18:51] [SINGLE_APPLY] html_length=0
[2026-03-30 15:18:51] [SINGLE_APPLY] fetch_failed
[2026-03-30 15:18:51] [SINGLE_APPLY] service_completed success=no message=Failed to fetch article HTML
[2026-03-30 15:18:56] [SINGLE_APPLY] endpoint_started
[2026-03-30 15:18:56] [SINGLE_APPLY] auth_passed
[2026-03-30 15:18:56] [SINGLE_APPLY] method_passed
[2026-03-30 15:18:56] [SINGLE_APPLY] request_started
[2026-03-30 15:18:56] [SINGLE_APPLY] input_url=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products
[2026-03-30 15:18:56] [SINGLE_APPLY] service_called
[2026-03-30 15:18:56] [SINGLE_APPLY] start
[2026-03-30 15:18:56] [SINGLE_APPLY] url_received=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products
[2026-03-30 15:18:56] [SINGLE_APPLY] validation_passed
[2026-03-30 15:18:56] [SINGLE_APPLY] source_validation=skipped
[2026-03-30 15:18:56] [SINGLE_APPLY] duplicate_check_passed
[2026-03-30 15:18:56] [SINGLE_APPLY] fetch_started
[2026-03-30 15:18:56] [SINGLE_APPLY] using method=ArticleScraper::fetchUrl
[2026-03-30 15:18:56] [SINGLE_APPLY] html_returned=no
[2026-03-30 15:18:56] [SINGLE_APPLY] html_length=0
[2026-03-30 15:18:56] [SINGLE_APPLY] fetch_failed
[2026-03-30 15:18:56] [SINGLE_APPLY] service_completed success=no message=Failed to fetch article HTML
[2026-03-30 15:22:17] [SINGLE_APPLY] endpoint_started
[2026-03-30 15:22:17] [SINGLE_APPLY] auth_passed
[2026-03-30 15:22:17] [SINGLE_APPLY] method_passed
[2026-03-30 15:22:17] [SINGLE_APPLY] request_started
[2026-03-30 15:22:17] [SINGLE_APPLY] input_url=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products
[2026-03-30 15:22:17] [SINGLE_APPLY] service_called
[2026-03-30 15:22:17] [SINGLE_APPLY] start
[2026-03-30 15:22:17] [SINGLE_APPLY] url_received=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products
[2026-03-30 15:22:17] [SINGLE_APPLY] validation_passed
[2026-03-30 15:22:17] [SINGLE_APPLY] source_validation=skipped
[2026-03-30 15:22:17] [SINGLE_APPLY] duplicate_check_passed
[2026-03-30 15:22:17] [SINGLE_APPLY] fetch_started
[2026-03-30 15:22:17] [SINGLE_APPLY] using method=SourceFetcher::fetch
[2026-03-30 15:22:17] SingleArticleApply fetch_failed url=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products message=file_get_contents(https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products): Failed to open stream: no suitable wrapper could be found
[2026-03-30 15:22:17] [SINGLE_APPLY] html_returned=no
[2026-03-30 15:22:17] [SINGLE_APPLY] html_length=0
[2026-03-30 15:22:17] [SINGLE_APPLY] fetch_failed
[2026-03-30 15:22:17] [SINGLE_APPLY] service_completed success=no message=Failed to fetch article HTML
[2026-03-30 15:31:07] [SINGLE_APPLY] endpoint_started
[2026-03-30 15:31:07] [SINGLE_APPLY] auth_passed
[2026-03-30 15:31:07] [SINGLE_APPLY] method_passed
[2026-03-30 15:31:07] [SINGLE_APPLY] request_started
[2026-03-30 15:31:07] [SINGLE_APPLY] input_url=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products
[2026-03-30 15:31:07] [SINGLE_APPLY] service_called
[2026-03-30 15:31:07] [SINGLE_APPLY] start
[2026-03-30 15:31:07] [SINGLE_APPLY] url_received=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products
[2026-03-30 15:31:07] [SINGLE_APPLY] validation_passed
[2026-03-30 15:31:07] [SINGLE_APPLY] source_validation=skipped
[2026-03-30 15:31:07] [SINGLE_APPLY] duplicate_check_passed
[2026-03-30 15:31:07] [SINGLE_APPLY] fetch_started
[2026-03-30 15:31:07] [SINGLE_APPLY] using method=ArticleScraper::fetchUrl
[2026-03-30 15:31:07] [SINGLE_APPLY] html_returned=no
[2026-03-30 15:31:07] [SINGLE_APPLY] html_length=0
[2026-03-30 15:31:07] [SINGLE_APPLY] fetch_failed
[2026-03-30 15:31:07] [SINGLE_APPLY] service_completed success=no message=Failed to fetch article HTML
[2026-03-30 15:40:15] [SINGLE_APPLY] endpoint_started
[2026-03-30 15:40:15] [SINGLE_APPLY] auth_passed
[2026-03-30 15:40:15] [SINGLE_APPLY] method_passed
[2026-03-30 15:40:15] [SINGLE_APPLY] request_started
[2026-03-30 15:40:15] [SINGLE_APPLY] input_url=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products
[2026-03-30 15:40:15] [SINGLE_APPLY] service_called
[2026-03-30 15:40:15] [SINGLE_APPLY] start
[2026-03-30 15:40:15] [SINGLE_APPLY] url_received=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products
[2026-03-30 15:40:15] [SINGLE_APPLY] validation_passed
[2026-03-30 15:40:15] [SINGLE_APPLY] source_validation=skipped
[2026-03-30 15:40:15] [SINGLE_APPLY] duplicate_check_passed
[2026-03-30 15:40:15] [SINGLE_APPLY] fetch_started
[2026-03-30 15:40:15] [SINGLE_APPLY] using method=ArticleScraper::fetchRawHtml
[2026-03-30 15:40:15] [SINGLE_APPLY] html_returned=no
[2026-03-30 15:40:15] [SINGLE_APPLY] html_length=0
[2026-03-30 15:40:15] [SINGLE_APPLY] fetch_failed
[2026-03-30 15:40:15] [SINGLE_APPLY] service_completed success=no message=Failed to fetch article HTML
[2026-03-30 15:45:33] [SINGLE_APPLY] endpoint_started
[2026-03-30 15:45:33] [SINGLE_APPLY] auth_passed
[2026-03-30 15:45:33] [SINGLE_APPLY] method_passed
[2026-03-30 15:45:33] [SINGLE_APPLY] request_started
[2026-03-30 15:45:33] [SINGLE_APPLY] input_url=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products
[2026-03-30 15:45:33] [SINGLE_APPLY] service_called
[2026-03-30 15:45:33] [SINGLE_APPLY] start
[2026-03-30 15:45:33] [SINGLE_APPLY] url_received=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products
[2026-03-30 15:45:33] [SINGLE_APPLY] validation_passed
[2026-03-30 15:45:33] [SINGLE_APPLY] source_validation=skipped
[2026-03-30 15:45:33] [SINGLE_APPLY] duplicate_check_passed
[2026-03-30 15:45:33] [SINGLE_APPLY] fetch_started
[2026-03-30 15:45:33] [SINGLE_APPLY] using method=ArticleScraper::fetchRawHtml
[2026-03-30 15:45:33] [SINGLE_APPLY] html_returned=no
[2026-03-30 15:45:33] [SINGLE_APPLY] html_length=0
[2026-03-30 15:45:33] [SINGLE_APPLY] fetch_failed
[2026-03-30 15:45:33] [SINGLE_APPLY] service_completed success=no message=Failed to fetch article HTML
[2026-03-30 15:52:10] [SINGLE_APPLY] endpoint_started
[2026-03-30 15:52:10] [SINGLE_APPLY] auth_passed
[2026-03-30 15:52:10] [SINGLE_APPLY] method_passed
[2026-03-30 15:52:10] [SINGLE_APPLY] request_started
[2026-03-30 15:52:10] [SINGLE_APPLY] input_url=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products
[2026-03-30 15:52:10] [SINGLE_APPLY] manual_title_provided=no
[2026-03-30 15:52:10] [SINGLE_APPLY] service_called
[2026-03-30 15:52:10] [SINGLE_APPLY] start
[2026-03-30 15:52:10] [SINGLE_APPLY] url_received=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products
[2026-03-30 15:52:10] [SINGLE_APPLY] validation_passed
[2026-03-30 15:52:10] [SINGLE_APPLY] source_validation=skipped
[2026-03-30 15:52:10] [SINGLE_APPLY] duplicate_check_passed
[2026-03-30 15:52:10] [SINGLE_APPLY] fetch_started
[2026-03-30 15:52:10] [SINGLE_APPLY] using method=ArticleScraper::fetchRawHtml
[2026-03-30 15:52:10] [SINGLE_APPLY] html_returned=no
[2026-03-30 15:52:10] [SINGLE_APPLY] html_length=0
[2026-03-30 15:52:10] [SINGLE_APPLY] fetch_failed
[2026-03-30 15:52:10] [SINGLE_APPLY] service_completed success=no message=Failed to fetch article title and no manual title was provided
[2026-03-30 15:52:27] [SINGLE_APPLY] endpoint_started
[2026-03-30 15:52:27] [SINGLE_APPLY] auth_passed
[2026-03-30 15:52:27] [SINGLE_APPLY] method_passed
[2026-03-30 15:52:27] [SINGLE_APPLY] request_started
[2026-03-30 15:52:27] [SINGLE_APPLY] input_url=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products
[2026-03-30 15:52:27] [SINGLE_APPLY] manual_title_provided=yes
[2026-03-30 15:52:27] [SINGLE_APPLY] service_called
[2026-03-30 15:52:27] [SINGLE_APPLY] start
[2026-03-30 15:52:27] [SINGLE_APPLY] url_received=https://edition.cnn.com/cnn-underscored/health-fitness/best-allergy-products
[2026-03-30 15:52:27] [SINGLE_APPLY] validation_passed
[2026-03-30 15:52:27] [SINGLE_APPLY] source_validation=skipped
[2026-03-30 15:52:27] [SINGLE_APPLY] duplicate_check_passed
[2026-03-30 15:52:27] [SINGLE_APPLY] fetch_started
[2026-03-30 15:52:27] [SINGLE_APPLY] using method=ArticleScraper::fetchRawHtml
[2026-03-30 15:52:27] [SINGLE_APPLY] html_returned=no
[2026-03-30 15:52:27] [SINGLE_APPLY] html_length=0
[2026-03-30 15:52:27] [SINGLE_APPLY] fetch_failed
[2026-03-30 15:52:27] [SINGLE_APPLY] manual_title_used=yes
[2026-03-30 15:52:29] [SINGLE_APPLY] insert_started
[2026-03-30 15:52:29] [SINGLE_APPLY] insert_success article_id=21
[2026-03-30 15:52:29] [SINGLE_APPLY] service_completed success=yes message=Article added using manual title
[2026-03-30 16:43:31] [SINGLE_APPLY] endpoint_started
[2026-03-30 16:43:31] [SINGLE_APPLY] auth_passed
[2026-03-30 16:43:31] [SINGLE_APPLY] method_passed
[2026-03-30 16:43:31] [SINGLE_APPLY] request_started
[2026-03-30 16:43:31] [SINGLE_APPLY] input_url=https://www.iatronet.gr/article/139248/akoma-kai-kata-11-lepta-perissoteros-ypnos-vohtha-thn-kardia-meleth
[2026-03-30 16:43:31] [SINGLE_APPLY] manual_title_provided=no
[2026-03-30 16:43:31] [SINGLE_APPLY] service_called
[2026-03-30 16:43:31] [SINGLE_APPLY] start
[2026-03-30 16:43:31] [SINGLE_APPLY] url_received=https://www.iatronet.gr/article/139248/akoma-kai-kata-11-lepta-perissoteros-ypnos-vohtha-thn-kardia-meleth
[2026-03-30 16:43:31] [SINGLE_APPLY] validation_passed
[2026-03-30 16:43:31] [SINGLE_APPLY] source_validation=skipped
[2026-03-30 16:43:31] [SINGLE_APPLY] duplicate_check_passed
[2026-03-30 16:43:31] [SINGLE_APPLY] fetch_started
[2026-03-30 16:43:31] [SINGLE_APPLY] using method=ArticleScraper::fetchRawHtml
[2026-03-30 16:43:31] [SINGLE_APPLY] html_returned=yes
[2026-03-30 16:43:31] [SINGLE_APPLY] html_length=78359
[2026-03-30 16:43:31] [SINGLE_APPLY] fetch_passed
[2026-03-30 16:43:31] [SINGLE_APPLY] title_extraction_started
[2026-03-30 16:43:31] [SINGLE_APPLY] title_found=yes
[2026-03-30 16:43:31] SingleArticleApply title_extracted url=https://www.iatronet.gr/article/139248/akoma-kai-kata-11-lepta-perissoteros-ypnos-vohtha-thn-kardia-meleth title_length=68
[2026-03-30 16:43:31] [SINGLE_APPLY] title_extraction_passed
[2026-03-30 16:43:33] [SINGLE_APPLY] insert_started
[2026-03-30 16:43:33] [SINGLE_APPLY] insert_success article_id=22
[2026-03-30 16:43:33] [SINGLE_APPLY] service_completed success=yes message=Article added successfully
[2026-03-30 23:44:37] [SINGLE_APPLY] endpoint_started
[2026-03-30 23:44:37] [SINGLE_APPLY] auth_passed
[2026-03-30 23:44:37] [SINGLE_APPLY] method_passed
[2026-03-30 23:44:37] [SINGLE_APPLY] request_started
[2026-03-30 23:44:37] [SINGLE_APPLY] input_url=https://www.psychologytoday.com/us/blog/human-rights-defenders/202602/understanding-and-preventing-image-based-sexual-abuse
[2026-03-30 23:44:37] [SINGLE_APPLY] manual_title_provided=no
[2026-03-30 23:44:37] [SINGLE_APPLY] service_called
[2026-03-30 23:44:37] [SINGLE_APPLY] start
[2026-03-30 23:44:37] [SINGLE_APPLY] url_received=https://www.psychologytoday.com/us/blog/human-rights-defenders/202602/understanding-and-preventing-image-based-sexual-abuse
[2026-03-30 23:44:37] [SINGLE_APPLY] validation_passed
[2026-03-30 23:44:37] [SINGLE_APPLY] source_validation=skipped
[2026-03-30 23:44:37] [SINGLE_APPLY] duplicate_check_passed
[2026-03-30 23:44:37] [SINGLE_APPLY] fetch_started
[2026-03-30 23:44:37] [SINGLE_APPLY] using method=ArticleScraper::fetchRawHtml
[2026-03-30 23:44:37] [SINGLE_APPLY] html_returned=yes
[2026-03-30 23:44:37] [SINGLE_APPLY] html_length=139347
[2026-03-30 23:44:37] [SINGLE_APPLY] fetch_passed
[2026-03-30 23:44:37] [SINGLE_APPLY] title_extraction_started
[2026-03-30 23:44:37] [SINGLE_APPLY] title_found=yes
[2026-03-30 23:44:37] SingleArticleApply title_extracted url=https://www.psychologytoday.com/us/blog/human-rights-defenders/202602/understanding-and-preventing-image-based-sexual-abuse title_length=53
[2026-03-30 23:44:37] [SINGLE_APPLY] title_extraction_passed
[2026-03-30 23:44:39] [SINGLE_APPLY] insert_started
[2026-03-30 23:44:39] [SINGLE_APPLY] insert_success article_id=31
[2026-03-30 23:44:39] [SINGLE_APPLY] service_completed success=yes message=Article added successfully
[2026-04-05 23:06:41] [SINGLE_APPLY] endpoint_started
[2026-04-05 23:06:41] [SINGLE_APPLY] auth_failed
[2026-04-06 23:09:52] [SINGLE_APPLY] endpoint_started
[2026-04-06 23:09:52] [SINGLE_APPLY] auth_passed
[2026-04-06 23:09:52] [SINGLE_APPLY] method_passed
[2026-04-06 23:09:52] [SINGLE_APPLY] request_started
[2026-04-06 23:09:52] [SINGLE_APPLY] input_url=https://www.verywellhealth.com/do-cheerios-raise-blood-sugar-11937285
[2026-04-06 23:09:52] [SINGLE_APPLY] manual_title_provided=no
[2026-04-06 23:09:52] [SINGLE_APPLY] service_called
[2026-04-06 23:09:52] [SINGLE_APPLY] start
[2026-04-06 23:09:52] [SINGLE_APPLY] url_received=https://www.verywellhealth.com/do-cheerios-raise-blood-sugar-11937285
[2026-04-06 23:09:52] [SINGLE_APPLY] validation_passed
[2026-04-06 23:09:52] [SINGLE_APPLY] source_validation=skipped
[2026-04-06 23:09:52] [SINGLE_APPLY] duplicate_check_passed
[2026-04-06 23:09:52] [SINGLE_APPLY] fetch_started
[2026-04-06 23:09:52] [SINGLE_APPLY] using method=ArticleScraper::fetchRawHtml
[2026-04-06 23:10:02] [SINGLE_APPLY] html_returned=no
[2026-04-06 23:10:02] [SINGLE_APPLY] html_length=0
[2026-04-06 23:10:02] [SINGLE_APPLY] fetch_failed
[2026-04-06 23:10:02] [SINGLE_APPLY] service_completed success=no message=Failed to fetch article title and no manual title was provided
[2026-04-06 23:10:22] [SINGLE_APPLY] endpoint_started
[2026-04-06 23:10:22] [SINGLE_APPLY] auth_passed
[2026-04-06 23:10:22] [SINGLE_APPLY] method_passed
[2026-04-06 23:10:22] [SINGLE_APPLY] request_started
[2026-04-06 23:10:22] [SINGLE_APPLY] input_url=https://www.verywellhealth.com/do-cheerios-raise-blood-sugar-11937285
[2026-04-06 23:10:22] [SINGLE_APPLY] manual_title_provided=yes
[2026-04-06 23:10:22] [SINGLE_APPLY] service_called
[2026-04-06 23:10:22] [SINGLE_APPLY] start
[2026-04-06 23:10:22] [SINGLE_APPLY] url_received=https://www.verywellhealth.com/do-cheerios-raise-blood-sugar-11937285
[2026-04-06 23:10:22] [SINGLE_APPLY] validation_passed
[2026-04-06 23:10:22] [SINGLE_APPLY] source_validation=skipped
[2026-04-06 23:10:22] [SINGLE_APPLY] duplicate_check_passed
[2026-04-06 23:10:22] [SINGLE_APPLY] fetch_started
[2026-04-06 23:10:22] [SINGLE_APPLY] using method=ArticleScraper::fetchRawHtml
[2026-04-06 23:10:22] [SINGLE_APPLY] html_returned=no
[2026-04-06 23:10:22] [SINGLE_APPLY] html_length=0
[2026-04-06 23:10:22] [SINGLE_APPLY] fetch_failed
[2026-04-06 23:10:22] [SINGLE_APPLY] manual_title_used=yes
[2026-04-06 23:10:25] [SINGLE_APPLY] insert_started
[2026-04-06 23:10:25] [SINGLE_APPLY] insert_success article_id=42
[2026-04-06 23:10:25] [SINGLE_APPLY] service_completed success=yes message=Article added using manual title
[2026-05-15 04:07:53] [SINGLE_APPLY] endpoint_started
[2026-05-15 04:07:53] [SINGLE_APPLY] auth_failed
