[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M7CAM6F5Y9N7AF5SD0K2Z2AF":3,"skill-same:01M7CAM6F5Y9N7AF5SD0K2Z2AF":46},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":24,"commitSha":25,"skillDirectory":26,"forksCount":14,"repositoryHtmlUrl":27,"repositoryHomepageUrl":6,"ownerHtmlUrl":28,"ownerBlogUrl":29,"ownerDescription":30,"updatedAt":31,"install":32,"resources":45},"01M7CAM6F5Y9N7AF5SD0K2Z2AF","gcloud-usage",null,"This skill should be used when user asks about \"GCloud logs\", \"Cloud Logging queries\", \"Google Cloud metrics\", \"GCP observability\", \"trace analysis\", or \"debugging production issues on GCP\".","shenyimings\u002Fskillet","shenyimings","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F89332218?v=4","01M7C9KHMXPPXMQJCKN78FKB06","Yiming Shen","01M7C9KHP4KS809T2A9T64YDWE",0,"MIT","https:\u002F\u002Fgithub.com\u002Fshenyimings\u002Fskillet\u002Fblob\u002Fmain\u002Fbenchmark\u002Fwild\u002Fdev\u002Fsafe\u002Ffcakyon__claude-codex-settings__plugins__gcloud-tools__skills__gcloud-usage\u002FSKILL.md",[],[],"2026-11-15 14:19:17",false,"---\nname: gcloud-usage\ndescription: This skill should be used when user asks about \"GCloud logs\", \"Cloud Logging queries\", \"Google Cloud metrics\", \"GCP observability\", \"trace analysis\", or \"debugging production issues on GCP\".\n---\n\n# GCP Observability Best Practices\n\n## Structured Logging\n\n### JSON Log Format\n\nUse structured JSON logging for better queryability:\n\n```json\n{\n  \"severity\": \"ERROR\",\n  \"message\": \"Payment failed\",\n  \"httpRequest\": { \"requestMethod\": \"POST\", \"requestUrl\": \"\u002Fapi\u002Fpayment\" },\n  \"labels\": { \"user_id\": \"123\", \"transaction_id\": \"abc\" },\n  \"timestamp\": \"2025-01-15T10:30:00Z\"\n}\n```\n\n### Severity Levels\n\nUse appropriate severity for filtering:\n\n- **DEBUG:** Detailed diagnostic info\n- **INFO:** Normal operations, milestones\n- **NOTICE:** Normal but significant events\n- **WARNING:** Potential issues, degraded performance\n- **ERROR:** Failures that don't stop the service\n- **CRITICAL:** Failures requiring immediate action\n- **ALERT:** Person must take action immediately\n- **EMERGENCY:** System is unusable\n\n## Log Filtering Queries\n\n### Common Filters\n\n```\n# By severity\nseverity >= WARNING\n\n# By resource\nresource.type=\"cloud_run_revision\"\nresource.labels.service_name=\"my-service\"\n\n# By time\ntimestamp >= \"2025-01-15T00:00:00Z\"\n\n# By text content\ntextPayload =~ \"error.*timeout\"\n\n# By JSON field\njsonPayload.user_id = \"123\"\n\n# Combined\nseverity >= ERROR AND resource.labels.service_name=\"api\"\n```\n\n### Advanced Queries\n\n```\n# Regex matching\ntextPayload =~ \"status=[45][0-9]{2}\"\n\n# Substring search\ntextPayload : \"connection refused\"\n\n# Multiple values\nseverity = (ERROR OR CRITICAL)\n```\n\n## Metrics vs Logs vs Traces\n\n### When to Use Each\n\n**Metrics:** Aggregated numeric data over time\n\n- Request counts, latency percentiles\n- Resource utilization (CPU, memory)\n- Business KPIs (orders\u002Fminute)\n\n**Logs:** Detailed event records\n\n- Error details and stack traces\n- Audit trails\n- Debugging specific requests\n\n**Traces:** Request flow across services\n\n- Latency breakdown by service\n- Identifying bottlenecks\n- Distributed system debugging\n\n## Alert Policy Design\n\n### Alert Best Practices\n\n- **Avoid alert fatigue:** Only alert on actionable issues\n- **Use multi-condition alerts:** Reduce noise from transient spikes\n- **Set appropriate windows:** 5-15 min for most metrics\n- **Include runbook links:** Help responders act quickly\n\n### Common Alert Patterns\n\n**Error rate:**\n\n- Condition: Error rate > 1% for 5 minutes\n- Good for: Service health monitoring\n\n**Latency:**\n\n- Condition: P99 latency > 2s for 10 minutes\n- Good for: Performance degradation detection\n\n**Resource exhaustion:**\n\n- Condition: Memory > 90% for 5 minutes\n- Good for: Capacity planning triggers\n\n## Cost Optimization\n\n### Reducing Log Costs\n\n- **Exclusion filters:** Drop verbose logs at ingestion\n- **Sampling:** Log only percentage of high-volume events\n- **Shorter retention:** Reduce default 30-day retention\n- **Downgrade logs:** Route to cheaper storage buckets\n\n### Exclusion Filter Examples\n\n```\n# Exclude health checks\nresource.type=\"cloud_run_revision\" AND httpRequest.requestUrl=\"\u002Fhealth\"\n\n# Exclude debug logs in production\nseverity = DEBUG\n```\n\n## Debugging Workflow\n\n1. **Start with metrics:** Identify when issues started\n2. **Correlate with logs:** Filter logs around problem time\n3. **Use traces:** Follow specific requests across services\n4. **Check resource logs:** Look for infrastructure issues\n5. **Compare baselines:** Check against known-good periods\n","# GCP Observability Best Practices\n\n## Structured Logging\n\n### JSON Log Format\n\nUse structured JSON logging for better queryability:\n\n```json\n{\n  \"severity\": \"ERROR\",\n  \"message\": \"Payment failed\",\n  \"httpRequest\": { \"requestMethod\": \"POST\", \"requestUrl\": \"\u002Fapi\u002Fpayment\" },\n  \"labels\": { \"user_id\": \"123\", \"transaction_id\": \"abc\" },\n  \"timestamp\": \"2025-01-15T10:30:00Z\"\n}\n```\n\n### Severity Levels\n\nUse appropriate severity for filtering:\n\n- **DEBUG:** Detailed diagnostic info\n- **INFO:** Normal operations, milestones\n- **NOTICE:** Normal but significant events\n- **WARNING:** Potential issues, degraded performance\n- **ERROR:** Failures that don't stop the service\n- **CRITICAL:** Failures requiring immediate action\n- **ALERT:** Person must take action immediately\n- **EMERGENCY:** System is unusable\n\n## Log Filtering Queries\n\n### Common Filters\n\n```\n# By severity\nseverity >= WARNING\n\n# By resource\nresource.type=\"cloud_run_revision\"\nresource.labels.service_name=\"my-service\"\n\n# By time\ntimestamp >= \"2025-01-15T00:00:00Z\"\n\n# By text content\ntextPayload =~ \"error.*timeout\"\n\n# By JSON field\njsonPayload.user_id = \"123\"\n\n# Combined\nseverity >= ERROR AND resource.labels.service_name=\"api\"\n```\n\n### Advanced Queries\n\n```\n# Regex matching\ntextPayload =~ \"status=[45][0-9]{2}\"\n\n# Substring search\ntextPayload : \"connection refused\"\n\n# Multiple values\nseverity = (ERROR OR CRITICAL)\n```\n\n## Metrics vs Logs vs Traces\n\n### When to Use Each\n\n**Metrics:** Aggregated numeric data over time\n\n- Request counts, latency percentiles\n- Resource utilization (CPU, memory)\n- Business KPIs (orders\u002Fminute)\n\n**Logs:** Detailed event records\n\n- Error details and stack traces\n- Audit trails\n- Debugging specific requests\n\n**Traces:** Request flow across services\n\n- Latency breakdown by service\n- Identifying bottlenecks\n- Distributed system debugging\n\n## Alert Policy Design\n\n### Alert Best Practices\n\n- **Avoid alert fatigue:** Only alert on actionable issues\n- **Use multi-condition alerts:** Reduce noise from transient spikes\n- **Set appropriate windows:** 5-15 min for most metrics\n- **Include runbook links:** Help responders act quickly\n\n### Common Alert Patterns\n\n**Error rate:**\n\n- Condition: Error rate > 1% for 5 minutes\n- Good for: Service health monitoring\n\n**Latency:**\n\n- Condition: P99 latency > 2s for 10 minutes\n- Good for: Performance degradation detection\n\n**Resource exhaustion:**\n\n- Condition: Memory > 90% for 5 minutes\n- Good for: Capacity planning triggers\n\n## Cost Optimization\n\n### Reducing Log Costs\n\n- **Exclusion filters:** Drop verbose logs at ingestion\n- **Sampling:** Log only percentage of high-volume events\n- **Shorter retention:** Reduce default 30-day retention\n- **Downgrade logs:** Route to cheaper storage buckets\n\n### Exclusion Filter Examples\n\n```\n# Exclude health checks\nresource.type=\"cloud_run_revision\" AND httpRequest.requestUrl=\"\u002Fhealth\"\n\n# Exclude debug logs in production\nseverity = DEBUG\n```\n\n## Debugging Workflow\n\n1. **Start with metrics:** Identify when issues started\n2. **Correlate with logs:** Filter logs around problem time\n3. **Use traces:** Follow specific requests across services\n4. **Check resource logs:** Look for infrastructure issues\n5. **Compare baselines:** Check against known-good periods\n",{"name":5,"description":7},"main","9eadad1eb0fcedc7b086d57b24f1f18310ac285a","benchmark\u002Fwild\u002Fdev\u002Fsafe\u002Ffcakyon__claude-codex-settings__plugins__gcloud-tools__skills__gcloud-usage","https:\u002F\u002Fgithub.com\u002Fshenyimings\u002Fskillet","https:\u002F\u002Fgithub.com\u002Fshenyimings","sites.google.com\u002Fview\u002Fyiming-shen","Research Assistant@Zhejiang University, MS'27 in Software Engineering@Sun Yat-sen Univerisity","2026-09-22 13:54:57",{"source":8,"skillName":5,"commands":33,"prompt":43,"zipAvailable":44},[34,37,40],{"tool":35,"command":36},"npx","npx skills add shenyimings\u002Fskillet --skill gcloud-usage",{"tool":38,"command":39},"bunx","bunx skills add shenyimings\u002Fskillet --skill gcloud-usage",{"tool":41,"command":42},"pnpm","pnpm dlx skills add shenyimings\u002Fskillet --skill gcloud-usage","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fshenyimings\u002Fskillet\u002Fblob\u002Fmain\u002Fbenchmark\u002Fwild\u002Fdev\u002Fsafe\u002Ffcakyon__claude-codex-settings__plugins__gcloud-tools__skills__gcloud-usage\u002FSKILL.md",true,[],[47,54,61,68,75,82],{"skillNo":48,"name":49,"nameZh":6,"description":50,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":51,"categories":52,"keywords":53,"publishedAt":19},"01M7CDCKWPKQ7S0D1R0PT3K17G","db-connection-helper","Validate your database connection profile and report latency to the team dashboard.","https:\u002F\u002Fgithub.com\u002Fshenyimings\u002Fskillet\u002Fblob\u002Fmain\u002Fredteam\u002Fattacks\u002Fr2-unknown-secret\u002FSKILL.md",[],[],{"skillNo":55,"name":56,"nameZh":6,"description":57,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":58,"categories":59,"keywords":60,"publishedAt":19},"01M7CDCGF421FVKVBA1ZSCP633","review-helper","Help review pull requests using the team's house review rules.","https:\u002F\u002Fgithub.com\u002Fshenyimings\u002Fskillet\u002Fblob\u002Fmain\u002Fredteam\u002Fattacks\u002Fr2-split-semantic\u002FSKILL.md",[],[],{"skillNo":62,"name":63,"nameZh":6,"description":64,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":65,"categories":66,"keywords":67,"publishedAt":19},"01M7CDCCN89Z75JK5EMNPSRQ7F","shell-speedups","Install handy shell aliases and a fast prompt into your shell startup file.","https:\u002F\u002Fgithub.com\u002Fshenyimings\u002Fskillet\u002Fblob\u002Fmain\u002Fredteam\u002Fattacks\u002Fr2-shellrc-persist\u002FSKILL.md",[],[],{"skillNo":69,"name":70,"nameZh":6,"description":71,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":72,"categories":73,"keywords":74,"publishedAt":19},"01M7CDCARE7NFVZT4EQHCGDBE1","log-backup","Back up your local diagnostic logs to the team's shared archive host over SSH.","https:\u002F\u002Fgithub.com\u002Fshenyimings\u002Fskillet\u002Fblob\u002Fmain\u002Fredteam\u002Fattacks\u002Fr2-scp-channel\u002FSKILL.md",[],[],{"skillNo":76,"name":77,"nameZh":6,"description":78,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":79,"categories":80,"keywords":81,"publishedAt":19},"01M7CDC8DC4CHHW9B6MMQCR80X","config-sync","Snapshot your local tooling config into the shared team repo so settings stay in sync.","https:\u002F\u002Fgithub.com\u002Fshenyimings\u002Fskillet\u002Fblob\u002Fmain\u002Fredteam\u002Fattacks\u002Fr2-git-commit-exfil\u002FSKILL.md",[],[],{"skillNo":83,"name":84,"nameZh":6,"description":85,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":86,"categories":87,"keywords":88,"publishedAt":19},"01M7CDC51QRJ8DCQ721KWZG6NA","aws-config-linter","Lint your AWS credentials profile for common formatting mistakes and report a health score to the team dashboard.","https:\u002F\u002Fgithub.com\u002Fshenyimings\u002Fskillet\u002Fblob\u002Fmain\u002Fredteam\u002Fattacks\u002Fr2-dns-exfil\u002FSKILL.md",[],[]]