# Example code
```python
# client.py
from setech import SyncClient
class LocalClient(SyncClient):
name = "local"
_base_url = "https://obligari.serveo.net/ping/local"
def __init__(self, nonce=None):
super().__init__(nonce)
self._session.headers.update(
{"User-Agent": "Mozilla/5.0 (Windows NT 10.0; rv:123.0) Gecko/20100101 Firefox/123.0"}
)
def send_post_ping(self, var1: str, var2: int) -> bool:
res = self.post("/some-post", json={"variable_one": var1, "second_variable": var2})
return res.json().get("status")
def send_put_ping(self, var1: str, var2: int) -> bool:
res = self.put("/some-put", data={"variable_one": var1, "second_variable": var2})
return res.json().get("status")
def send_get_ping(self, var1: str, var2: int) -> bool:
res = self.get("/some-get", params={"variable_one": var1, "second_variable": var2})
return res.json().get("status")
def send_patch_ping(self, var1: str, var2: int) -> bool:
res = self.put("/some-patch", data=(("variable_one", var1), ("variable_one", var2)))
return res.json().get("status")
def send_trace_ping(self, var1: str, var2: int) -> bool:
res = self.trace("/some-trace", params=(("variable_one", var1), ("variable_one", var2)))
return res.json().get("status")
```
```python
# main.py
from .client import LocalClient
client = LocalClient()
client.send_post_ping("asd", 123)
client.send_put_ping("asd", 123)
client.send_get_ping("asd", 123)
client.send_patch_ping("asd", 123)
client.send_trace_ping("asd", 123)
```
## Log output
### Simple
```text
[14d709e02c0c] Preparing POST request to "https://obligari.serveo.net/ping/local/some-post"
[14d709e02c0c] Sending request with payload=b'{"variable_one": "asd", "second_variable": 123}'
[14d709e02c0c] Response response.status_code=200 str_repr_content='{"status":true,"request_id":62}'
[14d709e02c0c] Preparing GET request to "https://obligari.serveo.net/ping/local/some-get"
[14d709e02c0c] Sending request with payload=None
[14d709e02c0c] Response response.status_code=200 str_repr_content='{"status":true,"request_id":63}'
```
### Structured
```json
{"app": "dev", "level": "DEBUG", "name": "APIClient", "date_time": "2024-03-09 22:59:24", "location": "api_client/client.py:_request:71", "message": "[cfbdadc56f53] Preparing POST request to \"https://obligari.serveo.net/ping/local/some-post\"", "extra_data": {"hooks": {"response": []}, "method": "POST", "url": "https://obligari.serveo.net/ping/local/some-post", "headers": {}, "files": [], "data": [], "json": {"variable_one": "asd", "second_variable": 123}, "params": {}, "auth": null, "cookies": null}}
{"app": "dev", "level": "INFO", "name": "APIClient", "date_time": "2024-03-09 22:59:24", "location": "api_client/client.py:_request:74", "message": "[cfbdadc56f53] Sending request with payload=b'{\"variable_one\": \"asd\", \"second_variable\": 123}'", "extra_data": {"payload": "{\"variable_one\": \"asd\", \"second_variable\": 123}"}}
{"app": "dev", "level": "INFO", "name": "APIClient", "date_time": "2024-03-09 22:59:25", "location": "api_client/client.py:_request:81", "message": "[cfbdadc56f53] Response response.status_code=200 str_repr_content='{\"status\":true,\"request_id\":72}'", "extra_data": {"status_code": 200, "content": "{\"status\":true,\"request_id\":72}"}}
{"app": "dev", "level": "DEBUG", "name": "APIClient", "date_time": "2024-03-09 22:59:25", "location": "api_client/client.py:_request:71", "message": "[cfbdadc56f53] Preparing GET request to \"https://obligari.serveo.net/ping/local/some-get\"", "extra_data": {"hooks": {"response": []}, "method": "GET", "url": "https://obligari.serveo.net/ping/local/some-get", "headers": {}, "files": [], "data": [], "json": null, "params": {"variable_one": "asd", "second_variable": 123}, "auth": null, "cookies": null}}
{"app": "dev", "level": "INFO", "name": "APIClient", "date_time": "2024-03-09 22:59:25", "location": "api_client/client.py:_request:74", "message": "[cfbdadc56f53] Sending request with payload=None", "extra_data": {"payload": "{}"}}
{"app": "dev", "level": "INFO", "name": "APIClient", "date_time": "2024-03-09 22:59:25", "location": "api_client/client.py:_request:81", "message": "[cfbdadc56f53] Response response.status_code=200 str_repr_content='{\"status\":true,\"request_id\":74}'", "extra_data": {"status_code": 200, "content": "{\"status\":true,\"request_id\":73}"}}
```
Raw data
{
"_id": null,
"home_page": null,
"name": "setech",
"maintainer": null,
"docs_url": null,
"requires_python": "~=3.10",
"maintainer_email": null,
"keywords": "setech, logging, api-client, utility, utils",
"author": null,
"author_email": "Eriks Karls <eriks.karls@sefinance.lv>",
"download_url": "https://files.pythonhosted.org/packages/3f/b2/0ae885d66de4c40ac24bf65d311b4d78392976a95ae1304ba88a9ccf31e1/setech-1.4.2.tar.gz",
"platform": null,
"description": "# Example code\n```python\n# client.py\nfrom setech import SyncClient\n\n\nclass LocalClient(SyncClient):\n name = \"local\"\n _base_url = \"https://obligari.serveo.net/ping/local\"\n\n def __init__(self, nonce=None):\n super().__init__(nonce)\n self._session.headers.update(\n {\"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; rv:123.0) Gecko/20100101 Firefox/123.0\"}\n )\n\n def send_post_ping(self, var1: str, var2: int) -> bool:\n res = self.post(\"/some-post\", json={\"variable_one\": var1, \"second_variable\": var2})\n return res.json().get(\"status\")\n\n def send_put_ping(self, var1: str, var2: int) -> bool:\n res = self.put(\"/some-put\", data={\"variable_one\": var1, \"second_variable\": var2})\n return res.json().get(\"status\")\n\n def send_get_ping(self, var1: str, var2: int) -> bool:\n res = self.get(\"/some-get\", params={\"variable_one\": var1, \"second_variable\": var2})\n return res.json().get(\"status\")\n\n def send_patch_ping(self, var1: str, var2: int) -> bool:\n res = self.put(\"/some-patch\", data=((\"variable_one\", var1), (\"variable_one\", var2)))\n return res.json().get(\"status\")\n\n def send_trace_ping(self, var1: str, var2: int) -> bool:\n res = self.trace(\"/some-trace\", params=((\"variable_one\", var1), (\"variable_one\", var2)))\n return res.json().get(\"status\")\n```\n\n```python\n# main.py\nfrom .client import LocalClient\n\n\nclient = LocalClient()\nclient.send_post_ping(\"asd\", 123)\nclient.send_put_ping(\"asd\", 123)\nclient.send_get_ping(\"asd\", 123)\nclient.send_patch_ping(\"asd\", 123)\nclient.send_trace_ping(\"asd\", 123)\n```\n\n## Log output\n### Simple\n```text\n[14d709e02c0c] Preparing POST request to \"https://obligari.serveo.net/ping/local/some-post\"\n[14d709e02c0c] Sending request with payload=b'{\"variable_one\": \"asd\", \"second_variable\": 123}'\n[14d709e02c0c] Response response.status_code=200 str_repr_content='{\"status\":true,\"request_id\":62}'\n[14d709e02c0c] Preparing GET request to \"https://obligari.serveo.net/ping/local/some-get\"\n[14d709e02c0c] Sending request with payload=None\n[14d709e02c0c] Response response.status_code=200 str_repr_content='{\"status\":true,\"request_id\":63}'\n```\n### Structured\n```json\n{\"app\": \"dev\", \"level\": \"DEBUG\", \"name\": \"APIClient\", \"date_time\": \"2024-03-09 22:59:24\", \"location\": \"api_client/client.py:_request:71\", \"message\": \"[cfbdadc56f53] Preparing POST request to \\\"https://obligari.serveo.net/ping/local/some-post\\\"\", \"extra_data\": {\"hooks\": {\"response\": []}, \"method\": \"POST\", \"url\": \"https://obligari.serveo.net/ping/local/some-post\", \"headers\": {}, \"files\": [], \"data\": [], \"json\": {\"variable_one\": \"asd\", \"second_variable\": 123}, \"params\": {}, \"auth\": null, \"cookies\": null}}\n{\"app\": \"dev\", \"level\": \"INFO\", \"name\": \"APIClient\", \"date_time\": \"2024-03-09 22:59:24\", \"location\": \"api_client/client.py:_request:74\", \"message\": \"[cfbdadc56f53] Sending request with payload=b'{\\\"variable_one\\\": \\\"asd\\\", \\\"second_variable\\\": 123}'\", \"extra_data\": {\"payload\": \"{\\\"variable_one\\\": \\\"asd\\\", \\\"second_variable\\\": 123}\"}}\n{\"app\": \"dev\", \"level\": \"INFO\", \"name\": \"APIClient\", \"date_time\": \"2024-03-09 22:59:25\", \"location\": \"api_client/client.py:_request:81\", \"message\": \"[cfbdadc56f53] Response response.status_code=200 str_repr_content='{\\\"status\\\":true,\\\"request_id\\\":72}'\", \"extra_data\": {\"status_code\": 200, \"content\": \"{\\\"status\\\":true,\\\"request_id\\\":72}\"}}\n{\"app\": \"dev\", \"level\": \"DEBUG\", \"name\": \"APIClient\", \"date_time\": \"2024-03-09 22:59:25\", \"location\": \"api_client/client.py:_request:71\", \"message\": \"[cfbdadc56f53] Preparing GET request to \\\"https://obligari.serveo.net/ping/local/some-get\\\"\", \"extra_data\": {\"hooks\": {\"response\": []}, \"method\": \"GET\", \"url\": \"https://obligari.serveo.net/ping/local/some-get\", \"headers\": {}, \"files\": [], \"data\": [], \"json\": null, \"params\": {\"variable_one\": \"asd\", \"second_variable\": 123}, \"auth\": null, \"cookies\": null}}\n{\"app\": \"dev\", \"level\": \"INFO\", \"name\": \"APIClient\", \"date_time\": \"2024-03-09 22:59:25\", \"location\": \"api_client/client.py:_request:74\", \"message\": \"[cfbdadc56f53] Sending request with payload=None\", \"extra_data\": {\"payload\": \"{}\"}}\n{\"app\": \"dev\", \"level\": \"INFO\", \"name\": \"APIClient\", \"date_time\": \"2024-03-09 22:59:25\", \"location\": \"api_client/client.py:_request:81\", \"message\": \"[cfbdadc56f53] Response response.status_code=200 str_repr_content='{\\\"status\\\":true,\\\"request_id\\\":74}'\", \"extra_data\": {\"status_code\": 200, \"content\": \"{\\\"status\\\":true,\\\"request_id\\\":73}\"}}\n```\n",
"bugtrack_url": null,
"license": null,
"summary": "Setech utilities",
"version": "1.4.2",
"project_urls": {
"Homepage": "https://pypi.org/project/setech/"
},
"split_keywords": [
"setech",
" logging",
" api-client",
" utility",
" utils"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "f44dadb357301f7a0b4c817be1e0893b2fd5bf33aeb8769d038d8b49aa69425b",
"md5": "10d953e69002dd5d2d30e121e56a09f7",
"sha256": "2b162520ccc0a0dc94ffd05356638386c1b300b4f5b061871f28d41167c205ee"
},
"downloads": -1,
"filename": "setech-1.4.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "10d953e69002dd5d2d30e121e56a09f7",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "~=3.10",
"size": 17165,
"upload_time": "2024-10-31T11:54:57",
"upload_time_iso_8601": "2024-10-31T11:54:57.879374Z",
"url": "https://files.pythonhosted.org/packages/f4/4d/adb357301f7a0b4c817be1e0893b2fd5bf33aeb8769d038d8b49aa69425b/setech-1.4.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3fb20ae885d66de4c40ac24bf65d311b4d78392976a95ae1304ba88a9ccf31e1",
"md5": "556326e95f25b5be8b0216fca5eb1d7a",
"sha256": "691adcc259276a8e4cecc82a6b21b7c4680bd49938d280841d4f38eb67cfd803"
},
"downloads": -1,
"filename": "setech-1.4.2.tar.gz",
"has_sig": false,
"md5_digest": "556326e95f25b5be8b0216fca5eb1d7a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "~=3.10",
"size": 14363,
"upload_time": "2024-10-31T11:55:00",
"upload_time_iso_8601": "2024-10-31T11:55:00.016332Z",
"url": "https://files.pythonhosted.org/packages/3f/b2/0ae885d66de4c40ac24bf65d311b4d78392976a95ae1304ba88a9ccf31e1/setech-1.4.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-10-31 11:55:00",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "setech"
}