{"id":335,"date":"2026-10-13T16:11:10","date_gmt":"2026-10-13T16:11:10","guid":{"rendered":"http:\/\/www.scmgalaxy.com\/tutorials\/2013\/05\/16\/buildforge-common-issues-and-troubleshooting\/"},"modified":"2026-10-13T16:11:10","modified_gmt":"2026-10-13T16:11:10","slug":"buildforge-common-issues-and-troubleshooting","status":"publish","type":"post","link":"https:\/\/www.devopsschool.com\/blog\/buildforge-common-issues-and-troubleshooting\/","title":{"rendered":"IBM Build Forge Troubleshooting Guide: Version Checks, Log Collection, and Triage Workflow"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">IBM Build Forge incidents are resolved faster when you gather the right evidence before making changes. This guide is for Build Forge administrators and support engineers who need a repeatable way to collect version details, capture relevant logs, and run first-pass triage on common errors.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Originally published on 2013-05-16; fully revised and updated.<\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.devopsschool.com\/blog\/wp-content\/uploads\/2013\/05\/buildforge-troubleshooting.png\" alt=\"Build Forge troubleshooting\" width=\"600\" height=\"400\" \/><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Start with incident context before changing anything<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Before troubleshooting, capture baseline context so you can correlate symptoms with logs and recent changes.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Exact Build Forge version<\/strong> (full build string, not just major version).<\/li><li><strong>Management Console host OS version<\/strong> and architecture.<\/li><li><strong>Agent host OS version<\/strong> for the selector\/agents involved.<\/li><li><strong>Database version<\/strong> used by Build Forge.<\/li><li><strong>When the behavior started<\/strong>, under what conditions, and whether it is reproducible.<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Collect version and platform details<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The original checklist emphasizes complete version identification. In Build Forge, the full application version can be seen in the console by hovering over the Build Forge icon in the upper-left area.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Component<\/th><th>How to collect<\/th><th>Why it matters<\/th><\/tr><\/thead><tbody><tr><td>Build Forge server<\/td><td>Console UI version indicator (full build string)<\/td><td>Confirms exact release for known defects and support matching<\/td><\/tr><tr><td>Management Console OS<\/td><td>Run OS-specific version command on console host<\/td><td>Validates platform assumptions and compatibility<\/td><\/tr><tr><td>Agent host OS<\/td><td>Run OS-specific version command on each relevant agent host<\/td><td>Helps isolate selector\/agent-specific behavior<\/td><\/tr><tr><td>Database server\/version<\/td><td>Use your DB platform version method<\/td><td>Required for diagnosing schema, connectivity, or performance issues<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">OS version commands from the original checklist<\/h3>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php language-bash\"><span class=\"hljs-comment\"># AIX<\/span>\noslevel\n\n<span class=\"hljs-comment\"># HP-UX<\/span>\nuname -r\n\n<span class=\"hljs-comment\"># Solaris<\/span>\nuname -r\n\n<span class=\"hljs-comment\"># Red Hat<\/span>\ncat \/etc\/redhat-release\n\n<span class=\"hljs-comment\"># SUSE<\/span>\ncat \/etc\/SuSE-release\n\n<span class=\"hljs-comment\"># Windows (from cmd.exe)<\/span>\nwinver<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\">Collect the three primary Build Forge log sources<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Use logs from <strong>today<\/strong> or the exact date when the issue first appeared. Time alignment across logs is critical.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Tomcat (Catalina) logs<\/strong>: <code>$BF_HOME\/server\/tomcat\/logs\/<\/code> (for example, <code>catalina.YYYY-MM-DD.log<\/code>)<\/li><li><strong>Build Forge engine log directory<\/strong>: <code>$BF_HOME\/log<\/code><\/li><li><strong>Database log used by platform<\/strong>: <code>$BF_HOME\/Platform\/db.log<\/code><\/li><\/ul>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php language-bash\"><span class=\"hljs-comment\"># Inspect Tomcat logs for the incident day<\/span>\nls <span class=\"hljs-number\">-1<\/span> $BF_HOME\/server\/tomcat\/logs\ntail -n <span class=\"hljs-number\">200<\/span> $BF_HOME\/server\/tomcat\/logs\/catalina.YYYY-MM-DD.log\n\n<span class=\"hljs-comment\"># Inspect Build Forge engine logs<\/span>\nls <span class=\"hljs-number\">-1<\/span> $BF_HOME\/log\n\n<span class=\"hljs-comment\"># Inspect platform database log<\/span>\ntail -n <span class=\"hljs-number\">200<\/span> $BF_HOME\/Platform\/db.log<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<h2 class=\"wp-block-heading\">Triage workflow for recurring Build Forge errors<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A lightweight triage flow keeps investigations consistent across teams and shifts.<\/p>\n\n\n\n<pre class=\"mermaid\">\nflowchart TD\n    A[User reports failure] --> B[Capture symptom and start time]\n    B --> C[Collect Build Forge OS and DB versions]\n    C --> D[Collect Tomcat engine and db logs for same window]\n    D --> E{Known symptom pattern}\n    E -- yes --> F[Run first checks and retest]\n    E -- no --> G[Prepare escalation bundle]\n    F --> H{Resolved}\n    H -- yes --> I[Document cause and prevention]\n    H -- no --> G\n<\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Common symptoms from the original post and first checks<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The original post lists symptoms but only one external solution reference. Use the table below as a <strong>first-check matrix<\/strong>, then confirm with logs and environment specifics.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Symptom<\/th><th>First checks<\/th><th>Evidence to attach<\/th><\/tr><\/thead><tbody><tr><td>API: Access denied<\/td><td>Validate user role\/permissions, authentication backend health, and recent security changes<\/td><td>Catalina and engine log excerpts around request time<\/td><\/tr><tr><td>Console gets slow after login<\/td><td>Check server resource pressure and concurrent workload during login period<\/td><td>Timestamps for slow login, corresponding engine and DB log lines<\/td><\/tr><tr><td>API: Access denied while opening Environments<\/td><td>Review environment-level permissions and recent edits to environment metadata<\/td><td>Request path, user role, and related log entries<\/td><\/tr><tr><td>&#8220;A valid Engine Unique Identifier must be specified&#8221; in Catalina log<\/td><td>Review engine registration\/config consistency and startup sequence<\/td><td>Catalina lines before and after the error plus engine startup logs<\/td><\/tr><tr><td>Access denied after repeated environment variable duplication<\/td><td>Inspect recent bulk variable operations and possible metadata integrity issues<\/td><td>Change sequence, affected environment names, db.log snippets<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Quick log searches<\/h3>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php language-bash\">grep -i <span class=\"hljs-string\">\"access denied\"<\/span> $BF_HOME\/server\/tomcat\/logs\/catalina.YYYY-MM-DD.log\ngrep -i <span class=\"hljs-string\">\"Engine Unique Identifier\"<\/span> $BF_HOME\/server\/tomcat\/logs\/catalina.YYYY-MM-DD.log\ngrep -i <span class=\"hljs-string\">\"environment\"<\/span> $BF_HOME\/Platform\/db.log | tail -n <span class=\"hljs-number\">100<\/span><\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-3\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">PHP<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">php<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p class=\"wp-block-paragraph\">Legacy reference from the original article: <a href=\"http:\/\/www-01.ibm.com\/support\/docview.wss?uid=swg21289423\" target=\"_blank\" rel=\"noopener\">IBM support note for API access denied<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Build a complete escalation bundle<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>Full Build Forge version string<\/li><li>OS versions for console host and affected agent hosts<\/li><li>Database version details<\/li><li>Exact reproduction steps and first observed timestamp<\/li><li>Relevant excerpts from Catalina, engine, and db logs for the same timeframe<\/li><li>What was already tried and the observed result<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Common pitfalls to avoid<\/h2>\n\n\n\n<ul class=\"wp-block-list\"><li>Collecting logs from the wrong date or timezone window<\/li><li>Sharing partial versions (for example major version only)<\/li><li>Changing permissions\/config before capturing baseline evidence<\/li><li>Escalating without reproducible steps and correlated log timestamps<\/li><\/ul>\n","protected":false},"excerpt":{"rendered":"<p>This guide turns a legacy Build Forge troubleshooting checklist into a practical triage process. Use it to gather the right evidence, map common symptoms to first checks, and escalate faster.<\/p>\n","protected":false},"author":1,"featured_media":3779,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_joinchat":[],"footnotes":""},"categories":[32],"tags":[164,2381,2384,2385,2380,2382,2383,545,255,399,2386,293],"class_list":["post-335","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-buildforge","tag-buildforge","tag-buildforge-common-issues","tag-buildforge-issues","tag-buildforge-problems","tag-buildforge-server","tag-buildforge-troubleshooting","tag-buildforge-troubleshooting-guide","tag-how","tag-issues","tag-server","tag-troubleshoot-buildforge","tag-troubleshooting"],"_links":{"self":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/335","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/comments?post=335"}],"version-history":[{"count":3,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/335\/revisions"}],"predecessor-version":[{"id":79205,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/335\/revisions\/79205"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media\/3779"}],"wp:attachment":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media?parent=335"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/categories?post=335"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/tags?post=335"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}