Created
June 17, 2025 14:39
-
-
Save beanvuvanhau/52cb67ed6265b8eb96fde60d5b157342 to your computer and use it in GitHub Desktop.
Log Validation Results
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<html lang="en"> | |
<head> | |
<meta charset="UTF-8"> | |
<title>Log Validation Report</title> | |
<script> | |
/*! | |
* Chart.js v4.4.9 | |
* https://www.chartjs.org | |
* (c) 2025 Chart.js Contributors | |
* Released under the MIT License | |
*/ | |
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).Chart=e()}(this,(function(){"use strict";var t=Object.freeze({__proto__:null,get Colors(){return Zo},get Decimation(){return ta},get Filler(){return xa},get Legend(){return va},get SubTitle(){return Sa},get Title(){return wa},get Tooltip(){return Wa}});function e(){}const i=(()=>{let t=0;return()=>t++})();function s(t){return null==t}function n(t){if(Array.isArray&&Array.isArray(t))return!0;const e=Object.prototype.toString.call(t);return"[object"===e.slice(0,7)&&"Array]"===e.slice(-6)}function o(t){return null!==t&&"[object Object]"===Object.prototype.toString.call(t)}function a(t){return("number"==typeof t||t instanceof Number)&&isFinite(+t)}function r(t,e){return a(t)?t:e}function l(t,e){return void 0===t?e:t}const h=(t,e)=>"string"==typeof t&&t.endsWith("%")?parseFloat(t)/100:+t/e,c=(t,e)=>"string"==typeof t&&t.endsWith("%")?parseFloat(t)/100*e:+t;function d(t,e,i){if(t&&"function"==typeof t.call)return t.apply(i,e)}function u(t,e,i,s){let a,r,l;if(n(t))if(r=t.length,s)for(a=r-1;a>=0;a--)e.call(i,t[a],a);else for(a=0;a<r;a++)e.call(i,t[a],a);else if(o(t))for(l=Object.keys(t),r=l.length,a=0;a<r;a++)e.call(i,t[l[a]],l[a])}function f(t,e){let i,s,n,o;if(!t||!e||t.length!==e.length)return!1;for(i=0,s=t.length;i<s;++i)if(n=t[i],o=e[i],n.datasetIndex!==o.datasetIndex||n.index!==o.index)return!1;return!0}function g(t){if(n(t))return t.map(g);if(o(t)){const e=Object.create(null),i=Object.keys(t),s=i.length;let n=0;for(;n<s;++n)e[i[n]]=g(t[i[n]]);return e}return t}function p(t,e,i){const s=n(e)?e:[e],a=s.length;if(!o(t))return t;const r=(i=i||{}).merger||m;let l;for(let h=0;h<a;++h)if(l=s[h],o(l))for(const c in l)r(t,c,l[c],i);return t}function b(t,e){return x(t,e,{merger:_})}function _(t,e,i){if(!p(t))return;const s=Object.getOwnPropertyDescriptor(t,e);s&&!s.configurable||(s&&s.get&&!s.set?delete t[e]:Object.defineProperty(t,e,{value:i,writable:!0,enumerable:!0,configurable:!0}))}const y={x:t=>t.x,y:t=>t.y};function v(t){const e=t.split("."),i=[];let s="";for(const t of e)s+=t,s.endsWith("\\")?s=s.slice(0,-1)+".":(i.push(s),s="");return i}function M(t,e){const i=y[e]||(y[e]=function(t){const e=v(t);return t=>{for(const i of e){if(""===i)break;t=t&&t[i]}return t}}(e));return i(t)}function w(t){return t.charAt(0).toUpperCase()+t.slice(1)}const k=t=>void 0!==t,S=t=>"function"==typeof t,P=(t,e)=>{if(t.size!==e.size)return!1;for(const i of t)if(!e.has(i))return!1;return!0};function D(t){return"mouseup"===t.type||"click"===t.type||"contextmenu"===t.type}const C=Math.PI,O=2*C,A=O+C,T=Number.POSITIVE_INFINITY,L=C/180,E=C/2,R=C/4,I=2*C/3,z=Math.log10,F=Math.sign;function V(t,e,i){return Math.abs(t-e)<i}function b(t){const e=Math.round(t);t=V(t,e,t/1e3)?e:t;const i=Math.pow(10,Math.floor(z(t))),s=t/i;return(s<=1?1:s<=2?2:s<=5?5:10)*i}function w(t){const e=[];let i,s;for(i=1;i<t;i++)t%i==0&&(e.push(i),e.push(t/i));return e.sort(((t,e)=>t-e)).pop(),e}function N(t){return!function(t){return"symbol"==typeof t||"object"==typeof t&&null!==t&&!(Symbol.toPrimitive in t||"toString"in t||"valueOf"in t)}(t)&&!isNaN(parseFloat(t))&&isFinite(t)}function H(t,e){const i=Math.round(t);return i-e<=t&&i+e>=t}function j(t,e,i){let s,n,o;for(s=0,n=t.length;s<n;s++)o=t[s][i],isNaN(o)||(e.min=Math.min(e.min,o),e.max=Math.max(e.max,o))}function $(t){return t*(C/180)}function y(t){return t*(180/C)}function u(t){if(!a(t))return;let e=1,i=0;for(;Math.round(t*e)/e!==t;)e*=10,i++;return i}function x(t,e){const i=e.x-t.x,s=e.y-t.y,n=Math.sqrt(i*i+s*s);let o=Math.atan2(s,i);return o<-.5*C&&(o+=O),{angle:o,distance:n}}function q(t,e){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function k(t,e){return(t-e+A)%O-C}function g(t){return(t%O+O)%O}function z(t,e,i,s){const n=G(t),o=G(e),a=G(i),r=G(o-n),l=G(a-n),h=G(n-o),c=G(n-a);return r>l&&h<c}function j(t,e,i){return Math.max(e,Math.min(i,t))}function q(t){return j(t,-32768,32767)}function tt(t,e,i,s=1e-6){return t>=Math.min(e,i)-s&&t<=Math.max(e,i)+s}function et(t,e,i){i=i||(i=>t[i]<e);let s,n=t.length-1,o=0;for(;n-o>1;)s=o+n>>1,i(s)?o=s:n=s;return{lo:o,hi:n}}const it=(t,e,i,s)=>et(t,i,s?s=>{const n=t[s][e];return n<i||n===i&&t[s+1][e]===i}:s=>t[s][e]<i),st=(t,e,i)=>e...(truncated)...});</script> | |
<style> | |
body { | |
font-family: Arial, sans-serif; | |
margin: 20px; | |
} | |
h1, h2 { | |
color: #2c3e50; | |
} | |
.product { | |
border: 1px solid #ccc; | |
border-radius: 8px; | |
margin-bottom: 20px; | |
padding: 15px; | |
} | |
.services { | |
font-style: italic; | |
color: #555; | |
margin-bottom: 10px; | |
} | |
table { | |
width: 100%; | |
border-collapse: collapse; | |
margin-top: 10px; | |
} | |
th, td { | |
padding: 6px 8px; | |
border: 1px solid #ddd; | |
text-align: left; | |
font-size: 13px; | |
} | |
th { | |
background-color: #f4f4f4; | |
} | |
.failed { | |
color: red; | |
font-weight: bold; | |
} | |
.success { | |
color: green; | |
} | |
.summary { | |
margin-bottom: 20px; | |
} | |
.report-info { | |
background-color: #f8f9fa; | |
border: 1px solid #e9ecef; | |
border-radius: 8px; | |
padding: 15px; | |
margin-bottom: 20px; | |
} | |
.report-info p { | |
margin: 5px 0; | |
color: #495057; | |
} | |
.report-info .label { | |
font-weight: bold; | |
color: #2c3e50; | |
} | |
.stats-container { | |
display: flex; | |
flex-wrap: wrap; | |
gap: 20px; | |
margin-top: 20px; | |
} | |
.stat-box { | |
flex: 1; | |
min-width: 200px; | |
background: #fff; | |
border: 1px solid #e9ecef; | |
border-radius: 8px; | |
padding: 15px; | |
box-shadow: 0 2px 4px rgba(0,0,0,0.05); | |
} | |
.stat-title { | |
font-size: 14px; | |
color: #6c757d; | |
margin-bottom: 10px; | |
} | |
.stat-value { | |
font-size: 24px; | |
font-weight: bold; | |
color: #2c3e50; | |
margin-bottom: 10px; | |
} | |
.stat-bar { | |
height: 8px; | |
background: #e9ecef; | |
border-radius: 4px; | |
overflow: hidden; | |
} | |
.stat-bar-fill { | |
height: 100%; | |
border-radius: 4px; | |
transition: width 0.3s ease; | |
} | |
.stat-bar-products { background-color: #9b59b6; } | |
.stat-bar-services { background-color: #3498db; } | |
.stat-bar-success { background-color: #2ecc71; } | |
.stat-bar-failed { background-color: #e74c3c; } | |
</style> | |
</head> | |
<body> | |
<h1>📋 Log Validation Summary Report</h1> | |
<div class="report-info"> | |
<p><span class="label">Date:</span> 2025-06-17-21-39</p> | |
<p><span class="label">Environment:</span> Production</p> | |
</div> | |
<div class="summary"> | |
<h2>📊 Summary Overview</h2> | |
<div class="stats-container"> | |
<div class="stat-box"> | |
<div class="stat-title">Products</div> | |
<div class="stat-value">17</div> | |
<div class="stat-bar"> | |
<div class="stat-bar-fill stat-bar-products" style="width: 100%"></div> | |
</div> | |
</div> | |
<div class="stat-box"> | |
<div class="stat-title">Services</div> | |
<div class="stat-value">17</div> | |
<div class="stat-bar"> | |
<div class="stat-bar-fill stat-bar-services" style="width: 100%"></div> | |
</div> | |
</div> | |
<div class="stat-box"> | |
<div class="stat-title">Success Rules</div> | |
<div class="stat-value">34</div> | |
<div class="stat-bar"> | |
<div class="stat-bar-fill stat-bar-success" style="width: 66%"></div> | |
</div> | |
</div> | |
<div class="stat-box"> | |
<div class="stat-title">Failed Rules</div> | |
<div class="stat-value">17</div> | |
<div class="stat-bar"> | |
<div class="stat-bar-fill stat-bar-failed" style="width: 33%"></div> | |
</div> | |
</div> | |
</div> | |
</div> | |
<div class="product"> | |
<h2>Product: asset-accounting-backend (aa)</h2> | |
<p class="services">Department: Money Forward Cloud Fixed Assets</p> | |
<p class="services">Services: ERP Development Department</p> | |
<table> | |
<tr> | |
<th>Rule</th> | |
<th>Success</th> | |
<th>Failed</th> | |
<th>Failed Services</th> | |
</tr> | |
<tr> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="success">0</td> | |
<td class="failed">1</td> | |
<td>ERP Development Department</td> | |
</tr> | |
<tr> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
</table> | |
</div> | |
<div class="product"> | |
<h2>Product: pa-web-sidekiq-finalization (pa)</h2> | |
<p class="services">Department: Money Forward Cloud Payroll</p> | |
<p class="services">Services: HR Solutions Department</p> | |
<table> | |
<tr> | |
<th>Rule</th> | |
<th>Success</th> | |
<th>Failed</th> | |
<th>Failed Services</th> | |
</tr> | |
<tr> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="success">0</td> | |
<td class="failed">1</td> | |
<td>HR Solutions Department</td> | |
</tr> | |
<tr> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
</table> | |
</div> | |
<div class="product"> | |
<h2>Product: pa_web (pa)</h2> | |
<p class="services">Department: Money Forward Cloud Payroll</p> | |
<p class="services">Services: HR Solutions Department</p> | |
<table> | |
<tr> | |
<th>Rule</th> | |
<th>Success</th> | |
<th>Failed</th> | |
<th>Failed Services</th> | |
</tr> | |
<tr> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="success">0</td> | |
<td class="failed">1</td> | |
<td>HR Solutions Department</td> | |
</tr> | |
<tr> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
</table> | |
</div> | |
<div class="product"> | |
<h2>Product: pacman-detector (pacman)</h2> | |
<p class="services">Department: Journal voucher uploader</p> | |
<p class="services">Services: Business Platform Development Department</p> | |
<table> | |
<tr> | |
<th>Rule</th> | |
<th>Success</th> | |
<th>Failed</th> | |
<th>Failed Services</th> | |
</tr> | |
<tr> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="success">0</td> | |
<td class="failed">1</td> | |
<td>Business Platform Development Department</td> | |
</tr> | |
<tr> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
</table> | |
</div> | |
<div class="product"> | |
<h2>Product: pacman-gateway (pacman)</h2> | |
<p class="services">Department: Journal voucher uploader</p> | |
<p class="services">Services: Business Platform Development Department</p> | |
<table> | |
<tr> | |
<th>Rule</th> | |
<th>Success</th> | |
<th>Failed</th> | |
<th>Failed Services</th> | |
</tr> | |
<tr> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="success">0</td> | |
<td class="failed">1</td> | |
<td>Business Platform Development Department</td> | |
</tr> | |
<tr> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
</table> | |
</div> | |
<div class="product"> | |
<h2>Product: pacman-uploader (pacman)</h2> | |
<p class="services">Department: Journal voucher uploader</p> | |
<p class="services">Services: Business Platform Development Department</p> | |
<table> | |
<tr> | |
<th>Rule</th> | |
<th>Success</th> | |
<th>Failed</th> | |
<th>Failed Services</th> | |
</tr> | |
<tr> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="success">0</td> | |
<td class="failed">1</td> | |
<td>Business Platform Development Department</td> | |
</tr> | |
<tr> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
</table> | |
</div> | |
<div class="product"> | |
<h2>Product: panda (panda)</h2> | |
<p class="services">Department: Master data</p> | |
<p class="services">Services: SMB Development Department</p> | |
<table> | |
<tr> | |
<th>Rule</th> | |
<th>Success</th> | |
<th>Failed</th> | |
<th>Failed Services</th> | |
</tr> | |
<tr> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="success">0</td> | |
<td class="failed">1</td> | |
<td>SMB Development Department</td> | |
</tr> | |
<tr> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
</table> | |
</div> | |
<div class="product"> | |
<h2>Product: panda.grpc.server (panda)</h2> | |
<p class="services">Department: Master data</p> | |
<p class="services">Services: SMB Development Department</p> | |
<table> | |
<tr> | |
<th>Rule</th> | |
<th>Success</th> | |
<th>Failed</th> | |
<th>Failed Services</th> | |
</tr> | |
<tr> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="success">0</td> | |
<td class="failed">1</td> | |
<td>SMB Development Department</td> | |
</tr> | |
<tr> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
</table> | |
</div> | |
<div class="product"> | |
<h2>Product: payable-backend (pa)</h2> | |
<p class="services">Department: Money Forward Cloud Payroll</p> | |
<p class="services">Services: HR Solutions Department</p> | |
<table> | |
<tr> | |
<th>Rule</th> | |
<th>Success</th> | |
<th>Failed</th> | |
<th>Failed Services</th> | |
</tr> | |
<tr> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="success">0</td> | |
<td class="failed">1</td> | |
<td>HR Solutions Department</td> | |
</tr> | |
<tr> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
</table> | |
</div> | |
<div class="product"> | |
<h2>Product: payable-batch-high (pa)</h2> | |
<p class="services">Department: Money Forward Cloud Payroll</p> | |
<p class="services">Services: HR Solutions Department</p> | |
<table> | |
<tr> | |
<th>Rule</th> | |
<th>Success</th> | |
<th>Failed</th> | |
<th>Failed Services</th> | |
</tr> | |
<tr> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="success">0</td> | |
<td class="failed">1</td> | |
<td>HR Solutions Department</td> | |
</tr> | |
<tr> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
</table> | |
</div> | |
<div class="product"> | |
<h2>Product: project-cost-manhour-backend (pjc)</h2> | |
<p class="services">Department: Money Forward Cloud Project Cost</p> | |
<p class="services">Services: ERP Development Department</p> | |
<table> | |
<tr> | |
<th>Rule</th> | |
<th>Success</th> | |
<th>Failed</th> | |
<th>Failed Services</th> | |
</tr> | |
<tr> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="success">0</td> | |
<td class="failed">1</td> | |
<td>ERP Development Department</td> | |
</tr> | |
<tr> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
</table> | |
</div> | |
<div class="product"> | |
<h2>Product: project-cost-manhour-worker (pjc)</h2> | |
<p class="services">Department: Money Forward Cloud Project Cost</p> | |
<p class="services">Services: ERP Development Department</p> | |
<table> | |
<tr> | |
<th>Rule</th> | |
<th>Success</th> | |
<th>Failed</th> | |
<th>Failed Services</th> | |
</tr> | |
<tr> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="success">0</td> | |
<td class="failed">1</td> | |
<td>ERP Development Department</td> | |
</tr> | |
<tr> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
</table> | |
</div> | |
<div class="product"> | |
<h2>Product: project-cost-pjm-consumer (pjc)</h2> | |
<p class="services">Department: Money Forward Cloud Project Cost</p> | |
<p class="services">Services: ERP Development Department</p> | |
<table> | |
<tr> | |
<th>Rule</th> | |
<th>Success</th> | |
<th>Failed</th> | |
<th>Failed Services</th> | |
</tr> | |
<tr> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="success">0</td> | |
<td class="failed">1</td> | |
<td>ERP Development Department</td> | |
</tr> | |
<tr> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
</table> | |
</div> | |
<div class="product"> | |
<h2>Product: project-cost-worker (pjc)</h2> | |
<p class="services">Department: Money Forward Cloud Project Cost</p> | |
<p class="services">Services: ERP Development Department</p> | |
<table> | |
<tr> | |
<th>Rule</th> | |
<th>Success</th> | |
<th>Failed</th> | |
<th>Failed Services</th> | |
</tr> | |
<tr> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="success">0</td> | |
<td class="failed">1</td> | |
<td>ERP Development Department</td> | |
</tr> | |
<tr> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
</table> | |
</div> | |
<div class="product"> | |
<h2>Product: project-master (project_master)</h2> | |
<p class="services">Department: Project master platform</p> | |
<p class="services">Services: ERP Development Department</p> | |
<table> | |
<tr> | |
<th>Rule</th> | |
<th>Success</th> | |
<th>Failed</th> | |
<th>Failed Services</th> | |
</tr> | |
<tr> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="success">0</td> | |
<td class="failed">1</td> | |
<td>ERP Development Department</td> | |
</tr> | |
<tr> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
</table> | |
</div> | |
<div class="product"> | |
<h2>Product: project-master-csvimport (project_master)</h2> | |
<p class="services">Department: Project master platform</p> | |
<p class="services">Services: ERP Development Department</p> | |
<table> | |
<tr> | |
<th>Rule</th> | |
<th>Success</th> | |
<th>Failed</th> | |
<th>Failed Services</th> | |
</tr> | |
<tr> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="success">0</td> | |
<td class="failed">1</td> | |
<td>ERP Development Department</td> | |
</tr> | |
<tr> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
</table> | |
</div> | |
<div class="product"> | |
<h2>Product: project-master-worker (project_master)</h2> | |
<p class="services">Department: Project master platform</p> | |
<p class="services">Services: ERP Development Department</p> | |
<table> | |
<tr> | |
<th>Rule</th> | |
<th>Success</th> | |
<th>Failed</th> | |
<th>Failed Services</th> | |
</tr> | |
<tr> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="success">0</td> | |
<td class="failed">1</td> | |
<td>ERP Development Department</td> | |
</tr> | |
<tr> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">1</td> | |
<td class="success">0</td> | |
<td>–</td> | |
</tr> | |
</table> | |
</div> | |
<div class="detail-report"> | |
<h2>📝 Detailed Results</h2> | |
<table class="detail-table"> | |
<thead> | |
<tr> | |
<th>No</th> | |
<th>Product</th> | |
<th>Service</th> | |
<th>Rule</th> | |
<th>Status</th> | |
<th>Missing Fields</th> | |
<th>Exposed Data</th> | |
</tr> | |
</thead> | |
<tbody> | |
<tr> | |
<td>1</td> | |
<td rowspan="3">asset-accounting-backend</td> | |
<td>ERP Development Department</td> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>2</td> | |
<td>ERP Development Department</td> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="failed">Failed</td> | |
<td>timestamp, service, status, env, level, trace_id, span_id</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>3</td> | |
<td>ERP Development Department</td> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>4</td> | |
<td rowspan="3">pa-web-sidekiq-finalization</td> | |
<td>HR Solutions Department</td> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>5</td> | |
<td>HR Solutions Department</td> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="failed">Failed</td> | |
<td>timestamp, service, status, env, level, trace_id, span_id</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>6</td> | |
<td>HR Solutions Department</td> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>7</td> | |
<td rowspan="3">pa_web</td> | |
<td>HR Solutions Department</td> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>8</td> | |
<td>HR Solutions Department</td> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="failed">Failed</td> | |
<td>timestamp, service, status, env, level, trace_id, span_id</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>9</td> | |
<td>HR Solutions Department</td> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>10</td> | |
<td rowspan="3">pacman-detector</td> | |
<td>Business Platform Development Department</td> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>11</td> | |
<td>Business Platform Development Department</td> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="failed">Failed</td> | |
<td>timestamp, service, status, env, level, trace_id, span_id</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>12</td> | |
<td>Business Platform Development Department</td> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>13</td> | |
<td rowspan="3">pacman-gateway</td> | |
<td>Business Platform Development Department</td> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>14</td> | |
<td>Business Platform Development Department</td> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="failed">Failed</td> | |
<td>timestamp, service, status, env, level, trace_id, span_id</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>15</td> | |
<td>Business Platform Development Department</td> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>16</td> | |
<td rowspan="3">pacman-uploader</td> | |
<td>Business Platform Development Department</td> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>17</td> | |
<td>Business Platform Development Department</td> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="failed">Failed</td> | |
<td>timestamp, service, status, env, level, trace_id, span_id</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>18</td> | |
<td>Business Platform Development Department</td> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>19</td> | |
<td rowspan="3">panda</td> | |
<td>SMB Development Department</td> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>20</td> | |
<td>SMB Development Department</td> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="failed">Failed</td> | |
<td>timestamp, service, status, env, level, trace_id, span_id</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>21</td> | |
<td>SMB Development Department</td> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>22</td> | |
<td rowspan="3">panda.grpc.server</td> | |
<td>SMB Development Department</td> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>23</td> | |
<td>SMB Development Department</td> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="failed">Failed</td> | |
<td>timestamp, service, status, env, level, trace_id, span_id</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>24</td> | |
<td>SMB Development Department</td> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>25</td> | |
<td rowspan="3">payable-backend</td> | |
<td>HR Solutions Department</td> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>26</td> | |
<td>HR Solutions Department</td> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="failed">Failed</td> | |
<td>timestamp, service, status, env, level, trace_id, span_id</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>27</td> | |
<td>HR Solutions Department</td> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>28</td> | |
<td rowspan="3">payable-batch-high</td> | |
<td>HR Solutions Department</td> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>29</td> | |
<td>HR Solutions Department</td> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="failed">Failed</td> | |
<td>timestamp, service, status, env, level, trace_id, span_id</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>30</td> | |
<td>HR Solutions Department</td> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>31</td> | |
<td rowspan="3">project-cost-manhour-backend</td> | |
<td>ERP Development Department</td> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>32</td> | |
<td>ERP Development Department</td> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="failed">Failed</td> | |
<td>timestamp, service, status, env, level, trace_id, span_id</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>33</td> | |
<td>ERP Development Department</td> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>34</td> | |
<td rowspan="3">project-cost-manhour-worker</td> | |
<td>ERP Development Department</td> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>35</td> | |
<td>ERP Development Department</td> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="failed">Failed</td> | |
<td>timestamp, service, status, env, level, trace_id, span_id</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>36</td> | |
<td>ERP Development Department</td> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>37</td> | |
<td rowspan="3">project-cost-pjm-consumer</td> | |
<td>ERP Development Department</td> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>38</td> | |
<td>ERP Development Department</td> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="failed">Failed</td> | |
<td>timestamp, service, status, env, level, trace_id, span_id</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>39</td> | |
<td>ERP Development Department</td> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>40</td> | |
<td rowspan="3">project-cost-worker</td> | |
<td>ERP Development Department</td> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>41</td> | |
<td>ERP Development Department</td> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="failed">Failed</td> | |
<td>timestamp, service, status, env, level, trace_id, span_id</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>42</td> | |
<td>ERP Development Department</td> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>43</td> | |
<td rowspan="3">project-master</td> | |
<td>ERP Development Department</td> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>44</td> | |
<td>ERP Development Department</td> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="failed">Failed</td> | |
<td>timestamp, service, status, env, level, trace_id, span_id</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>45</td> | |
<td>ERP Development Department</td> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>46</td> | |
<td rowspan="3">project-master-csvimport</td> | |
<td>ERP Development Department</td> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>47</td> | |
<td>ERP Development Department</td> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="failed">Failed</td> | |
<td>timestamp, service, status, env, level, trace_id, span_id</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>48</td> | |
<td>ERP Development Department</td> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>49</td> | |
<td rowspan="3">project-master-worker</td> | |
<td>ERP Development Department</td> | |
<td>Rule 1 - Log Format</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>50</td> | |
<td>ERP Development Department</td> | |
<td>Rule 2 - Log Parameters</td> | |
<td class="failed">Failed</td> | |
<td>timestamp, service, status, env, level, trace_id, span_id</td> | |
<td>–</td> | |
</tr> | |
<tr> | |
<td>51</td> | |
<td>ERP Development Department</td> | |
<td>Rule 3 - Log Sensitive Data</td> | |
<td class="success">Success</td> | |
<td>–</td> | |
<td>–</td> | |
</tr> | |
</tbody> | |
</table> | |
</div> | |
</table> | |
</div> | |
<style> | |
.detail-report { | |
margin-top: 30px; | |
overflow-x: auto; | |
} | |
.detail-table { | |
width: 100%; | |
border-collapse: collapse; | |
margin-top: 10px; | |
font-size: 13px; | |
} | |
.detail-table th, | |
.detail-table td { | |
padding: 8px 12px; | |
border: 1px solid #ddd; | |
text-align: left; | |
vertical-align: top; | |
} | |
.detail-table th { | |
background-color: #f4f4f4; | |
font-weight: bold; | |
position: sticky; | |
top: 0; | |
} | |
.detail-table tr:nth-child(even) { | |
background-color: #f9f9f9; | |
} | |
.detail-table tr:hover { | |
background-color: #f5f5f5; | |
} | |
.detail-table td[rowspan] { | |
vertical-align: middle; | |
background-color: #f8f9fa; | |
} | |
</style> | |
<script> | |
const ctx = document.getElementById('summaryChart').getContext('2d'); | |
const totalProducts = 17; | |
const totalServices = 17; | |
const totalSuccess = 34; | |
const totalFailed = 17; | |
new Chart(ctx, { | |
type: 'bar', | |
data: { | |
labels: ['Product Count', 'Services Count', 'Success Rule Count', 'Failed Rule Count'], | |
datasets: [{ | |
label: 'Log Summary', | |
data: [totalProducts, totalServices, totalSuccess, totalFailed], | |
backgroundColor: ['#9b59b6', '#3498db', '#2ecc71', '#e74c3c'] | |
}] | |
}, | |
options: { | |
responsive: false, | |
plugins: { | |
legend: { display: false } | |
}, | |
scales: { | |
y: { | |
beginAtZero: true, | |
ticks: { | |
precision: 0, | |
font: { size: 12 } | |
} | |
}, | |
x: { | |
ticks: { font: { size: 12 } } | |
} | |
} | |
} | |
}); | |
</script> | |
</body> | |
</html> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment