{"id":51069,"date":"2025-07-30T04:30:31","date_gmt":"2025-07-30T04:30:31","guid":{"rendered":"https:\/\/www.devopsschool.com\/blog\/?p=51069"},"modified":"2025-07-30T06:50:09","modified_gmt":"2025-07-30T06:50:09","slug":"artifactory-comprehensive-troubleshooting-guide-for-jfrog-artifactory","status":"publish","type":"post","link":"https:\/\/www.devopsschool.com\/blog\/artifactory-comprehensive-troubleshooting-guide-for-jfrog-artifactory\/","title":{"rendered":"Artifactory: Comprehensive Troubleshooting Guide for JFrog Artifactory"},"content":{"rendered":"\n<p>Here\u2019s a <strong>very comprehensive, up-to-date troubleshooting guide for JFrog Artifactory 7.x<\/strong>, covering the <strong>application, database, core components, all services, log files, and all the key troubleshooting commands<\/strong>.<br><em>This guide is tailored for self-hosted, Linux-based deployments but can be adapted for containers or Kubernetes as well.<\/em><\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">1\ufe0f\u20e3 <strong>Artifactory Application Troubleshooting Steps<\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>A. Check if Artifactory is Running<\/strong><\/h3>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">sudo systemctl status artifactory\nsudo systemctl status artifactory-router\nsudo systemctl status artifactory-access\n<\/code><\/span><\/pre>\n\n\n<ul class=\"wp-block-list\">\n<li>For containerized installs: <code>docker ps<\/code> or <code>kubectl get pods -n &lt;namespace><\/code><\/li>\n<\/ul>\n\n\n\n<p><strong>Common problems:<\/strong> Service not started, Java crash, port not listening, out-of-memory.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>B. Application Log Files &amp; What to Look For<\/strong><\/h3>\n\n\n\n<p><strong>Log Directory:<\/strong><br><code>\/opt\/artifactory-pro-7.23.3\/var\/log\/<\/code><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>console.log:<\/strong> JVM and startup errors, fatal exceptions, low memory.<\/li>\n\n\n\n<li><strong>artifactory-service.log:<\/strong> Main service lifecycle, stacktraces, upgrades.<\/li>\n\n\n\n<li><strong>artifactory-request.log:<\/strong> HTTP requests to Artifactory REST API.<\/li>\n\n\n\n<li><strong>artifactory-request-trace.log:<\/strong> Trace of REST requests with debug detail.<\/li>\n\n\n\n<li><strong>artifactory-binarystore.log:<\/strong> Filestore and storage backend issues.<\/li>\n\n\n\n<li><strong>artifactory-metrics.log:<\/strong> Metrics, monitoring, custom endpoint hits.<\/li>\n\n\n\n<li><strong>archived\/<\/strong>: Older rotated logs.<\/li>\n\n\n\n<li><strong>tomcat\/<\/strong>: Tomcat-specific logs if needed.<\/li>\n<\/ul>\n\n\n\n<p><strong>Quick check for startup issues:<\/strong><\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-1\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">tail <span class=\"hljs-number\">-100<\/span>f \/opt\/artifactory-pro<span class=\"hljs-number\">-7.23<\/span><span class=\"hljs-number\">.3<\/span>\/<span class=\"hljs-keyword\">var<\/span>\/log\/<span class=\"hljs-built_in\">console<\/span>.log\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-1\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>C. Useful App Diagnostic Commands<\/strong><\/h3>\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\">ps -ef | grep artifactory\nlsof -i :<span class=\"hljs-number\">8082<\/span>           <span class=\"hljs-comment\"># Is Artifactory listening?<\/span>\ndf -h \/mnt\/efs          <span class=\"hljs-comment\"># Storage mount status (EFS\/NFS)<\/span>\nfree -m                 <span class=\"hljs-comment\"># Memory available<\/span>\ntop                     <span class=\"hljs-comment\"># JVM process CPU\/ram usage<\/span>\n<\/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<p><strong>Restart service:<\/strong><\/p>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">sudo systemctl restart artifactory\n<\/code><\/span><\/pre>\n\n\n<p><strong>Check service logs quickly:<\/strong><\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-3\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">sudo journalctl -u artifactory --since <span class=\"hljs-string\">\"2 hours ago\"<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-3\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">2\ufe0f\u20e3 <strong>Artifactory Database Troubleshooting Steps<\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>A. Basic Connectivity<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Test DB connection from host:<\/strong><code>psql -U artifactory -h &lt;db-host> -d artifactory<\/code>\n<ul class=\"wp-block-list\">\n<li>Look for authentication errors, permission issues, or <code>connection refused<\/code>.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>B. Common DB Problems<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Connection refused:<\/strong> DB not running, firewall, wrong <code>system.yaml<\/code>\/JDBC URL.<\/li>\n\n\n\n<li><strong>Authentication failed:<\/strong> DB user\/password mismatch.<\/li>\n\n\n\n<li><strong>Permission denied for schema public:<\/strong> User lacks schema\/table create rights.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>C. Log Files for DB Errors<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>console.log:<\/strong> Usually shows DB connection errors and stacktraces.<\/li>\n\n\n\n<li><strong>artifactory-service.log:<\/strong> Migration and DB schema update failures.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>D. DB Permissions Fix Commands (Postgres Example)<\/strong><\/h3>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-4\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">GRANT ALL ON SCHEMA <span class=\"hljs-keyword\">public<\/span> TO artifactory;\nALTER SCHEMA <span class=\"hljs-keyword\">public<\/span> OWNER TO artifactory;\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-4\"><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><strong>To see DB connections (Postgres):<\/strong><\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-5\" data-shcb-language-name=\"JavaScript\" data-shcb-language-slug=\"javascript\"><span><code class=\"hljs language-javascript\">sudo -u postgres psql -c <span class=\"hljs-string\">\"SELECT * FROM pg_stat_activity WHERE datname='artifactory';\"<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-5\"><span class=\"shcb-language__label\">Code language:<\/span> <span class=\"shcb-language__name\">JavaScript<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">javascript<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">3\ufe0f\u20e3 <strong>Artifactory Components Troubleshooting Steps<\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>A. Filestore (NFS\/EFS)<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Check mount:<\/strong> <code>df -h \/mnt\/efs mount | grep \/mnt\/efs ls -l \/mnt\/efs<\/code><\/li>\n\n\n\n<li><strong>Permission issues:<\/strong> Files must be owned by <code>artifactory:artifactory<\/code>.<\/li>\n\n\n\n<li><strong>Log files:<\/strong>\n<ul class=\"wp-block-list\">\n<li><code>artifactory-binarystore.log<\/code><\/li>\n\n\n\n<li><code>artifactory-service.log<\/code><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p><strong>Common issues:<\/strong><br>&#8220;Permission denied&#8221;, &#8220;cannot write to storage&#8221;, &#8220;No space left on device&#8221;.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>B. Router Service<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Service status:<\/strong> <code>sudo systemctl status artifactory-router<\/code><\/li>\n\n\n\n<li><strong>Logs:<\/strong>\n<ul class=\"wp-block-list\">\n<li><code>router-service.log<\/code><\/li>\n\n\n\n<li><code>router-request.log<\/code><\/li>\n\n\n\n<li><code>router-traefik.log<\/code><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>C. Access Service<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Service status:<\/strong> <code>sudo systemctl status artifactory-access<\/code><\/li>\n\n\n\n<li><strong>Logs:<\/strong>\n<ul class=\"wp-block-list\">\n<li><code>access-service.log<\/code><\/li>\n\n\n\n<li><code>access-request.log<\/code><\/li>\n\n\n\n<li><code>access-audit.log<\/code><\/li>\n\n\n\n<li><code>access-security-audit.log<\/code><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>D. Frontend Service<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Logs:<\/strong>\n<ul class=\"wp-block-list\">\n<li><code>frontend-service.log<\/code><\/li>\n\n\n\n<li><code>frontend-request.log<\/code><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>E. Metadata Service<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Logs:<\/strong>\n<ul class=\"wp-block-list\">\n<li><code>metadata-service.log<\/code><\/li>\n\n\n\n<li><code>metadata-request.log<\/code><\/li>\n\n\n\n<li><code>metadata-metrics.log<\/code><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>F. Event Service<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Logs:<\/strong>\n<ul class=\"wp-block-list\">\n<li><code>event-service.log<\/code><\/li>\n\n\n\n<li><code>event-request.log<\/code><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">4\ufe0f\u20e3 <strong>Each Artifactory Service Troubleshooting Steps<\/strong><\/h2>\n\n\n\n<p><strong>Key Artifactory services in systemd (native install):<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>artifactory<\/code> (main node)<\/li>\n\n\n\n<li><code>artifactory-access<\/code> (access control)<\/li>\n\n\n\n<li><code>artifactory-router<\/code> (reverse proxy\/router)<\/li>\n\n\n\n<li>(plus optional xray, metadata, event, frontend if separate)<\/li>\n<\/ul>\n\n\n\n<p><strong>Restart or check each individually:<\/strong><\/p>\n\n\n<pre class=\"wp-block-code\"><span><code class=\"hljs\">sudo systemctl restart artifactory-router\nsudo systemctl status artifactory-router\n\nsudo systemctl restart artifactory-access\nsudo systemctl status artifactory-access\n<\/code><\/span><\/pre>\n\n\n<p><strong>Check if ports are listening:<\/strong><\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-6\" data-shcb-language-name=\"PHP\" data-shcb-language-slug=\"php\"><span><code class=\"hljs language-php\">sudo ss -ltnp | grep <span class=\"hljs-number\">8082<\/span>   <span class=\"hljs-comment\"># Artifactory main<\/span>\nsudo ss -ltnp | grep <span class=\"hljs-number\">8046<\/span>   <span class=\"hljs-comment\"># Router<\/span>\nsudo ss -ltnp | grep <span class=\"hljs-number\">8040<\/span>   <span class=\"hljs-comment\"># Access<\/span>\n<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-6\"><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<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">5\ufe0f\u20e3 <strong>Log Files Reference Table<\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Log File<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td>console.log<\/td><td>JVM, core, and startup issues<\/td><\/tr><tr><td>artifactory-service.log<\/td><td>Main app events, errors<\/td><\/tr><tr><td>artifactory-request.log<\/td><td>Incoming HTTP\/REST API calls<\/td><\/tr><tr><td>artifactory-request-trace.log<\/td><td>Debug request tracing<\/td><\/tr><tr><td>artifactory-binarystore.log<\/td><td>Storage\/filestore operations<\/td><\/tr><tr><td>access-service.log<\/td><td>Identity\/SSO\/auth events<\/td><\/tr><tr><td>router-service.log<\/td><td>Router internal events<\/td><\/tr><tr><td>router-traefik.log<\/td><td>Traefik (router\/proxy) details<\/td><\/tr><tr><td>frontend-service.log<\/td><td>Web UI service<\/td><\/tr><tr><td>metadata-service.log<\/td><td>Metadata service<\/td><\/tr><tr><td>event-service.log<\/td><td>Events and notifications<\/td><\/tr><tr><td>tomcat\/*<\/td><td>Embedded Tomcat (legacy)<\/td><\/tr><tr><td>archived\/<\/td><td>Rotated older logs<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">6\ufe0f\u20e3 <strong>Essential Troubleshooting Commands<\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Command<\/th><th>What It Does<\/th><\/tr><\/thead><tbody><tr><td><code>systemctl status &lt;svc&gt;<\/code><\/td><td>See service status<\/td><\/tr><tr><td><code>journalctl -u &lt;svc&gt; --since \"1 hour ago\"<\/code><\/td><td>Recent service logs<\/td><\/tr><tr><td><code>tail -f &lt;logfile&gt;<\/code><\/td><td>Live log tail<\/td><\/tr><tr><td><code>df -h \/mnt\/efs<\/code><\/td><td>Filestore disk status<\/td><\/tr><tr><td>`ps -ef<\/td><td>grep artifactory`<\/td><\/tr><tr><td>`ss -ltnp<\/td><td>grep `<\/td><\/tr><tr><td><code>curl http:\/\/localhost:8082\/artifactory\/api\/system\/ping<\/code><\/td><td>Health ping<\/td><\/tr><tr><td><code>curl http:\/\/localhost:8046\/router\/api\/v1\/system\/health<\/code><\/td><td>Router health<\/td><\/tr><tr><td><code>psql -U artifactory -h &lt;db-host&gt; -d artifactory<\/code><\/td><td>Test DB connectivity<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">7\ufe0f\u20e3 <strong>Web\/API Health Checks<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Artifactory Ping:<\/strong><br><code>http:\/\/localhost:8082\/artifactory\/api\/system\/ping<\/code><br>(returns <code>OK<\/code> when running)<\/li>\n\n\n\n<li><strong>HA Node Status:<\/strong><br><code>http:\/\/localhost:8082\/artifactory\/api\/system\/ha\/nodes<\/code><\/li>\n\n\n\n<li><strong>Router Health:<\/strong><br><code>http:\/\/localhost:8046\/router\/api\/v1\/system\/health<\/code><\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">8\ufe0f\u20e3 <strong>Common Problems &amp; Fixes Table<\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Problem\/Symptom<\/th><th>Logs to Check<\/th><th>Common Causes \/ Fixes<\/th><\/tr><\/thead><tbody><tr><td>Service won\u2019t start<\/td><td>console.log, systemctl<\/td><td>Java heap, permission, config, storage<\/td><\/tr><tr><td>DB connection fails<\/td><td>console.log, artifactory-service.log<\/td><td>Wrong URL\/creds, DB down, pg_hba.conf, privileges<\/td><\/tr><tr><td>Filestore errors<\/td><td>artifactory-binarystore.log<\/td><td>NFS\/EFS mount, permissions, quota<\/td><\/tr><tr><td>Router 502\/503<\/td><td>router-service.log, router-traefik.log<\/td><td>Port conflict, network, wrong service startup order<\/td><\/tr><tr><td>UI login fails<\/td><td>access-service.log, artifactory-request.log<\/td><td>Access service down, DB error, clock skew<\/td><\/tr><tr><td>401\/403 from API<\/td><td>access-service.log, artifactory-request.log<\/td><td>Token\/SSO issue, missing permission<\/td><\/tr><tr><td>Out-of-memory<\/td><td>console.log, systemctl<\/td><td>JVM heap size, large requests, memory leak<\/td><\/tr><tr><td>Disk full<\/td><td>console.log, df -h, binarystore<\/td><td>Too many artifacts, logs, backups; clear space or expand volume<\/td><\/tr><tr><td>HA node not visible<\/td><td>artifactory-service.log, UI<\/td><td>Wrong <code>node.id<\/code>, clock skew, network, missing joinKey<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">9\ufe0f\u20e3 <strong>When All Else Fails:<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Increase log level:<\/strong><br>Edit <code>logback.xml<\/code> to set <code>DEBUG<\/code> or <code>TRACE<\/code> for modules.<\/li>\n\n\n\n<li><strong>Reboot host\/server<\/strong> (if Java process hung).<\/li>\n\n\n\n<li><strong>Clear browser cache<\/strong> (if UI rendering breaks).<\/li>\n\n\n\n<li><strong>Check NTP\/time sync<\/strong> on all nodes (important for HA).<\/li>\n\n\n\n<li><strong>Restore from backup<\/strong> if data loss\/corruption.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udd1f <strong>Support Tools<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/jfrog.com\/knowledge-base\/how-to-generate-support-bundle-in-artifactory\/\" target=\"_blank\" rel=\"noopener\">JFrog Support Diagnostics Tool<\/a> <code>curl -u admin:password -X POST \"http:\/\/localhost:8082\/artifactory\/api\/system\/support\/bundle\"<\/code><\/li>\n\n\n\n<li><a href=\"https:\/\/jfrog.com\/help\/r\/jfrog-artifactory-documentation\/troubleshooting-artifactory\" target=\"_blank\" rel=\"noopener\">Official Troubleshooting Docs<\/a><\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u2705 <strong>Proactive Monitoring<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Enable Metrics:<\/strong><br>Use Prometheus endpoint <code>\/artifactory\/api\/v1\/metrics<\/code> for integration.<\/li>\n\n\n\n<li><strong>External monitoring:<\/strong><br>Set up monitoring\/alerts for memory, disk, process, ping.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udfe2 <strong>Summary Table: Core Troubleshooting Steps<\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Area<\/th><th>Key Files\/Commands<\/th><th>What to Check<\/th><\/tr><\/thead><tbody><tr><td>Application<\/td><td>console.log, artifactory-service.log, systemctl status<\/td><td>JVM, startup, ports<\/td><\/tr><tr><td>Database<\/td><td>console.log, psql, DB logs<\/td><td>Connectivity, privileges<\/td><\/tr><tr><td>Filestore<\/td><td>binarystore.log, df -h, mount, chown<\/td><td>Storage, mount, perms<\/td><\/tr><tr><td>Access\/Router<\/td><td>access-service.log, router-service.log, status, health API<\/td><td>Inter-service comms<\/td><\/tr><tr><td>HA<\/td><td>UI (nodes), logs, joinKey, clock sync<\/td><td>All nodes visible<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Older Guide<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Below is a <strong>comprehensive, practical troubleshooting guide for JFrog Artifactory 7.x<\/strong>, designed for sysadmins and SREs handling production systems. It covers core areas: application, database, components, individual services, log file references, common commands, and hands-on debugging actions.<\/h3>\n\n\n\n<h1 class=\"wp-block-heading\" id=\"jfrog-artifactory-7x--end-to-end-troubleshooting-g\"><\/h1>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>1. Artifactory Application Troubleshooting Steps<\/strong><\/h2>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>A. General Application Health<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Check Service Status:<\/strong> text<code># Systemd-based sudo systemctl status artifactory # Init script $JFROG_HOME\/artifactory\/app\/bin\/artifactory.sh status<\/code><\/li>\n\n\n\n<li><strong>Web UI\/REST API Reachability:<\/strong>\n<ul class=\"wp-block-list\">\n<li>Access <code>http:\/\/&lt;host>:8082\/artifactory\/<\/code><\/li>\n\n\n\n<li>Test API: text<code>curl -u admin:&lt;password> http:\/\/&lt;host>:8082\/artifactory\/api\/system\/ping<\/code><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Check for Maintenance Mode or Lock Files:<\/strong>\n<ul class=\"wp-block-list\">\n<li>Look for <code>.lock<\/code>, <code>.maintenance<\/code>, or upgrade flags in <code>$JFROG_HOME\/artifactory\/var\/etc<\/code>.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>B. Configuration Issues<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Validate <code>system.yaml<\/code>:<\/strong> text<code>$JFROG_HOME\/artifactory\/app\/bin\/diagnostics\/diagnosticsUtil validate yaml \\ $JFROG_HOME\/artifactory\/var\/etc\/system.yaml \\ $JFROG_HOME\/artifactory\/var\/etc\/system.full-template.yaml --uncomment-before-parse<\/code><\/li>\n\n\n\n<li><strong>Check for Tabs\/Bad Indentation<\/strong> (YAML is space-sensitive).<\/li>\n\n\n\n<li><strong>Restart Artifactory after config changes.<\/strong><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>2. Artifactory Database Troubleshooting Steps<\/strong><\/h2>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>A. Connectivity<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Test Database Connection as Artifactory User:<\/strong> text<code># PostgreSQL Example psql -h &lt;db-host> -U artifactory -d artifactory<\/code><\/li>\n\n\n\n<li><strong>Validate JDBC Configuration:<\/strong><br>Confirm in <code>system.yaml<\/code> (<code>shared: database:<\/code>) and that the JDBC driver <code>.jar<\/code> is placed in <code>$JFROG_HOME\/artifactory\/var\/bootstrap\/artifactory\/tomcat\/lib<\/code>.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>B. Permissions<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Check Schema Privileges:<\/strong> sql<code><em>-- In psql:<\/em> \\c artifactory GRANT ALL ON SCHEMA public TO artifactory; ALTER SCHEMA public OWNER TO artifactory; GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO artifactory; GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public TO artifactory; GRANT ALL PRIVILEGES ON ALL FUNCTIONS IN SCHEMA public TO artifactory;<\/code><\/li>\n\n\n\n<li><strong>For Startup\/Migration Failures:<\/strong><br>Look for <code>permission denied for schema public<\/code> or <code>no pg_hba.conf entry<\/code>\u2014fix DB configuration as above.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>C. Availability &amp; Performance<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Is the DB process running?<\/strong> text<code>sudo systemctl status postgresql # Or for MySQL\/MariaDB sudo systemctl status mysql<\/code><\/li>\n\n\n\n<li><strong>Network Check:<\/strong> text<code>telnet &lt;db-host> 5432 # or nc -zv &lt;db-host> 5432<\/code><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>3. Artifactory Components Troubleshooting Steps<\/strong><\/h2>\n\n\n\n<p><strong>Typical Components:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Artifactory Core<\/li>\n\n\n\n<li>Access Service (auth, tokens)<\/li>\n\n\n\n<li>Router<\/li>\n\n\n\n<li>Metadata<\/li>\n\n\n\n<li>Frontend<\/li>\n\n\n\n<li>Event<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>A. How to Check Component Health<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Service Logs:<\/strong> Review logs per component (see Log List below).<\/li>\n\n\n\n<li><strong>Service Ports:<\/strong> ComponentDefault PortRouter8082Artifactory Core8081Access8040Metadata8086Event8061Frontend8070 Verify with <code>netstat -ltnp<\/code> or <code>ss -tuln<\/code>.<\/li>\n\n\n\n<li><strong>Process Status and Errors:<\/strong> text<code>ps aux | grep java systemctl status artifactory<\/code><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>B. Troubleshoot Inter-component Issues<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>If <strong>Router<\/strong> is down: UI\/API not available.<\/li>\n\n\n\n<li>If <strong>Access Service<\/strong> is down: Authentication, permissions fail.<\/li>\n\n\n\n<li>If <strong>Metadata\/Event<\/strong>: Metadata sync, repo events, webhooks may fail.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>4. Artifactory Services Troubleshooting Steps<\/strong><\/h2>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>A. Service-Specific Health Checks<\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Service<\/th><th>Key Function<\/th><th>Main Log File<\/th><th>Common Checks<\/th><\/tr><\/thead><tbody><tr><td>Artifactory (Core)<\/td><td>Repositories, REST\/API<\/td><td>artifactory-service.log<\/td><td>8081 active, log errors<\/td><\/tr><tr><td>Access<\/td><td>Tokens, Auth, RBAC<\/td><td>access-service.log<\/td><td>8040 active, token\/auth tests<\/td><\/tr><tr><td>Router<\/td><td>API Gateway\/Reverse Proxy<\/td><td>router-service.log, router-traefik.log<\/td><td>8082 active, 502\/404s<\/td><\/tr><tr><td>Metadata<\/td><td>Package metadata service<\/td><td>metadata-service.log<\/td><td>8086 active, catalog queries<\/td><\/tr><tr><td>Event<\/td><td>Event handling<\/td><td>event-service.log<\/td><td>8061 active, event failures<\/td><\/tr><tr><td>Frontend<\/td><td>UI layer<\/td><td>frontend-service.log<\/td><td>8070 active, UI up<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>B. Restart &amp; Status Commands<\/strong><\/h2>\n\n\n\n<pre class=\"wp-block-preformatted\">text<code># To restart all manually via scripts\n$JFROG_HOME\/artifactory\/app\/bin\/artifactory.sh restart\n\n# Or check per systemd service (custom setups may have separate units)\nsudo systemctl status artifactory\nsudo systemctl restart artifactory\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>C. Advanced: Debug Mode<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Increase log verbosity (in <code>logback.xml<\/code> or via UI\/REST).<\/li>\n\n\n\n<li>Monitor logs real-time: text<code>tail -f \/opt\/artifactory-pro-7.23.3\/var\/log\/artifactory-service.log<\/code><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>5. Artifactory Log Files: What They Are For<\/strong><\/h2>\n\n\n\n<p>Located in: <code>\/opt\/artifactory-pro-7.23.3\/var\/log\/<\/code><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Log File<\/th><th>Purpose<\/th><\/tr><\/thead><tbody><tr><td>artifactory-service.log<\/td><td>Core server start\/stop, errors, core ops<\/td><\/tr><tr><td>artifactory-request.log<\/td><td>All incoming REST\/API\/UI requests<\/td><\/tr><tr><td>artifactory-request-out.log<\/td><td>Outbound requests from Artifactory<\/td><\/tr><tr><td>artifactory-access.log<\/td><td>Records logins and permission checks<\/td><\/tr><tr><td>access-service.log<\/td><td>Auth\/token system main log<\/td><\/tr><tr><td>access-audit.log<\/td><td>Access\/repo security audit trail<\/td><\/tr><tr><td>access-request.log<\/td><td>All token\/authz requests<\/td><\/tr><tr><td>access-security-audit.log<\/td><td>Security-specific audit logs<\/td><\/tr><tr><td>router-service.log<\/td><td>API Gateway\/router-level events<\/td><\/tr><tr><td>router-traefik.log<\/td><td>Reverse-proxy and routing errors<\/td><\/tr><tr><td>frontend-service.log<\/td><td>UI layer startup\/errors<\/td><\/tr><tr><td>event-service.log<\/td><td>Event publication and failures<\/td><\/tr><tr><td>metadata-service.log<\/td><td>Metadata service ops\/errors<\/td><\/tr><tr><td>artifactory-binarystore.log<\/td><td>Binary store actions\/issues<\/td><\/tr><tr><td>artifactory-import-export.log<\/td><td>Import\/export progress and errors<\/td><\/tr><tr><td>console.log<\/td><td>System stdout\/stderr, JVM exceptions<\/td><\/tr><tr><td>archived\/<\/td><td>Older rotated logs<\/td><\/tr><tr><td>&#8230;<\/td><td>Additional logs as features\/plugins warrant<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>6. Essential Troubleshooting Commands<\/strong><\/h2>\n\n\n\n<pre class=\"wp-block-preformatted\">text<code># List running Java processes (inspect PIDs)\nps aux | grep java\n\n# List open\/listening ports (find which service is listening)\nnetstat -plnt\nss -tulnp\n\n# Check disk space (low space can break Artifactory)\ndf -h\ndu -sh $JFROG_HOME\/artifactory\/var\n\n# Monitor system resources\ntop\nhtop\n\n# Search for errors in logs\ngrep -i error \/opt\/artifactory-pro-7.23.3\/var\/log\/artifactory-service.log\ngrep 'Caused by:' \/opt\/artifactory-pro-7.23.3\/var\/log\/*\n\n# Validate YAML configurations\npython3 -c 'import yaml,sys; yaml.safe_load(open(sys.argv[1]))' system.yaml\n\n# Test DB access (PostgreSQL example)\npsql -h &lt;dbhost&gt; -U artifactory -d artifactory\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>7. Common Problems &amp; Fast Solutions<\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Symptom<\/th><th>Check\/Remedy<\/th><\/tr><\/thead><tbody><tr><td>Cannot start Artifactory<\/td><td>Check main logs (<code>service.log<\/code>, <code>router-service.log<\/code>), disk<\/td><\/tr><tr><td>Web UI\/API unavailable<\/td><td>Router down? Port open? LB misrouting?<\/td><\/tr><tr><td>&#8220;permission denied for schema public&#8221; on Postgres<\/td><td>Grant permissions to artifactory user (see above)<\/td><\/tr><tr><td>Connection refused to DB<\/td><td>DB process\/host\/port, firewall, pg_hba.conf<\/td><\/tr><tr><td>Frequent 503\/502, node not joining cluster<\/td><td>Licenses, join key, file store mount, node id unique, logs<\/td><\/tr><tr><td>&#8220;YAML validation failed&#8221;<\/td><td>Tabs, structure, check with template\/validator<\/td><\/tr><tr><td>Plugins\/Integrations don&#8217;t load<\/td><td>Plugin logs, config in <code>etc\/plugins<\/code>, service logs<\/td><\/tr><tr><td>Slow response, GC pauses<\/td><td>JVM heap, DB\/query latency, disk IO<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>8. Advanced: Network &amp; HA Debugging<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Cluster Node Status:<\/strong>\n<ul class=\"wp-block-list\">\n<li>Check UI \u2192 Admin \u2192 Cluster \u2192 Node status<\/li>\n\n\n\n<li>Review <code>router-service.log<\/code> for join\/ping errors<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Storage\/NFS Status for Filestore:<\/strong> text<code>df -h \/mnt\/nfs-volume\/filestore # Check mount status and permissions<\/code><\/li>\n\n\n\n<li><strong>Database Failover\/Replication Logs:<\/strong>\n<ul class=\"wp-block-list\">\n<li>For DB clusters: check replication, failover logs on DB host(s)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>9. Proactive Monitoring &amp; Best Practices<\/strong><\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Enable <strong>system monitoring<\/strong> (CPU, mem, disk, DB connections)<\/li>\n\n\n\n<li>Configure <strong>log rotation<\/strong> and <strong>retention<\/strong> (archived logs)<\/li>\n\n\n\n<li>Periodic backup and test restores of configuration and filestore<\/li>\n\n\n\n<li>Restarts after configuration changes or upgrades<\/li>\n\n\n\n<li>Regularly review logs for new\/unexpected patterns after upgrade\/plugins<\/li>\n<\/ul>\n\n\n\n<h1 class=\"wp-block-heading\"><strong>Summary Table \u2013 Artifactory Logs and Services Quick Reference<\/strong><\/h1>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Component<\/th><th>Main Log File<\/th><th>Service Port<\/th><th>Command Example<\/th><\/tr><\/thead><tbody><tr><td>Artifactory<\/td><td>artifactory-service.log<\/td><td>8081<\/td><td>tail -f artifactory-service.log<\/td><\/tr><tr><td>Access<\/td><td>access-service.log<\/td><td>8040<\/td><td>tail -f access-service.log<\/td><\/tr><tr><td>Router<\/td><td>router-service.log, router-traefik.log<\/td><td>8082<\/td><td>tail -f router-service.log<\/td><\/tr><tr><td>Event<\/td><td>event-service.log<\/td><td>8061<\/td><td>tail -f event-service.log<\/td><\/tr><tr><td>Metadata<\/td><td>metadata-service.log<\/td><td>8086<\/td><td>tail -f metadata-service.log<\/td><\/tr><tr><td>Frontend<\/td><td>frontend-service.log<\/td><td>8070<\/td><td>tail -f frontend-service.log<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>This guide can serve as your operational reference for rapidly diagnosing and resolving issues with JFrog Artifactory 7 in any enterprise environment. Adjust specific paths, ports, and credentials as per your deployment. For detailed root cause analysis, escalate persistent issues with logs and config files to JFrog Support.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Here\u2019s a very comprehensive, up-to-date troubleshooting guide for JFrog Artifactory 7.x, covering the application, database, core components, all services, log files, and all the key troubleshooting commands.This guide is tailored&#8230; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_joinchat":[],"footnotes":""},"categories":[4879],"tags":[],"class_list":["post-51069","post","type-post","status-publish","format-standard","hentry","category-artifactory"],"_links":{"self":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/51069","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=51069"}],"version-history":[{"count":1,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/51069\/revisions"}],"predecessor-version":[{"id":51070,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/posts\/51069\/revisions\/51070"}],"wp:attachment":[{"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/media?parent=51069"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/categories?post=51069"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsschool.com\/blog\/wp-json\/wp\/v2\/tags?post=51069"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}