alicloud-observability-sls-log-query
SKILL.md
Category: service
SLS Log Query and Troubleshooting
Use SLS query|analysis syntax and Python SDK for log search, filtering, and analytics.
Prerequisites
- Install SDK (virtual environment recommended to avoid PEP 668 restrictions):
python3 -m venv .venv
. .venv/bin/activate
python -m pip install -U aliyun-log-python-sdk
- Configure environment variables:
ALIBABA_CLOUD_ACCESS_KEY_IDALIBABA_CLOUD_ACCESS_KEY_SECRETSLS_ENDPOINT(e.g.cn-hangzhou.log.aliyuncs.com)SLS_PROJECTSLS_LOGSTORE(supports a single value or comma-separated values)
Query Composition
- Query clause: filters logs (e.g.
status:500). - Analysis clause: statistical aggregation, format
query|analysis. - Example:
* | SELECT status, count(*) AS pv GROUP BY status
See references/query-syntax.md for full syntax.
Quickstart (Python SDK)
import os
import time
from aliyun.log import LogClient, GetLogsRequest
client = LogClient(
os.environ["SLS_ENDPOINT"],
os.environ["ALIBABA_CLOUD_ACCESS_KEY_ID"],
os.environ["ALIBABA_CLOUD_ACCESS_KEY_SECRET"],
)
project = os.environ["SLS_PROJECT"]
logstore = os.environ["SLS_LOGSTORE"]
query = "status:500"
start_time = int(time.time()) - 15 * 60
end_time = int(time.time())
request = GetLogsRequest(project, logstore, start_time, end_time, query=query)
response = client.get_logs(request)
for log in response.get_logs():
print(log.contents)
Script quickstart
python skills/observability/sls/alicloud-observability-sls-log-query/scripts/query_logs.py \
--query "status:500" \
--last-minutes 15
Optional args: --project, --logstore(repeatable, or comma-separated values), --endpoint, --start, --end, --last-minutes, --limit, --parallel.
Troubleshooting script
python skills/observability/sls/alicloud-observability-sls-log-query/scripts/troubleshoot.py \
--group-field status \
--last-minutes 30 \
--limit 20
Optional args: --error-query, --group-field, --limit, --logstore(repeatable, or comma-separated values), --parallel, plus the time range args above.
Workflow
- Ensure Logstore indexing is enabled (queries/analysis fail without index).
- Write query clause and append analysis clause when needed.
- Execute with SDK/script and inspect results.
- Control returned rows with
limit; narrow time range when needed.
Validation
mkdir -p output/alicloud-observability-sls-log-query
for f in skills/observability/sls/alicloud-observability-sls-log-query/scripts/*.py; do
python3 -m py_compile "$f"
done
echo "py_compile_ok" > output/alicloud-observability-sls-log-query/validate.txt
Pass criteria: command exits 0 and output/alicloud-observability-sls-log-query/validate.txt is generated.
Output And Evidence
- Save artifacts, command outputs, and API response summaries under
output/alicloud-observability-sls-log-query/. - Include key parameters (region/resource id/time range) in evidence files for reproducibility.
References
-
Syntax and examples:
references/query-syntax.md -
Python SDK initialization and queries:
references/python-sdk.md -
Troubleshooting templates:
references/templates.md -
Source list:
references/sources.md
Weekly Installs
225
Repository
cinience/alicloud-skillsGitHub Stars
355
First Seen
Feb 11, 2026
Security Audits
Installed on
gemini-cli223
github-copilot223
codex223
kimi-cli223
amp223
opencode223