opencode-skills-collection 4.0.68 → 4.0.69

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (309) hide show
  1. package/bundled-skills/.antigravity-install-manifest.json +266 -1
  2. package/bundled-skills/access-review/SKILL.md +394 -0
  3. package/bundled-skills/access-review/references/details.md +121 -0
  4. package/bundled-skills/agent-evals/SKILL.md +420 -0
  5. package/bundled-skills/agent-observability/SKILL.md +346 -0
  6. package/bundled-skills/agent-observability/references/details.md +786 -0
  7. package/bundled-skills/ai-agent-security/SKILL.md +393 -0
  8. package/bundled-skills/ai-agent-security/references/details.md +912 -0
  9. package/bundled-skills/ai-coding-agent-guardrails/SKILL.md +442 -0
  10. package/bundled-skills/ai-coding-agent-guardrails/references/details.md +753 -0
  11. package/bundled-skills/ai-inference-service-mesh/SKILL.md +449 -0
  12. package/bundled-skills/ai-pipeline-orchestration/SKILL.md +287 -0
  13. package/bundled-skills/ai-red-teaming/SKILL.md +409 -0
  14. package/bundled-skills/ai-security-hardening/SKILL.md +343 -0
  15. package/bundled-skills/ai-sre-incident-response/SKILL.md +336 -0
  16. package/bundled-skills/alerting-oncall/SKILL.md +458 -0
  17. package/bundled-skills/alerting-oncall/references/details.md +84 -0
  18. package/bundled-skills/apk-redteam-pipeline/SKILL.md +446 -0
  19. package/bundled-skills/argocd-gitops/SKILL.md +469 -0
  20. package/bundled-skills/arm-templates/SKILL.md +438 -0
  21. package/bundled-skills/arm-templates/references/details.md +64 -0
  22. package/bundled-skills/asset-inventory/SKILL.md +412 -0
  23. package/bundled-skills/asset-inventory/references/details.md +127 -0
  24. package/bundled-skills/audit-logging/SKILL.md +476 -0
  25. package/bundled-skills/aws-cloudtrail/SKILL.md +486 -0
  26. package/bundled-skills/aws-cost-optimization/SKILL.md +331 -0
  27. package/bundled-skills/aws-ec2/SKILL.md +426 -0
  28. package/bundled-skills/aws-ecs-fargate/SKILL.md +388 -0
  29. package/bundled-skills/aws-iam/SKILL.md +463 -0
  30. package/bundled-skills/aws-lambda/SKILL.md +428 -0
  31. package/bundled-skills/aws-rds/SKILL.md +380 -0
  32. package/bundled-skills/aws-s3/SKILL.md +434 -0
  33. package/bundled-skills/aws-secrets-manager/SKILL.md +486 -0
  34. package/bundled-skills/aws-vpc/SKILL.md +436 -0
  35. package/bundled-skills/azure-ai-document-intelligence-ts/SKILL.md +1 -1
  36. package/bundled-skills/azure-aks/SKILL.md +423 -0
  37. package/bundled-skills/azure-devops/SKILL.md +457 -0
  38. package/bundled-skills/azure-functions-devsec/SKILL.md +436 -0
  39. package/bundled-skills/azure-keyvault/SKILL.md +455 -0
  40. package/bundled-skills/azure-keyvault/references/details.md +83 -0
  41. package/bundled-skills/azure-monitor-audit/SKILL.md +379 -0
  42. package/bundled-skills/azure-networking/SKILL.md +448 -0
  43. package/bundled-skills/azure-networking/references/details.md +135 -0
  44. package/bundled-skills/azure-sql/SKILL.md +413 -0
  45. package/bundled-skills/azure-sql/references/details.md +113 -0
  46. package/bundled-skills/azure-vms/SKILL.md +402 -0
  47. package/bundled-skills/azure-vms/references/details.md +134 -0
  48. package/bundled-skills/backup-recovery/SKILL.md +388 -0
  49. package/bundled-skills/bb-methodology/SKILL.md +451 -0
  50. package/bundled-skills/bb-methodology/references/details.md +120 -0
  51. package/bundled-skills/block-storage/SKILL.md +371 -0
  52. package/bundled-skills/blue-green-deploy/SKILL.md +453 -0
  53. package/bundled-skills/blue-green-deploy/references/details.md +90 -0
  54. package/bundled-skills/bug-bounty/SKILL.md +447 -0
  55. package/bundled-skills/bug-bounty/references/details.md +1316 -0
  56. package/bundled-skills/bugcrowd-reporting/SKILL.md +351 -0
  57. package/bundled-skills/business-continuity/SKILL.md +463 -0
  58. package/bundled-skills/career-ops/SKILL.md +186 -0
  59. package/bundled-skills/cdn-setup/SKILL.md +374 -0
  60. package/bundled-skills/change-management/SKILL.md +438 -0
  61. package/bundled-skills/change-management/references/details.md +105 -0
  62. package/bundled-skills/circleci/SKILL.md +475 -0
  63. package/bundled-skills/cis-benchmarks/SKILL.md +150 -0
  64. package/bundled-skills/cloudflare-pages/SKILL.md +318 -0
  65. package/bundled-skills/cloudflare-r2/SKILL.md +353 -0
  66. package/bundled-skills/cloudflare-workers/SKILL.md +415 -0
  67. package/bundled-skills/cloudflare-zero-trust/SKILL.md +361 -0
  68. package/bundled-skills/cloudformation/SKILL.md +461 -0
  69. package/bundled-skills/constraint-driven-development/SKILL.md +335 -0
  70. package/bundled-skills/constraint-driven-development/references/floor-guard.md +99 -0
  71. package/bundled-skills/container-hardening/SKILL.md +126 -0
  72. package/bundled-skills/container-registries/SKILL.md +435 -0
  73. package/bundled-skills/container-scanning/SKILL.md +416 -0
  74. package/bundled-skills/convex-backend/SKILL.md +338 -0
  75. package/bundled-skills/dast-scanning/SKILL.md +437 -0
  76. package/bundled-skills/database-backups/SKILL.md +425 -0
  77. package/bundled-skills/datadog/SKILL.md +487 -0
  78. package/bundled-skills/dependency-scanning/SKILL.md +457 -0
  79. package/bundled-skills/devcontainers-nix/SKILL.md +416 -0
  80. package/bundled-skills/disaster-recovery/SKILL.md +374 -0
  81. package/bundled-skills/disaster-recovery/references/details.md +219 -0
  82. package/bundled-skills/dns-management/SKILL.md +375 -0
  83. package/bundled-skills/docker-compose/SKILL.md +482 -0
  84. package/bundled-skills/docker-management/SKILL.md +426 -0
  85. package/bundled-skills/ebpf-observability/SKILL.md +436 -0
  86. package/bundled-skills/ebpf-observability/references/details.md +542 -0
  87. package/bundled-skills/elk-stack/SKILL.md +487 -0
  88. package/bundled-skills/enterprise-vpn-attack/SKILL.md +395 -0
  89. package/bundled-skills/evidence-hygiene/SKILL.md +404 -0
  90. package/bundled-skills/feature-flags/SKILL.md +426 -0
  91. package/bundled-skills/feature-flags/references/details.md +86 -0
  92. package/bundled-skills/fedramp-compliance/SKILL.md +453 -0
  93. package/bundled-skills/firebase-app-platform/SKILL.md +381 -0
  94. package/bundled-skills/firewall-config/SKILL.md +479 -0
  95. package/bundled-skills/gcp-audit-logs/SKILL.md +452 -0
  96. package/bundled-skills/gcp-audit-logs/references/details.md +56 -0
  97. package/bundled-skills/gcp-cloud-functions/SKILL.md +284 -0
  98. package/bundled-skills/gcp-cloud-sql/SKILL.md +277 -0
  99. package/bundled-skills/gcp-compute/SKILL.md +319 -0
  100. package/bundled-skills/gcp-gke/SKILL.md +307 -0
  101. package/bundled-skills/gcp-networking/SKILL.md +293 -0
  102. package/bundled-skills/gcp-secret-manager/SKILL.md +421 -0
  103. package/bundled-skills/gcp-secret-manager/references/details.md +131 -0
  104. package/bundled-skills/gdpr-compliance/SKILL.md +451 -0
  105. package/bundled-skills/gdpr-compliance/references/details.md +145 -0
  106. package/bundled-skills/geo-audit/SKILL.md +368 -0
  107. package/bundled-skills/geo-brand-mentions/SKILL.md +68 -0
  108. package/bundled-skills/geo-brand-mentions/references/details.md +471 -0
  109. package/bundled-skills/geo-citability/SKILL.md +350 -0
  110. package/bundled-skills/geo-compare/SKILL.md +340 -0
  111. package/bundled-skills/geo-content/SKILL.md +383 -0
  112. package/bundled-skills/geo-crawlers/SKILL.md +408 -0
  113. package/bundled-skills/geo-llmstxt/SKILL.md +464 -0
  114. package/bundled-skills/geo-platform-optimizer/SKILL.md +314 -0
  115. package/bundled-skills/geo-proposal/SKILL.md +378 -0
  116. package/bundled-skills/geo-prospect/SKILL.md +225 -0
  117. package/bundled-skills/geo-report/SKILL.md +436 -0
  118. package/bundled-skills/geo-report-pdf/SKILL.md +157 -0
  119. package/bundled-skills/geo-schema/SKILL.md +408 -0
  120. package/bundled-skills/geo-technical/SKILL.md +78 -0
  121. package/bundled-skills/geo-technical/references/details.md +543 -0
  122. package/bundled-skills/git-workflow/SKILL.md +460 -0
  123. package/bundled-skills/github-actions/SKILL.md +368 -0
  124. package/bundled-skills/gitlab-ci/SKILL.md +340 -0
  125. package/bundled-skills/gpu-kubernetes-operations/SKILL.md +468 -0
  126. package/bundled-skills/gpu-server-management/SKILL.md +236 -0
  127. package/bundled-skills/hashicorp-vault/SKILL.md +408 -0
  128. package/bundled-skills/helm-charts/SKILL.md +469 -0
  129. package/bundled-skills/hipaa-compliance/SKILL.md +451 -0
  130. package/bundled-skills/hunt-aspnet/SKILL.md +321 -0
  131. package/bundled-skills/hunt-ato/SKILL.md +184 -0
  132. package/bundled-skills/hunt-auth-bypass/SKILL.md +426 -0
  133. package/bundled-skills/hunt-auth-bypass/references/details.md +80 -0
  134. package/bundled-skills/hunt-brute-force/SKILL.md +341 -0
  135. package/bundled-skills/hunt-business-logic/SKILL.md +281 -0
  136. package/bundled-skills/hunt-cache-poison/SKILL.md +382 -0
  137. package/bundled-skills/hunt-captcha-bypass/SKILL.md +136 -0
  138. package/bundled-skills/hunt-cicd/SKILL.md +311 -0
  139. package/bundled-skills/hunt-clickjacking/SKILL.md +110 -0
  140. package/bundled-skills/hunt-cors/SKILL.md +335 -0
  141. package/bundled-skills/hunt-dom/SKILL.md +323 -0
  142. package/bundled-skills/hunt-exceptional-conditions/SKILL.md +111 -0
  143. package/bundled-skills/hunt-file-upload/SKILL.md +202 -0
  144. package/bundled-skills/hunt-fintech-graphql/SKILL.md +289 -0
  145. package/bundled-skills/hunt-forgot-password/SKILL.md +114 -0
  146. package/bundled-skills/hunt-grpc/SKILL.md +317 -0
  147. package/bundled-skills/hunt-host-header/SKILL.md +309 -0
  148. package/bundled-skills/hunt-html-injection/SKILL.md +106 -0
  149. package/bundled-skills/hunt-http-smuggling/SKILL.md +129 -0
  150. package/bundled-skills/hunt-http-smuggling/references/phase2h-smuggling-cachepoison.md +177 -0
  151. package/bundled-skills/hunt-idor/SKILL.md +434 -0
  152. package/bundled-skills/hunt-jwt-crypto/SKILL.md +221 -0
  153. package/bundled-skills/hunt-k8s/SKILL.md +337 -0
  154. package/bundled-skills/hunt-laravel/SKILL.md +255 -0
  155. package/bundled-skills/hunt-ldap/SKILL.md +351 -0
  156. package/bundled-skills/hunt-lfi/SKILL.md +311 -0
  157. package/bundled-skills/hunt-llm-ai/SKILL.md +289 -0
  158. package/bundled-skills/hunt-mfa-bypass/SKILL.md +177 -0
  159. package/bundled-skills/hunt-misc/SKILL.md +378 -0
  160. package/bundled-skills/hunt-nextjs/SKILL.md +299 -0
  161. package/bundled-skills/hunt-nodejs/SKILL.md +263 -0
  162. package/bundled-skills/hunt-nosqli/SKILL.md +210 -0
  163. package/bundled-skills/hunt-ntlm-info/SKILL.md +314 -0
  164. package/bundled-skills/hunt-oauth/SKILL.md +459 -0
  165. package/bundled-skills/hunt-open-redirect/SKILL.md +223 -0
  166. package/bundled-skills/hunt-race-condition/SKILL.md +381 -0
  167. package/bundled-skills/hunt-race-condition/references/details.md +159 -0
  168. package/bundled-skills/hunt-rag-vector/SKILL.md +212 -0
  169. package/bundled-skills/hunt-rce/SKILL.md +444 -0
  170. package/bundled-skills/hunt-rce/references/details.md +110 -0
  171. package/bundled-skills/hunt-saml/SKILL.md +156 -0
  172. package/bundled-skills/hunt-session/SKILL.md +342 -0
  173. package/bundled-skills/hunt-shadow-api/SKILL.md +198 -0
  174. package/bundled-skills/hunt-source-leak/SKILL.md +345 -0
  175. package/bundled-skills/hunt-spa-api/SKILL.md +163 -0
  176. package/bundled-skills/hunt-springboot/SKILL.md +285 -0
  177. package/bundled-skills/hunt-sqli/SKILL.md +466 -0
  178. package/bundled-skills/hunt-ssrf/SKILL.md +396 -0
  179. package/bundled-skills/hunt-ssrf/references/details.md +179 -0
  180. package/bundled-skills/hunt-ssti/SKILL.md +163 -0
  181. package/bundled-skills/hunt-subdomain/SKILL.md +379 -0
  182. package/bundled-skills/hunt-tls-network/SKILL.md +399 -0
  183. package/bundled-skills/hunt-xxe/SKILL.md +466 -0
  184. package/bundled-skills/i-have-adhd/SKILL.md +170 -0
  185. package/bundled-skills/identity-access-management/SKILL.md +382 -0
  186. package/bundled-skills/identity-access-management/references/details.md +524 -0
  187. package/bundled-skills/incident-management/SKILL.md +484 -0
  188. package/bundled-skills/incident-response/SKILL.md +448 -0
  189. package/bundled-skills/incident-response/references/details.md +113 -0
  190. package/bundled-skills/interview-me/SKILL.md +248 -0
  191. package/bundled-skills/iso27001-compliance/SKILL.md +460 -0
  192. package/bundled-skills/jenkins/SKILL.md +462 -0
  193. package/bundled-skills/jev-use/SKILL.md +158 -0
  194. package/bundled-skills/kubernetes-hardening/SKILL.md +154 -0
  195. package/bundled-skills/kubernetes-ops/SKILL.md +449 -0
  196. package/bundled-skills/kubernetes-ops/references/details.md +108 -0
  197. package/bundled-skills/kustomize/SKILL.md +478 -0
  198. package/bundled-skills/linux-administration/SKILL.md +367 -0
  199. package/bundled-skills/linux-hardening/SKILL.md +154 -0
  200. package/bundled-skills/llm-app-security/SKILL.md +389 -0
  201. package/bundled-skills/llm-app-security/references/details.md +674 -0
  202. package/bundled-skills/llm-caching/SKILL.md +334 -0
  203. package/bundled-skills/llm-cost-optimization/SKILL.md +311 -0
  204. package/bundled-skills/llm-fine-tuning/SKILL.md +329 -0
  205. package/bundled-skills/llm-gateway/SKILL.md +282 -0
  206. package/bundled-skills/llm-inference-scaling/SKILL.md +286 -0
  207. package/bundled-skills/llmops-platform-engineering/SKILL.md +472 -0
  208. package/bundled-skills/load-balancing/SKILL.md +403 -0
  209. package/bundled-skills/loki-logging/SKILL.md +479 -0
  210. package/bundled-skills/m365-entra-attack/SKILL.md +423 -0
  211. package/bundled-skills/mac-mini-llm-lab/SKILL.md +350 -0
  212. package/bundled-skills/mcp-server-security/SKILL.md +356 -0
  213. package/bundled-skills/mcp-server-security/references/details.md +745 -0
  214. package/bundled-skills/mdm-device-management/SKILL.md +404 -0
  215. package/bundled-skills/mdm-device-management/references/details.md +410 -0
  216. package/bundled-skills/meme-coin-audit/SKILL.md +402 -0
  217. package/bundled-skills/mid-engagement-ir-detection/SKILL.md +377 -0
  218. package/bundled-skills/model-registry-governance/SKILL.md +452 -0
  219. package/bundled-skills/model-serving-kubernetes/SKILL.md +339 -0
  220. package/bundled-skills/model-supply-chain-security/SKILL.md +427 -0
  221. package/bundled-skills/mongodb/SKILL.md +436 -0
  222. package/bundled-skills/multi-tenant-llm-hosting/SKILL.md +435 -0
  223. package/bundled-skills/multi-tenant-llm-hosting/references/details.md +211 -0
  224. package/bundled-skills/mysql/SKILL.md +390 -0
  225. package/bundled-skills/new-relic/SKILL.md +472 -0
  226. package/bundled-skills/nfs-storage/SKILL.md +356 -0
  227. package/bundled-skills/object-storage/SKILL.md +378 -0
  228. package/bundled-skills/offensive-osint/SKILL.md +443 -0
  229. package/bundled-skills/okta-attack/SKILL.md +436 -0
  230. package/bundled-skills/ollama-stack/SKILL.md +379 -0
  231. package/bundled-skills/openclaw-deployment-hardening/SKILL.md +135 -0
  232. package/bundled-skills/openclaw-local-mac-mini/SKILL.md +426 -0
  233. package/bundled-skills/openclaw-local-mac-mini/references/details.md +221 -0
  234. package/bundled-skills/openclaw-security-hardening/SKILL.md +135 -0
  235. package/bundled-skills/openshift/SKILL.md +485 -0
  236. package/bundled-skills/opentelemetry/SKILL.md +438 -0
  237. package/bundled-skills/opentelemetry/references/details.md +78 -0
  238. package/bundled-skills/opentofu-migration/SKILL.md +349 -0
  239. package/bundled-skills/osint-methodology/SKILL.md +460 -0
  240. package/bundled-skills/osint-methodology/references/details.md +1350 -0
  241. package/bundled-skills/pci-dss-compliance/SKILL.md +446 -0
  242. package/bundled-skills/penetration-testing/SKILL.md +152 -0
  243. package/bundled-skills/performance-tuning/SKILL.md +381 -0
  244. package/bundled-skills/planetscale/SKILL.md +297 -0
  245. package/bundled-skills/platform-engineering/SKILL.md +348 -0
  246. package/bundled-skills/platform-engineering/references/details.md +944 -0
  247. package/bundled-skills/podman/SKILL.md +405 -0
  248. package/bundled-skills/policy-as-code/SKILL.md +434 -0
  249. package/bundled-skills/policy-as-code/references/details.md +204 -0
  250. package/bundled-skills/postgresql-devsec/SKILL.md +378 -0
  251. package/bundled-skills/prometheus-grafana/SKILL.md +469 -0
  252. package/bundled-skills/prompt-injection-defense/SKILL.md +483 -0
  253. package/bundled-skills/rag-infrastructure/SKILL.md +269 -0
  254. package/bundled-skills/rag-observability-evals/SKILL.md +444 -0
  255. package/bundled-skills/rag-observability-evals/references/details.md +92 -0
  256. package/bundled-skills/recon-scope-triage/SKILL.md +128 -0
  257. package/bundled-skills/redis/SKILL.md +421 -0
  258. package/bundled-skills/redteam-report-template/SKILL.md +370 -0
  259. package/bundled-skills/report-writing/SKILL.md +426 -0
  260. package/bundled-skills/report-writing/references/details.md +187 -0
  261. package/bundled-skills/reverse-proxy/SKILL.md +420 -0
  262. package/bundled-skills/runbook-creation/SKILL.md +438 -0
  263. package/bundled-skills/runbook-creation/references/details.md +71 -0
  264. package/bundled-skills/saas-security-posture/SKILL.md +415 -0
  265. package/bundled-skills/sast-scanning/SKILL.md +444 -0
  266. package/bundled-skills/sbom-supply-chain/SKILL.md +433 -0
  267. package/bundled-skills/security-arsenal/SKILL.md +446 -0
  268. package/bundled-skills/security-arsenal/references/details.md +540 -0
  269. package/bundled-skills/security-automation/SKILL.md +146 -0
  270. package/bundled-skills/semantic-versioning/SKILL.md +434 -0
  271. package/bundled-skills/semantic-versioning/references/details.md +83 -0
  272. package/bundled-skills/service-mesh/SKILL.md +422 -0
  273. package/bundled-skills/soc2-compliance/SKILL.md +409 -0
  274. package/bundled-skills/sops-encryption/SKILL.md +124 -0
  275. package/bundled-skills/sre-dashboards/SKILL.md +143 -0
  276. package/bundled-skills/ssh-configuration/SKILL.md +324 -0
  277. package/bundled-skills/ssl-tls-management/SKILL.md +428 -0
  278. package/bundled-skills/ssl-tls-management/references/details.md +99 -0
  279. package/bundled-skills/startup-it-troubleshooting/SKILL.md +415 -0
  280. package/bundled-skills/supply-chain-attack-recon/SKILL.md +453 -0
  281. package/bundled-skills/supply-chain-attack-recon/references/details.md +258 -0
  282. package/bundled-skills/systemd-services/SKILL.md +379 -0
  283. package/bundled-skills/terraform-aws/SKILL.md +125 -0
  284. package/bundled-skills/terraform-azure/SKILL.md +415 -0
  285. package/bundled-skills/terraform-azure/references/details.md +231 -0
  286. package/bundled-skills/terraform-gcp/SKILL.md +369 -0
  287. package/bundled-skills/threat-modeling/SKILL.md +487 -0
  288. package/bundled-skills/user-management/SKILL.md +383 -0
  289. package/bundled-skills/using-agent-skills/SKILL.md +220 -0
  290. package/bundled-skills/vector-database-ops/SKILL.md +300 -0
  291. package/bundled-skills/vendor-management/SKILL.md +439 -0
  292. package/bundled-skills/vendor-management/references/details.md +109 -0
  293. package/bundled-skills/vercel-deployments/SKILL.md +296 -0
  294. package/bundled-skills/vllm-server/SKILL.md +236 -0
  295. package/bundled-skills/vmware-vcenter-attack/SKILL.md +412 -0
  296. package/bundled-skills/vpn-setup/SKILL.md +452 -0
  297. package/bundled-skills/vulnerability-scanning/SKILL.md +448 -0
  298. package/bundled-skills/waf-setup/SKILL.md +354 -0
  299. package/bundled-skills/waf-setup/references/details.md +211 -0
  300. package/bundled-skills/web2-recon/SKILL.md +440 -0
  301. package/bundled-skills/web2-recon/references/details.md +319 -0
  302. package/bundled-skills/web3-audit/SKILL.md +445 -0
  303. package/bundled-skills/web3-audit/references/details.md +224 -0
  304. package/bundled-skills/windows-hardening/SKILL.md +454 -0
  305. package/bundled-skills/windows-hardening/references/details.md +204 -0
  306. package/bundled-skills/windows-server/SKILL.md +318 -0
  307. package/bundled-skills/zero-trust/SKILL.md +461 -0
  308. package/package.json +1 -1
  309. package/skills_index.json +6943 -323
@@ -0,0 +1,479 @@
1
+ ---
2
+ name: loki-logging
3
+ description: Configure Grafana Loki for log aggregation and analysis.
4
+ category: devops
5
+ risk: critical
6
+ source: https://github.com/BagelHole/DevOps-Security-Agent-Skills
7
+ source_repo: BagelHole/DevOps-Security-Agent-Skills
8
+ source_type: community
9
+ date_added: '2026-09-20'
10
+ license: MIT
11
+ license_source: https://github.com/BagelHole/DevOps-Security-Agent-Skills/blob/main/LICENSE
12
+ compatibility: Requires the relevant platform CLIs (kubectl, helm, terraform, git,
13
+ CI runners) and authorized access to the target environment. Docs-only; helper scripts
14
+ and templates not bundled.
15
+ metadata:
16
+ author: devops-skills
17
+ version: '1.0'
18
+ ---
19
+
20
+ # Grafana Loki
21
+
22
+ Aggregate and query logs with Grafana Loki, the Prometheus-inspired logging system.
23
+
24
+ ## When to Use This Skill
25
+
26
+ Use this skill when:
27
+ - Implementing cost-effective log aggregation
28
+ - Building logging for Kubernetes environments
29
+ - Integrating logs with Grafana dashboards
30
+ - Querying logs with label-based filtering
31
+ - Preferring lighter-weight alternative to ELK
32
+
33
+ ## Prerequisites
34
+
35
+ - Docker or Kubernetes
36
+ - Grafana for visualization
37
+ - Promtail or other log shipper
38
+
39
+ ## Architecture Overview
40
+
41
+ ```
42
+ ┌─────────────┐ ┌──────────┐ ┌──────────┐
43
+ │ Application │────▶│ Promtail │────▶│ Loki │
44
+ └─────────────┘ └──────────┘ └──────────┘
45
+
46
+
47
+ ┌──────────┐
48
+ │ Grafana │
49
+ └──────────┘
50
+ ```
51
+
52
+ ## Docker Deployment
53
+
54
+ ```yaml
55
+ # docker-compose.yml
56
+ version: '3.8'
57
+
58
+ services:
59
+ loki:
60
+ image: grafana/loki:2.9.0
61
+ ports:
62
+ - "3100:3100"
63
+ volumes:
64
+ - ./loki-config.yaml:/etc/loki/local-config.yaml
65
+ - loki-data:/loki
66
+ command: -config.file=/etc/loki/local-config.yaml
67
+
68
+ promtail:
69
+ image: grafana/promtail:2.9.0
70
+ volumes:
71
+ - ./promtail-config.yaml:/etc/promtail/config.yaml
72
+ - /var/log:/var/log:ro
73
+ - /var/lib/docker/containers:/var/lib/docker/containers:ro
74
+ command: -config.file=/etc/promtail/config.yaml
75
+
76
+ grafana:
77
+ image: grafana/grafana:10.2.0
78
+ ports:
79
+ - "3000:3000"
80
+ volumes:
81
+ - grafana-data:/var/lib/grafana
82
+ - ./grafana/provisioning:/etc/grafana/provisioning
83
+ environment:
84
+ - GF_AUTH_ANONYMOUS_ENABLED=true
85
+ - GF_AUTH_ANONYMOUS_ORG_ROLE=Admin
86
+
87
+ volumes:
88
+ loki-data:
89
+ grafana-data:
90
+ ```
91
+
92
+ ## Loki Configuration
93
+
94
+ ```yaml
95
+ # loki-config.yaml
96
+ auth_enabled: false
97
+
98
+ server:
99
+ http_listen_port: 3100
100
+
101
+ common:
102
+ path_prefix: /loki
103
+ storage:
104
+ filesystem:
105
+ chunks_directory: /loki/chunks
106
+ rules_directory: /loki/rules
107
+ replication_factor: 1
108
+ ring:
109
+ kvstore:
110
+ store: inmemory
111
+
112
+ schema_config:
113
+ configs:
114
+ - from: 2020-10-24
115
+ store: boltdb-shipper
116
+ object_store: filesystem
117
+ schema: v11
118
+ index:
119
+ prefix: index_
120
+ period: 24h
121
+
122
+ storage_config:
123
+ boltdb_shipper:
124
+ active_index_directory: /loki/index
125
+ cache_location: /loki/cache
126
+ shared_store: filesystem
127
+
128
+ limits_config:
129
+ reject_old_samples: true
130
+ reject_old_samples_max_age: 168h
131
+ max_query_series: 5000
132
+ max_query_parallelism: 2
133
+
134
+ chunk_store_config:
135
+ max_look_back_period: 168h
136
+
137
+ table_manager:
138
+ retention_deletes_enabled: true
139
+ retention_period: 168h
140
+ ```
141
+
142
+ ## Promtail Configuration
143
+
144
+ ```yaml
145
+ # promtail-config.yaml
146
+ server:
147
+ http_listen_port: 9080
148
+ grpc_listen_port: 0
149
+
150
+ positions:
151
+ filename: /tmp/positions.yaml
152
+
153
+ clients:
154
+ - url: http://loki:3100/loki/api/v1/push
155
+
156
+ scrape_configs:
157
+ # System logs
158
+ - job_name: system
159
+ static_configs:
160
+ - targets:
161
+ - localhost
162
+ labels:
163
+ job: varlogs
164
+ __path__: /var/log/*.log
165
+
166
+ # Docker container logs
167
+ - job_name: docker
168
+ docker_sd_configs:
169
+ - host: unix:///var/run/docker.sock
170
+ refresh_interval: 5s
171
+ relabel_configs:
172
+ - source_labels: ['__meta_docker_container_name']
173
+ regex: '/(.*)'
174
+ target_label: 'container'
175
+ - source_labels: ['__meta_docker_container_log_stream']
176
+ target_label: 'stream'
177
+
178
+ # Application logs with parsing
179
+ - job_name: application
180
+ static_configs:
181
+ - targets:
182
+ - localhost
183
+ labels:
184
+ job: application
185
+ __path__: /var/log/app/*.log
186
+ pipeline_stages:
187
+ - json:
188
+ expressions:
189
+ level: level
190
+ message: message
191
+ timestamp: timestamp
192
+ - labels:
193
+ level:
194
+ - timestamp:
195
+ source: timestamp
196
+ format: RFC3339
197
+ ```
198
+
199
+ ## Kubernetes Deployment
200
+
201
+ ```bash
202
+ # Using Helm
203
+ helm repo add grafana https://grafana.github.io/helm-charts
204
+ helm install loki grafana/loki-stack \
205
+ --namespace monitoring \
206
+ --create-namespace \
207
+ --set grafana.enabled=true \
208
+ --set promtail.enabled=true
209
+ ```
210
+
211
+ ### Promtail DaemonSet
212
+
213
+ ```yaml
214
+ apiVersion: apps/v1
215
+ kind: DaemonSet
216
+ metadata:
217
+ name: promtail
218
+ namespace: monitoring
219
+ spec:
220
+ selector:
221
+ matchLabels:
222
+ app: promtail
223
+ template:
224
+ metadata:
225
+ labels:
226
+ app: promtail
227
+ spec:
228
+ containers:
229
+ - name: promtail
230
+ image: grafana/promtail:2.9.0
231
+ args:
232
+ - -config.file=/etc/promtail/promtail.yaml
233
+ volumeMounts:
234
+ - name: config
235
+ mountPath: /etc/promtail
236
+ - name: varlog
237
+ mountPath: /var/log
238
+ - name: varlibdockercontainers
239
+ mountPath: /var/lib/docker/containers
240
+ readOnly: true
241
+ volumes:
242
+ - name: config
243
+ configMap:
244
+ name: promtail-config
245
+ - name: varlog
246
+ hostPath:
247
+ path: /var/log
248
+ - name: varlibdockercontainers
249
+ hostPath:
250
+ path: /var/lib/docker/containers
251
+ ```
252
+
253
+ ## LogQL Queries
254
+
255
+ ### Basic Queries
256
+
257
+ ```logql
258
+ # All logs from a job
259
+ {job="application"}
260
+
261
+ # Filter by label
262
+ {job="application", level="error"}
263
+
264
+ # Multiple labels
265
+ {namespace="production", container="api"}
266
+
267
+ # Regex match
268
+ {job=~"app.*"}
269
+ ```
270
+
271
+ ### Log Pipeline
272
+
273
+ ```logql
274
+ # Filter by content
275
+ {job="application"} |= "error"
276
+
277
+ # Exclude content
278
+ {job="application"} != "debug"
279
+
280
+ # Regex filter
281
+ {job="application"} |~ "user_id=[0-9]+"
282
+
283
+ # JSON parsing
284
+ {job="application"} | json | level="error"
285
+
286
+ # Line format
287
+ {job="application"} | json | line_format "{{.level}}: {{.message}}"
288
+ ```
289
+
290
+ ### Metric Queries
291
+
292
+ ```logql
293
+ # Count logs per second
294
+ count_over_time({job="application"}[5m])
295
+
296
+ # Rate of errors
297
+ rate({job="application", level="error"}[5m])
298
+
299
+ # Sum by label
300
+ sum by (level) (count_over_time({job="application"}[5m]))
301
+
302
+ # Top services by error count
303
+ topk(5, sum by (service) (count_over_time({level="error"}[1h])))
304
+ ```
305
+
306
+ ### Aggregations
307
+
308
+ ```logql
309
+ # Average log line length
310
+ avg_over_time({job="application"} | unwrap line_length [5m])
311
+
312
+ # Percentile of numeric field
313
+ quantile_over_time(0.95, {job="application"} | json | unwrap response_time [5m])
314
+
315
+ # Error percentage
316
+ sum(rate({job="application", level="error"}[5m]))
317
+ /
318
+ sum(rate({job="application"}[5m])) * 100
319
+ ```
320
+
321
+ ## Pipeline Stages
322
+
323
+ ```yaml
324
+ # promtail-config.yaml
325
+ pipeline_stages:
326
+ # Parse JSON logs
327
+ - json:
328
+ expressions:
329
+ level: level
330
+ message: msg
331
+ trace_id: trace_id
332
+
333
+ # Extract with regex
334
+ - regex:
335
+ expression: 'user_id=(?P<user_id>\d+)'
336
+
337
+ # Add labels from parsed fields
338
+ - labels:
339
+ level:
340
+ user_id:
341
+
342
+ # Modify timestamp
343
+ - timestamp:
344
+ source: timestamp
345
+ format: '2006-01-02T15:04:05.000Z'
346
+
347
+ # Filter logs
348
+ - match:
349
+ selector: '{level="debug"}'
350
+ action: drop
351
+
352
+ # Add static labels
353
+ - static_labels:
354
+ environment: production
355
+
356
+ # Modify log line
357
+ - template:
358
+ source: message
359
+ template: '{{ ToUpper .Value }}'
360
+ ```
361
+
362
+ ## Grafana Integration
363
+
364
+ ### Data Source Configuration
365
+
366
+ ```yaml
367
+ # grafana/provisioning/datasources/loki.yaml
368
+ apiVersion: 1
369
+
370
+ datasources:
371
+ - name: Loki
372
+ type: loki
373
+ access: proxy
374
+ url: http://loki:3100
375
+ isDefault: false
376
+ jsonData:
377
+ maxLines: 1000
378
+ ```
379
+
380
+ ### Dashboard Panel
381
+
382
+ ```json
383
+ {
384
+ "title": "Application Logs",
385
+ "type": "logs",
386
+ "datasource": "Loki",
387
+ "targets": [
388
+ {
389
+ "expr": "{job=\"application\"} | json",
390
+ "refId": "A"
391
+ }
392
+ ],
393
+ "options": {
394
+ "showTime": true,
395
+ "showLabels": true,
396
+ "wrapLogMessage": true
397
+ }
398
+ }
399
+ ```
400
+
401
+ ## Recording Rules
402
+
403
+ ```yaml
404
+ # loki-rules.yaml
405
+ groups:
406
+ - name: error_rates
407
+ interval: 1m
408
+ rules:
409
+ - record: job:log_errors:rate5m
410
+ expr: |
411
+ sum by (job) (rate({level="error"}[5m]))
412
+ ```
413
+
414
+ ## Alerting
415
+
416
+ ```yaml
417
+ # loki-alerts.yaml
418
+ groups:
419
+ - name: log_alerts
420
+ rules:
421
+ - alert: HighErrorRate
422
+ expr: |
423
+ sum(rate({level="error"}[5m])) > 10
424
+ for: 5m
425
+ labels:
426
+ severity: critical
427
+ annotations:
428
+ summary: "High error rate in logs"
429
+ description: "Error rate is {{ $value }} errors/second"
430
+ ```
431
+
432
+ ## Common Issues
433
+
434
+ ### Issue: High Memory Usage
435
+ **Problem**: Loki consuming too much memory
436
+ **Solution**: Reduce max_query_series, limit query time range
437
+
438
+ ### Issue: Logs Not Appearing
439
+ **Problem**: Promtail not shipping logs
440
+ **Solution**: Check positions file, verify file paths, check label configuration
441
+
442
+ ### Issue: Query Timeout
443
+ **Problem**: LogQL queries timing out
444
+ **Solution**: Add more specific label filters, reduce time range
445
+
446
+ ### Issue: Ingestion Rate Limit
447
+ **Problem**: Logs being dropped
448
+ **Solution**: Increase per_stream_rate_limit in limits_config
449
+
450
+ ## Best Practices
451
+
452
+ - Use meaningful labels (avoid high cardinality)
453
+ - Filter by labels before log content
454
+ - Parse logs at collection time with Promtail
455
+ - Set appropriate retention periods
456
+ - Use recording rules for common queries
457
+ - Implement proper multitenancy for large deployments
458
+ - Monitor Loki's own metrics
459
+ - Use chunk caching for better performance
460
+
461
+ ## Related Skills
462
+
463
+ - prometheus-grafana (`prometheus-grafana`) - Metrics monitoring
464
+ - elk-stack (`elk-stack`) - Alternative logging
465
+ - alerting-oncall (`alerting-oncall`) - Alert management
466
+
467
+ ## Limitations
468
+
469
+ - Guidance executes against real environments: confirm target, blast radius, and rollback plan before applying anything.
470
+ - Never deploy to production without explicit approval. Docs-only import: upstream scripts and templates not bundled.
471
+
472
+ ### Example
473
+
474
+ ```bash
475
+ git status && git diff --stat
476
+ kubectl diff -f manifest.yaml
477
+ ```
478
+
479
+ > Adapted from [BagelHole/DevOps-Security-Agent-Skills](https://github.com/BagelHole/DevOps-Security-Agent-Skills) (MIT); frontmatter, When to Use/Limitations, and safety boundaries added for upstream compliance. Docs-only import: helper scripts and templates not bundled.