From 2f8714e6fe54f7c4bbf7ad56dae6fa52d3bbc0e1 Mon Sep 17 00:00:00 2001 From: Meng Zhang Date: Tue, 28 Mar 2023 16:32:35 +0800 Subject: [PATCH] Add vector logging for tabby-server events. (#25) * Switch to dagu for init job * Add processed logging --- deployment/.env | 4 ++++ deployment/config/vector.toml | 19 +++++++++++++++++++ deployment/docker-compose.yml | 11 ++++++++++- tabby/tasks/init.yaml | 8 ++++++++ .../{model_preload.py => download_models.py} | 0 5 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 deployment/config/vector.toml create mode 100644 tabby/tasks/init.yaml rename tabby/tools/{model_preload.py => download_models.py} (100%) diff --git a/deployment/.env b/deployment/.env index 2661f80..13b698e 100644 --- a/deployment/.env +++ b/deployment/.env @@ -1,2 +1,6 @@ MODEL_NAME=TabbyML/J-350M + +# Volumes HF_VOLUME="../data/hf_cache:/root/.cache/huggingface" + +LOGS_VOLUME="../data/logs:/logs" diff --git a/deployment/config/vector.toml b/deployment/config/vector.toml new file mode 100644 index 0000000..0c763d9 --- /dev/null +++ b/deployment/config/vector.toml @@ -0,0 +1,19 @@ +[api] +enabled = true +address = "0.0.0.0:8686" + +[sources.tabby_server_logs] +type = "file" +include = ["/logs/tabby-server/events.*.log"] + +[transforms.process_tabby_server_logs] +type = "remap" +inputs = [ "tabby_server_logs" ] +source = ". = parse_json!(parse_json!(.message).record.message)" + +[sinks.write_tabby_server_logs] +type = "file" +inputs = [ "process_tabby_server_logs" ] +encoding = { codec = "json" } +framing = { method = "newline_delimited" } +path = "/logs/tabby-server/events.%Y-%m-%d.json" diff --git a/deployment/docker-compose.yml b/deployment/docker-compose.yml index f6ba539..4679ea6 100644 --- a/deployment/docker-compose.yml +++ b/deployment/docker-compose.yml @@ -4,7 +4,7 @@ services: init: image: tabbyml/tabby container_name: tabby-init - command: python -m tabby.tools.model_preload --repo_id ${MODEL_NAME} + command: dagu start --params=MODEL_NAME=${MODEL_NAME} ./tabby/tasks/init.yaml volumes: - ${HF_VOLUME} @@ -15,10 +15,12 @@ services: environment: MODEL_NAME: ${MODEL_NAME} MODEL_BACKEND: triton + EVENTS_LOG_DIR: /logs/tabby-server ports: - "5000:5000" volumes: - ${HF_VOLUME} + - ${LOGS_VOLUME} depends_on: init: condition: service_completed_successfully @@ -57,3 +59,10 @@ services: interval: 2s timeout: 2s start_period: 120s + + vector: + image: timberio/vector:0.28.1-alpine + container_name: tabby-vector + volumes: + - ./config/vector.toml:/etc/vector/vector.toml:ro + - ${LOGS_VOLUME} diff --git a/tabby/tasks/init.yaml b/tabby/tasks/init.yaml new file mode 100644 index 0000000..5ab7f0c --- /dev/null +++ b/tabby/tasks/init.yaml @@ -0,0 +1,8 @@ +params: MODEL_NAME +env: + - PATH: "/opt/conda/bin:$PATH" + - APP_DIR: /app +steps: + - name: Download models + dir: $APP_DIR + command: python -m tabby.tools.download_models --repo_id=$MODEL_NAME diff --git a/tabby/tools/model_preload.py b/tabby/tools/download_models.py similarity index 100% rename from tabby/tools/model_preload.py rename to tabby/tools/download_models.py