Issue:
[FEATURE] Populate status code and delivery attempt information in outgoing webhooks ClickHouse events

### Description

As of opening this issue, the outgoing webhooks ClickHouse events contain a few fields:

https://github.com/juspay/hyperswitch/blob/ca61e47585071865cf7df5c05fdbe3f57818ca95/crates/router/src/events/outgoing_webhook_logs.rs#L11-L21

There are `error` and `is_error` fields that indicate whether an error occurred when delivering the webhook to the merchant server, but do not include any information on whether the merchant server even received the webhook.

To address this issue, we must include the following optional fields in the ClickHouse events:

- `status_code`
- `delivery_attempt`
- `initial_attempt_id`

The fields would have to be added in the `OutgoingWebhookEvent` struct, and the corresponding columns must be added in the ClickHouse table. Once the fields have been added in code, the fields must be populated from the [`Event` in the database](https://github.com/juspay/hyperswitch/blob/ca61e47585071865cf7df5c05fdbe3f57818ca95/crates/router/src/types/domain/event.rs#L15-L31):

- The `delivery_attempt` and `initial_attempt_id` are available directly in the `Event` struct.
- The `status_code` field is available within the `response` struct, if the webhook was delivered to the merchant server.

Resolution:
<think>
PR Context:
- Title: feat(analytics): populate status_code, initial_attempt_id & delivery_attempt on clickhouse for outgoing webhook events
- Merged: 2024-08-12T06:56:25Z
- Files changed: 3 files
- Commits: 30 commits

Implementation approach:
## Type of Change

- [ ] Bugfix
- [ ] New feature
- [x] Enhancement
- [ ] Refactoring
- [ ] Dependency updates
- [ ] Documentation
- [ ] CI/CD

## Description

Closes #5070.

This PR enhances the outgoing_webhook_events and outgoing_webhook_events_audit tables by adding three new columns: initial_attempt_id, status_code, and delivery_attempt. These additions are essential for tracking the initial_attempt_id, status_code, and delivery_attempt status for outgoing webhook events, allo
</think>

To implement this, you'll need to modify:


**Detailed Implementation:**


**Commit 1:** feat(analytics): populate status_code, initial_attempt_id & delivery_attempt on clickhouse for outgo
Files to modify:


**crates/router/src/core/webhooks/outgoing.rs**
  Modify existing code

**crates/router/src/events/outgoing_webhook_logs.rs**
  Modify existing code