print / README.md
bibibi12345's picture
initial
4d82260
---
title: Simple Request Logger
emoji: ๐Ÿ“
colorFrom: blue
colorTo: green
sdk: docker
app_port: 7860
---
# Simple Request Logging Server (Hugging Face Compatible)
This repository contains a simple Flask application designed to run in a Docker container. It listens for incoming POST requests on the root path (`/`) and logs the request headers and body (JSON or raw) to the standard output. This is useful for debugging or inspecting webhook payloads.
The application is configured to run on port `7860`, which is commonly used for Hugging Face Spaces deployments.
## Files
* `app.py`: The main Flask application code.
* `requirements.txt`: Lists the Python dependencies (Flask).
* `Dockerfile`: Instructions for building the Docker image.
* `README.md`: This file.
## Prerequisites
* Docker installed on your system.
## Build the Docker Image
Navigate to the directory containing the `Dockerfile` and run the following command:
```bash
docker build -t request-logger .
```
## Run the Docker Container
To run the container and map the internal port `7860` to a port on your host machine (e.g., `7860`), use:
```bash
docker run -p 7860:7860 request-logger
```
The server will start, and you should see output indicating it's listening on `0.0.0.0:7860`.
## Sending Requests
You can send POST requests to the server using tools like `curl` or any HTTP client.
**Example using `curl` (JSON payload):**
```bash
curl -X POST http://localhost:7860/ \
-H "Content-Type: application/json" \
-H "X-Custom-Header: MyValue" \
-d '{"key": "value", "message": "Hello Server!"}'
```
**Example using `curl` (Form data):**
```bash
curl -X POST http://localhost:7860/ \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "param1=value1&param2=value2"
```
**Example using `curl` (Plain text):**
```bash
curl -X POST http://localhost:7860/ \
-H "Content-Type: text/plain" \
-d "This is a plain text body."
```
## Viewing Logs
The request details (headers and body) will be printed to the terminal where you ran the `docker run` command.
## Deployment on Hugging Face Spaces
1. Create a new Space on Hugging Face ([https://huggingface.co/new-space](https://huggingface.co/new-space)).
2. Choose "Docker" as the Space SDK. The settings in this `README.md` file (like `sdk: docker` and `app_port: 7860`) will configure the Space automatically.
3. Upload or push (`git`) the `app.py`, `requirements.txt`, `Dockerfile`, and this updated `README.md` to your Space repository.
4. Hugging Face will automatically build the Docker image and deploy the application using the information from the `Dockerfile` and the YAML header in this README. The application will be accessible at `https://<your-username>-<your-space-name>.hf.space/`. Remember that requests should be sent to the root path (`/`).