Skip to content

Commit 7b1ea5e

Browse files
committed
Allow logging.ini for custom logger setup
1 parent 174c1c0 commit 7b1ea5e

File tree

7 files changed

+28
-10
lines changed

7 files changed

+28
-10
lines changed

.gitignore

+5
Original file line numberDiff line numberDiff line change
@@ -11,3 +11,8 @@ PyNinja.egg-info/
1111
doc_gen/_*
1212

1313
temp.py
14+
15+
# work in progress
16+
samples/
17+
logging.ini
18+
*.log

docs/index.html

+5
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,11 @@ <h1>Welcome to PyNinja’s documentation!<a class="headerlink" href="#welcome-to
6868
<dt class="sig sig-object py" id="pyninja.main.start">
6969
<span class="sig-prename descclassname"><span class="pre">pyninja.main.</span></span><span class="sig-name descname"><span class="pre">start</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">env_file</span></span><span class="p"><span class="pre">:</span></span><span class="w"> </span><span class="n"><span class="pre">str</span></span><span class="w"> </span><span class="o"><span class="pre">=</span></span><span class="w"> </span><span class="default_value"><span class="pre">None</span></span></em><span class="sig-paren">)</span> <span class="sig-return"><span class="sig-return-icon">&#x2192;</span> <span class="sig-return-typehint"><span class="pre">None</span></span></span><a class="headerlink" href="#pyninja.main.start" title="Permalink to this definition"></a></dt>
7070
<dd><p>Starter function for the API, which uses uvicorn server as trigger.</p>
71+
<dl class="field-list simple">
72+
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
73+
<dd class="field-odd"><p><strong>env_file</strong> – Filepath for the <code class="docutils literal notranslate"><span class="pre">.env</span></code> file.</p>
74+
</dd>
75+
</dl>
7176
</dd></dl>
7277

7378
</section>

docs/searchindex.js

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pyninja/__init__.py

+1-3
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,7 @@
44

55
import click
66

7-
from pyninja.main import start # noqa: F401
8-
9-
version = "0.0.0"
7+
from pyninja.main import start, version # noqa: F401
108

119

1210
@click.command()

pyninja/main.py

+14-4
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,34 @@
11
import os
2-
import platform
32

43
import uvicorn
54
from fastapi import FastAPI
65

76
from pyninja import routers, squire
87

8+
version = "0.0.0"
9+
910

1011
def start(env_file: str = None) -> None:
11-
"""Starter function for the API, which uses uvicorn server as trigger."""
12+
"""Starter function for the API, which uses uvicorn server as trigger.
13+
14+
Args:
15+
env_file: Filepath for the ``.env`` file.
16+
"""
1217
squire.env = squire.env_loader(
1318
env_file or os.environ.get("env_file") or os.environ.get("ENV_FILE") or ".env"
1419
)
1520
app = FastAPI(
1621
routes=routers.routes,
17-
title=f"Service monitor for {platform.uname().node}",
22+
title="PyNinja",
23+
description="Light weight OS agnostic service monitoring API",
24+
version=version,
1825
)
19-
uvicorn.run(
26+
kwargs = dict(
2027
host=squire.env.ninja_host,
2128
port=squire.env.ninja_port,
2229
workers=squire.env.workers,
2330
app=app,
2431
)
32+
if os.path.isfile("logging.ini"):
33+
kwargs["log_config"] = os.path.join(os.getcwd(), "logging.ini")
34+
uvicorn.run(**kwargs)

pyninja/routers.py

+1-2
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,7 @@
66

77
from pyninja import auth, exceptions, service, squire
88

9-
logging.getLogger("uvicorn.access").disabled = True
10-
LOGGER = logging.getLogger("uvicorn.error")
9+
LOGGER = logging.getLogger("uvicorn")
1110

1211

1312
async def service_status(payload: squire.StatusPayload):

pyninja/version.py

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
VERSION = "0.0.0"

0 commit comments

Comments
 (0)