setech


Namesetech JSON
Version 1.5.4 PyPI version JSON
download
home_pageNone
SummarySetech utilities
upload_time2025-10-23 13:29:37
maintainerNone
docs_urlNone
authorNone
requires_python~=3.11
licenseNone
keywords setech logging api-client utility utils
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # 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.11",
    "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/d8/a6/552778e4e1e2262a5a90b5b53129aa966e902ce9539984e1d7c9afeb2d9b/setech-1.5.4.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.5.4",
    "project_urls": {
        "Homepage": "https://pypi.org/project/setech/"
    },
    "split_keywords": [
        "setech",
        " logging",
        " api-client",
        " utility",
        " utils"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "70fb95bffd86e2f0bf02c6a249ea6f629e454cf2aa6f8c5f4bcca95b35a355be",
                "md5": "a2e853071e43eeb295a6f802a80aacea",
                "sha256": "b979e85c5d0de8a4017de80429ebab45f5a54aa84677e6ba3b51a9ce40981523"
            },
            "downloads": -1,
            "filename": "setech-1.5.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "a2e853071e43eeb295a6f802a80aacea",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "~=3.11",
            "size": 18202,
            "upload_time": "2025-10-23T13:29:35",
            "upload_time_iso_8601": "2025-10-23T13:29:35.660061Z",
            "url": "https://files.pythonhosted.org/packages/70/fb/95bffd86e2f0bf02c6a249ea6f629e454cf2aa6f8c5f4bcca95b35a355be/setech-1.5.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "d8a6552778e4e1e2262a5a90b5b53129aa966e902ce9539984e1d7c9afeb2d9b",
                "md5": "d5559e4f81ed158c401ebaac327f7151",
                "sha256": "1983f9cc36c8e0de79479817568031b4e266fae7ac02e3ec2ac704abb6b37cb3"
            },
            "downloads": -1,
            "filename": "setech-1.5.4.tar.gz",
            "has_sig": false,
            "md5_digest": "d5559e4f81ed158c401ebaac327f7151",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "~=3.11",
            "size": 15444,
            "upload_time": "2025-10-23T13:29:37",
            "upload_time_iso_8601": "2025-10-23T13:29:37.170487Z",
            "url": "https://files.pythonhosted.org/packages/d8/a6/552778e4e1e2262a5a90b5b53129aa966e902ce9539984e1d7c9afeb2d9b/setech-1.5.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-10-23 13:29:37",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "setech"
}
        
Elapsed time: 3.24996s