From d8b70edbf850daa72fd93efca6ac8c8a8e2f6da3 Mon Sep 17 00:00:00 2001 From: Francisco Rodriguez <872826+frodri@users.noreply.github.com> Date: Thu, 7 Nov 2019 17:06:53 -0500 Subject: [PATCH 1/3] Allow the storage of endpoints with long URLs. --- logs_http.admin.inc | 1 + 1 file changed, 1 insertion(+) diff --git a/logs_http.admin.inc b/logs_http.admin.inc index 1f020c2..1b6586a 100644 --- a/logs_http.admin.inc +++ b/logs_http.admin.inc @@ -19,6 +19,7 @@ function logs_http_admin_settings($form, &$form_state) { $form['logs_http_url'] = array( '#type' => 'textfield', '#title' => t('Endpoint'), + '#maxlength' => 2000, '#description' => t('The URL to POST the data to.'), '#default_value' => variable_get('logs_http_url', NULL), ); From c3829ecdb5c4d94e72a803cb99e48ce55a9e3f4c Mon Sep 17 00:00:00 2001 From: Francisco Rodriguez <872826+frodri@users.noreply.github.com> Date: Thu, 7 Nov 2019 17:06:53 -0500 Subject: [PATCH 2/3] Added a request alter hook, along with an hook for failed requests. --- logs_http.module | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/logs_http.module b/logs_http.module index 1f0cf79..de9a85e 100644 --- a/logs_http.module +++ b/logs_http.module @@ -98,16 +98,27 @@ function logs_http_shutdown() { } $url = logs_http_get_http_url(); - + $requests = array(); // Send events to logs. foreach ($events as $event) { - $options = array( - 'method' => 'POST', + $requests[] = array( + 'event' => $event, 'data' => drupal_json_encode($event), ); + } + + drupal_alter('logs_http_requests', $requests); - // Send data to Logs. + foreach ($requests as $key => $request) { + $options = array( + 'method' => 'POST', + 'data' => $request['data'], + ); $response = drupal_http_request($url, $options); + + if ($response->code != '200') { + module_invoke_all('logs_http_error', $response); + } } } From bc957f616caa686b04aec90d81df3d844a7073b6 Mon Sep 17 00:00:00 2001 From: Francisco Rodriguez <872826+frodri@users.noreply.github.com> Date: Tue, 12 Nov 2019 13:02:07 -0500 Subject: [PATCH 3/3] Added request success hook. Renamed request error hook for clarity purposes. --- logs_http.module | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/logs_http.module b/logs_http.module index de9a85e..aa95d34 100644 --- a/logs_http.module +++ b/logs_http.module @@ -117,7 +117,10 @@ function logs_http_shutdown() { $response = drupal_http_request($url, $options); if ($response->code != '200') { - module_invoke_all('logs_http_error', $response); + module_invoke_all('logs_http_request_error', $response); + } + else { + module_invoke_all('logs_http_request_success', $response); } } }