Medication Update

This commit is contained in:
meninjar
2026-04-26 08:06:57 +00:00
parent 9a15d74283
commit 24d25aa14a
37 changed files with 82527 additions and 2172 deletions
+6 -4
View File
@@ -7,6 +7,8 @@ LOGGER_FORMAT=text
# SERVER_TYPE=rest # This will enable the HTTP REST server
SERVER_PORT=8098
SATU_SEHAT_INTERNAL_FHIR_SERVER_URL=http://service-satusehat:8096/api/v1/
AUTH_TYPE=hybrid
# # Multiple Static Tokens (comma-separated list)
AUTH_STATIC_TOKENS=token5,token6,token7,token8
@@ -51,10 +53,10 @@ POSTGRES_DEFAULT_TIMEOUT=5s
# # Timeout koneksi database
# POSTGRES_DEFAULT_TIMEOUT=5s
POSTGRES_SIMRS_HOST=10.10.123.238
POSTGRES_SIMRS_HOST=10.10.123.163
POSTGRES_SIMRS_PORT=5432
POSTGRES_SIMRS_USERNAME=brawijaya
POSTGRES_SIMRS_PASSWORD=ub*2025
POSTGRES_SIMRS_USERNAME=simrs
POSTGRES_SIMRS_PASSWORD=simrs.rssa
POSTGRES_SIMRS_DATABASE=simrs
POSTGRES_SIMRS_SSLMODE=disable
@@ -156,7 +158,7 @@ SATUSEHAT_KFA_URL=https://api-satusehat.kemkes.go.id/kfa-v2
SWAGGER_HOST=localhost:8098 # Use the mapped port for external access
# CORS Configuration untuk Nuxt 3
CORS_ORIGINS=http://localhost:3000,http://localhost:3001,http://localhost:3002,http://localhost:3005,http://meninjar.dev.rssa.id:8093,http://localhost:8080,http://localhost:5173,http://localhost:5174,http://10.10.123.143:3001
CORS_ORIGINS=http://localhost:3000,http://localhost:3001,http://localhost:3002,http://localhost:3005,http://meninjar.dev.rssa.id:8093,http://localhost:8080,http://localhost:5173,http://localhost:5174,http://10.10.123.143:3001,http://10.10.123.147:8098
CORS_ALLOW_ALL=false
APP_ENV=development
+15 -19
View File
@@ -3,7 +3,6 @@ package main
import (
"context"
"fmt"
"net/http"
"os"
"os/signal"
@@ -13,12 +12,13 @@ import (
"service/internal/infrastructure/cache"
"service/internal/infrastructure/config"
"service/internal/infrastructure/database"
grpcServers "service/internal/infrastructure/transport/grpc/servers"
httpServer "service/internal/infrastructure/transport/http/servers"
"service/internal/interfaces/minio"
"service/internal/interfaces/satusehat"
"service/internal/worker"
"service/pkg/logger"
imagingStudyWorker "service/internal/worker/satusehat/imagingstudy"
// roleComponent "service/internal/master/role/component"
roleMaster "service/internal/master/role/master"
rolePages "service/internal/master/role/pages"
@@ -26,8 +26,6 @@ import (
_ "service/docs/swagger" // Wajib: import swagger docs yang di-generate oleh swag CLI
grpcServers "service/internal/infrastructure/transport/grpc/servers"
"golang.org/x/sync/errgroup"
)
@@ -159,20 +157,6 @@ func main() {
g, ctx := errgroup.WithContext(ctx)
// --- [NEW] Start Background Workers ---
if cfg.SatuSehat.Enabled {
imagingStudyWorkerCfg := imagingStudyWorker.Config{
DBManager: dbService,
InternalBaseURL: fmt.Sprintf("http://localhost:%d%s", cfg.Server.REST.Port, cfg.Swagger.BasePath), // otomatis: http://localhost:8080/api/v1
InternalToken: "", // Isi token di sini jika endpoint internal Usecase Anda membutuhkan Bearer Token
OrganizationID: cfg.SatuSehat.OrgID,
}
isWorker := imagingStudyWorker.NewWorker(imagingStudyWorkerCfg)
g.Go(func() error {
isWorker.Run(ctx)
return nil
})
}
serverCount := 0
@@ -244,6 +228,18 @@ func main() {
logger.Default().Fatal("No server enabled (REST and gRPC are both disabled in config)")
}
// --- [NEW] Start Background Workers ---
if cfg.SatuSehat.Enabled {
// Inisialisasi Worker Manager yang akan mengelola semua background workers.
// satusehatClient bisa di-pass jika diperlukan oleh worker lain.
var satusehatClient satusehat.SatuSehatClient // Ganti nil dengan inisialisasi client jika sudah ada
workerManager := worker.NewManager(cfg, dbService, satusehatClient)
g.Go(func() error {
workerManager.Start(ctx)
return nil
})
}
// --- [C] Graceful Shutdown Listener ---
g.Go(func() error {
quit := make(chan os.Signal, 1)
-83
View File
@@ -1,83 +0,0 @@
// File: /home/meninjar/goprint/service/cmd/api/main.go (Update)
package main
import (
"context"
"log"
"service/internal/infrastructure/cache"
"service/internal/infrastructure/config"
"service/internal/infrastructure/database"
"service/internal/infrastructure/monitoring"
"service/pkg/logger"
// Inisialisasi master/reference Ethnic Handler
"github.com/gin-gonic/gin"
"github.com/prometheus/client_golang/prometheus/promhttp"
)
func main() {
// ... existing config loading ...
cfg := config.LoadConfig()
// 2. Init Logger dengan konfigurasi dari config
loggerConfig := logger.Config{
Level: cfg.Logger.Level,
Format: cfg.Logger.Format,
Output: "console",
ServiceName: "service-general",
Environment: cfg.Server.Mode,
}
logger.Init(loggerConfig)
// Initialize Prometheus Metrics
metrics := monitoring.NewMetrics("goprint-service")
// 2. Init Database
dbService := database.New(cfg)
defer dbService.Close()
// Run Database Migrations
if err := dbService.Migrate(); err != nil {
log.Printf("⚠️ Migration warning: %v", err)
}
// Get GORM DB Connection with metrics wrapper
// 3. Init Cache using factory pattern
cacheFactory := cache.NewFactory(cfg.Cache)
cacheManager, err := cacheFactory.CreateManager()
if err != nil {
log.Fatalf("❌ Failed to initialize cache manager: %v", err)
}
defer cacheManager.Close()
// Initialize Health Monitor
healthMonitor := monitoring.NewHealthMonitor(metrics, dbService, cacheManager, cfg)
// Start health monitoring in background
ctx, cancel := context.WithCancel(context.Background())
defer cancel()
go healthMonitor.Start(ctx)
// 4. Init Layers (Repo & Usecase) - Now with wrapped DB
// Update all repository initializations to use wrappedDB
// Example:
// ethnicRepo := ethnic.NewRepository(wrappedDB)
// ethnicService := ethnic.NewService(ethnicRepo)
// ethnicHandler := handlers.NewEthnicHandler(ethnicService)
// 5. Init HTTP Server with metrics
engine := gin.New()
// Add metrics middleware
engine.Use(monitoring.MetricsMiddleware(metrics))
// Register Prometheus metrics endpoint
engine.GET("/metrics", gin.WrapH(promhttp.Handler()))
// Register health endpoint with metrics
healthMonitor.RegisterHealthEndpoint(engine)
// ... rest of the setup ...
}
-63
View File
@@ -1,63 +0,0 @@
package main
import (
"context"
"os"
"os/signal"
"syscall"
"service/internal/infrastructure/config"
"service/internal/infrastructure/database"
satuSehatFactory "service/internal/interfaces/satusehat"
"service/internal/worker"
"service/pkg/logger"
)
func main() {
// 1. Load Configuration
cfg := config.LoadConfig()
// 2. Initialize Logger khusus untuk Worker
loggerConfig := logger.Config{
Level: cfg.Logger.Level,
Format: cfg.Logger.Format,
Output: "both",
ServiceName: "service-worker", // Penanda log khusus worker
EnableCaller: cfg.Server.Mode != "production",
Environment: cfg.Server.Mode,
}
logger.Init(loggerConfig)
logger.Default().Info("Background Worker Microservice starting...",
logger.String("environment", cfg.Server.Mode),
logger.String("log_level", cfg.Logger.Level),
)
if err := cfg.Validate(); err != nil {
logger.Default().Fatal("Config validation failed", logger.ErrorField(err))
}
// 3. Initialize Database Manager
dbService := database.New(cfg)
defer dbService.Close()
// 4. Initialize SatuSehat Client (Dibutuhkan oleh worker manager)
satusehatFact := satuSehatFactory.NewSatuSehatFactory(cfg.SatuSehat)
satusehatClient := satusehatFact.Client()
// 5. Setup Context untuk Graceful Shutdown
ctx, cancel := context.WithCancel(context.Background())
defer cancel()
// 6. Initialize dan Jalankan Worker Manager
workerManager := worker.NewManager(cfg, dbService, satusehatClient)
workerManager.Start(ctx)
// 7. Listener untuk OS Signals (Ctrl+C / SIGTERM)
quit := make(chan os.Signal, 1)
signal.Notify(quit, syscall.SIGINT, syscall.SIGTERM)
<-quit // Block aplikasi sampai signal diterima
logger.Default().Warn("Signal received, shutting down worker service...")
cancel() // Batalkan context, trigger penghentian semua worker
}
+2
View File
@@ -118,6 +118,8 @@ satu_sehat:
base_url: https://api-satusehat.kemkes.go.id/fhir-r4/v1
# Overridden by SATU_SEHAT_CONSENT_URL
consent_url: https://api-satusehat.dto.kemkes.go.id/consent/v1
# Overridden by SATU_SEHAT_INTERNAL_FHIR_SERVER_URL
internal_fhir_server_url: http://service-satusehat:8096/api/v1/
# Overridden by SATU_SEHAT_KFA_URL
kfa_url: https://api-satusehat.kemkes.go.id/kfa-v2
timeout: 30s
+5 -5
View File
@@ -10,13 +10,13 @@ networks:
external: true
name: service-general_default
# Shared network for cross-container communication
shared-simrs-network:
external: true
name: shared-simrs-network
# shared-simrs-network:
# external: true
# name: shared-simrs-network
services:
app-dev:
container_name: service-general-farmasi
container_name: worker-satusehat
build:
context: .
dockerfile: Dockerfile.dev
@@ -37,5 +37,5 @@ services:
# - redis # Redis is managed separately
networks:
- general-app-network
- shared-simrs-network
# - shared-simrs-network
restart: unless-stopped
+10 -8
View File
@@ -106,7 +106,7 @@ func (r *repository) FindUserByEmail(ctx context.Context, email string) (*User,
var user User
q := query.DynamicQuery{
From: "users", // GORM default table name for User struct
From: "public.users", // Gunakan nama tabel yang eksplisit
Filters: []query.FilterGroup{{
Filters: []query.DynamicFilter{
query.CreateEqualFilter("Email", email),
@@ -117,7 +117,8 @@ func (r *repository) FindUserByEmail(ctx context.Context, email string) (*User,
if err := r.qb.ExecuteQueryRow(ctx, sqlxDB, q, &user); err != nil {
if errors.Is(err, sql.ErrNoRows) {
return nil, nil // Not found is not an error, service layer will handle it
// Not found is not an error, service layer will handle it
return nil, nil
}
return nil, fmt.Errorf("failed to find user by email: %w", err)
}
@@ -159,7 +160,7 @@ func (r *repository) ChangePasswordInTx(ctx context.Context, userID int64, newPa
}}
// Berikan objek transaksi 'tx' ke Query Builder
if _, err = r.qb.ExecuteUpdate(ctx, tx, "users", updateData, filters); err != nil {
if _, err = r.qb.ExecuteUpdate(ctx, tx, "public.users", updateData, filters); err != nil {
return fmt.Errorf("failed to update password in tx: %w", err)
}
@@ -170,7 +171,7 @@ func (r *repository) ChangePasswordInTx(ctx context.Context, userID int64, newPa
}
// Gunakan objek transaksi 'tx' yang sama
if _, err = r.qb.ExecuteInsert(ctx, tx, "user_activity_logs", logData); err != nil {
if _, err = r.qb.ExecuteInsert(ctx, tx, "public.user_activity_logs", logData); err != nil {
// Asumsikan tabel 'user_activity_logs' ada
return fmt.Errorf("failed to log activity in tx: %w", err)
}
@@ -187,7 +188,7 @@ func (r *repository) FindUserByID(ctx context.Context, id int64) (*User, error)
var user User
q := query.DynamicQuery{
From: "users", // GORM default table name for User struct
From: "public.users",
Filters: []query.FilterGroup{{
Filters: []query.DynamicFilter{
query.CreateEqualFilter("Id", id),
@@ -198,7 +199,8 @@ func (r *repository) FindUserByID(ctx context.Context, id int64) (*User, error)
if err := r.qb.ExecuteQueryRow(ctx, sqlxDB, q, &user); err != nil {
if errors.Is(err, sql.ErrNoRows) {
return nil, nil // Not found is not an error, service layer will handle it
// Not found is not an error, service layer will handle it
return nil, nil
}
return nil, fmt.Errorf("failed to find user by id: %w", err)
}
@@ -213,7 +215,7 @@ func (r *repository) FindRefreshToken(ctx context.Context, token string) (*Store
var stored StoredToken
q := query.DynamicQuery{
From: "refresh_tokens",
From: "public.refresh_tokens",
Filters: []query.FilterGroup{{
Filters: []query.DynamicFilter{query.CreateEqualFilter("Token", token)},
}},
@@ -238,5 +240,5 @@ func (r *repository) RevokeAndSaveTokens(ctx context.Context, oldToken string, n
// TODO: Sesuaikan dengan struktur tabel Refresh Token yang Anda miliki di database
// Ini adalah stub untuk memenuhi kontrak interface
return writeDB.WithContext(ctx).Exec("UPDATE refresh_tokens SET is_revoked = ? WHERE token = ?", true, oldToken).Error
return writeDB.WithContext(ctx).Exec("UPDATE public.refresh_tokens SET is_revoked = ? WHERE token = ?", true, oldToken).Error
}
+50 -21
View File
@@ -14,6 +14,7 @@ import (
"time"
"github.com/golang-jwt/jwt/v5"
"golang.org/x/crypto/bcrypt"
)
type StoredToken struct {
@@ -53,25 +54,39 @@ func NewService(cmdRepo CommandRepository, queryRepo QueryRepository, cache *cac
// Login mengimplementasikan otentikasi menggunakan data dummy untuk keperluan testing.
func (s *service) Login(ctx context.Context, req LoginRequest) (*LoginResponse, error) {
// Simulasi pengecekan kredensial dengan beberapa akun dummy
type dummyUser struct {
Password string
UserID string
RoleID string
Name string
// Prioritaskan pengecekan dummy users untuk development, terutama untuk akun sistem seperti worker.
if dummyUser, exists := dummyUsers[req.Email]; exists {
if dummyUser.Password == req.Password {
// Jika kredensial cocok dengan dummy user, langsung generate token.
return s.generateTokens(dummyUser.UserID, req.Email, dummyUser.RoleID, dummyUser.Name)
}
}
dummyUsers := map[string]dummyUser{
"[email protected]": {"password123", "1001", "admin", "Admin Dummy"},
"[email protected]": {"password123", "1002", "user", "User Dummy"},
"[email protected]": {"password123", "1003", "manager", "Manager Dummy"},
// Jika tidak ditemukan di dummy users atau password salah, lanjutkan pengecekan ke database.
user, err := s.queryRepo.FindUserByEmail(ctx, req.Email)
if err != nil {
// Jika terjadi error saat query, kembalikan internal error
return nil, errors.InternalError().Cause(err).Message("Gagal mencari pengguna").Build()
}
user, exists := dummyUsers[req.Email]
if !exists || user.Password != req.Password {
return nil, errors.UnauthorizedError().Message("Email atau password salah. Coba: [email protected], [email protected], [email protected] (password123)").Build()
// Jika pengguna tidak ditemukan di mana pun (dummy atau DB).
if user == nil {
return nil, errors.UnauthorizedError().Message("Email atau password salah.").Build()
}
// Jika pengguna ditemukan di database, validasi password
// Asumsi password di database di-hash menggunakan bcrypt
err = bcrypt.CompareHashAndPassword([]byte(user.Password), []byte(req.Password))
if err != nil {
// Jika password tidak cocok
return nil, errors.UnauthorizedError().Message("Email atau password salah.").Build()
}
// Jika login berhasil, generate token
return s.generateTokens(fmt.Sprintf("%d", user.Id), user.Email, fmt.Sprintf("%d", *user.RoleID), user.Email)
}
func (s *service) generateTokens(userID, email, roleID, name string) (*LoginResponse, error) {
secret := os.Getenv("JWT_SECRET")
if secret == "" {
secret = "fallback_secret_key_change_in_production"
@@ -79,20 +94,20 @@ func (s *service) Login(ctx context.Context, req LoginRequest) (*LoginResponse,
// Buat Access Token baru (Umur pendek, misal 15 Menit)
accessToken := jwt.NewWithClaims(jwt.SigningMethodHS256, jwt.MapClaims{
"user_id": user.UserID,
"email": req.Email,
"role_id": user.RoleID,
"name": user.Name,
"user_id": userID,
"email": email,
"role_id": roleID,
"name": name,
"exp": time.Now().Add(60 * time.Minute).Unix(),
})
newAccessTokenStr, _ := accessToken.SignedString([]byte(secret))
// Buat Refresh Token baru (Umur panjang, misal 7 Hari)
refreshToken := jwt.NewWithClaims(jwt.SigningMethodHS256, jwt.MapClaims{
"user_id": user.UserID,
"email": req.Email,
"role_id": user.RoleID,
"name": user.Name,
"user_id": userID,
"email": email,
"role_id": roleID,
"name": name,
"exp": time.Now().Add(7 * 24 * time.Hour).Unix(),
})
newRefreshTokenStr, _ := refreshToken.SignedString([]byte(secret))
@@ -106,6 +121,20 @@ func (s *service) Login(ctx context.Context, req LoginRequest) (*LoginResponse,
}, nil
}
type dummyUser struct {
Password string
UserID string
RoleID string
Name string
}
var dummyUsers = map[string]dummyUser{
"[email protected]": {"password123", "1001", "admin", "Admin Dummy"},
"[email protected]": {"password123", "1002", "user", "User Dummy"},
"[email protected]": {"password123", "1003", "manager", "Manager Dummy"},
"[email protected]": {"password123", "1004", "worker", "Worker Dummy"},
}
// Register mengimplementasikan pendaftaran user dengan respons data json dummy.
func (s *service) Register(ctx context.Context, req RegisterRequest) (interface{}, error) {
// Mengembalikan response dummy seolah-olah user berhasil dibuat di DB
+22 -20
View File
@@ -124,16 +124,17 @@ type BpjsConfig struct {
}
type SatuSehatConfig struct {
Enabled bool `mapstructure:"enabled"`
OrgID string `mapstructure:"org_id"`
FasyakesID string `mapstructure:"fasyakes_id"`
ClientID string `mapstructure:"client_id"`
ClientSecret string `mapstructure:"client_secret"`
AuthURL string `mapstructure:"auth_url"`
BaseURL string `mapstructure:"base_url"`
ConsentURL string `mapstructure:"consent_url"`
KFAURL string `mapstructure:"kfa_url"`
Timeout time.Duration `mapstructure:"timeout"`
Enabled bool `mapstructure:"enabled"`
OrgID string `mapstructure:"org_id"`
FasyakesID string `mapstructure:"fasyakes_id"`
ClientID string `mapstructure:"client_id"`
ClientSecret string `mapstructure:"client_secret"`
AuthURL string `mapstructure:"auth_url"`
BaseURL string `mapstructure:"base_url"`
ConsentURL string `mapstructure:"consent_url"`
InternalFHIRServerURL string `mapstructure:"internal_fhir_server_url"`
KFAURL string `mapstructure:"kfa_url"`
Timeout time.Duration `mapstructure:"timeout"`
}
type SwaggerConfig struct {
@@ -271,16 +272,17 @@ func LoadConfig() *Config {
Timeout: parseDuration(getEnv("BPJS_TIMEOUT", "30s")),
},
SatuSehat: SatuSehatConfig{
Enabled: getEnvAsBool("SATUSEHAT_ENABLED", getEnvAsBool("SATU_SEHAT_ENABLED", false)),
OrgID: getEnv("SATUSEHAT_ORG_ID", getEnv("BRIDGING_SATUSEHAT_ORG_ID", "")),
FasyakesID: getEnv("SATUSEHAT_FASYAKES_ID", getEnv("BRIDGING_SATUSEHAT_FASYAKES_ID", "")),
ClientID: getEnv("SATUSEHAT_CLIENT_ID", getEnv("BRIDGING_SATUSEHAT_CLIENT_ID", "")),
ClientSecret: getEnv("SATUSEHAT_CLIENT_SECRET", getEnv("BRIDGING_SATUSEHAT_CLIENT_SECRET", "")),
AuthURL: getEnv("SATUSEHAT_AUTH_URL", getEnv("BRIDGING_SATUSEHAT_AUTH_URL", "https://api-satusehat.kemkes.go.id/oauth2/v1")),
BaseURL: getEnv("SATUSEHAT_BASE_URL", getEnv("BRIDGING_SATUSEHAT_BASE_URL", "https://api-satusehat.kemkes.go.id/fhir-r4/v1")),
ConsentURL: getEnv("SATUSEHAT_CONSENT_URL", getEnv("BRIDGING_SATUSEHAT_CONSENT_URL", "https://api-satusehat.dto.kemkes.go.id/consent/v1")),
KFAURL: getEnv("SATUSEHAT_KFA_URL", getEnv("BRIDGING_SATUSEHAT_KFA_URL", "https://api-satusehat.kemkes.go.id/kfa-v2")),
Timeout: parseDuration(getEnv("SATUSEHAT_TIMEOUT", getEnv("BRIDGING_SATUSEHAT_TIMEOUT", "30s"))),
Enabled: getEnvAsBool("SATUSEHAT_ENABLED", getEnvAsBool("SATU_SEHAT_ENABLED", false)),
OrgID: getEnv("SATUSEHAT_ORG_ID", getEnv("BRIDGING_SATUSEHAT_ORG_ID", "")),
FasyakesID: getEnv("SATUSEHAT_FASYAKES_ID", getEnv("BRIDGING_SATUSEHAT_FASYAKES_ID", "")),
ClientID: getEnv("SATUSEHAT_CLIENT_ID", getEnv("BRIDGING_SATUSEHAT_CLIENT_ID", "")),
ClientSecret: getEnv("SATUSEHAT_CLIENT_SECRET", getEnv("BRIDGING_SATUSEHAT_CLIENT_SECRET", "")),
AuthURL: getEnv("SATUSEHAT_AUTH_URL", getEnv("BRIDGING_SATUSEHAT_AUTH_URL", "https://api-satusehat.kemkes.go.id/oauth2/v1")),
BaseURL: getEnv("SATUSEHAT_BASE_URL", getEnv("BRIDGING_SATUSEHAT_BASE_URL", "https://api-satusehat.kemkes.go.id/fhir-r4/v1")),
ConsentURL: getEnv("SATUSEHAT_CONSENT_URL", getEnv("BRIDGING_SATUSEHAT_CONSENT_URL", "https://api-satusehat.dto.kemkes.go.id/consent/v1")),
InternalFHIRServerURL: getEnv("SATU_SEHAT_INTERNAL_FHIR_SERVER_URL", "http://localhost:8096/api/v1/"),
KFAURL: getEnv("SATUSEHAT_KFA_URL", getEnv("BRIDGING_SATUSEHAT_KFA_URL", "https://api-satusehat.kemkes.go.id/kfa-v2")),
Timeout: parseDuration(getEnv("SATUSEHAT_TIMEOUT", getEnv("BRIDGING_SATUSEHAT_TIMEOUT", "30s"))),
},
Swagger: SwaggerConfig{
Title: getEnv("SWAGGER_TITLE", "SERVICE API"),
+150
View File
@@ -0,0 +1,150 @@
package worker
import (
"bytes"
"context"
"encoding/json"
"fmt"
"io"
"net/http"
"service/internal/auth"
"service/pkg/logger"
"strings"
"time"
)
// apiLoginResponse is a helper struct to unmarshal the nested API response.
type apiLoginResponse struct {
Data auth.LoginResponse `json:"data"`
}
// login performs the initial login to get the first set of tokens.
func (m *Manager) login(ctx context.Context) error {
loginURL := fmt.Sprintf("%s/auth/login", strings.TrimRight(m.cfg.SatuSehat.InternalFHIRServerURL, "/"))
reqBody := map[string]string{
"email": "[email protected]",
"password": "password123",
}
payloadBytes, _ := json.Marshal(reqBody)
req, err := http.NewRequestWithContext(ctx, "POST", loginURL, bytes.NewBuffer(payloadBytes))
if err != nil {
return fmt.Errorf("gagal membuat login request: %w", err)
}
req.Header.Set("Content-Type", "application/json")
logger.Default().Info("[WORKER AUTH] Melakukan login untuk mendapatkan token awal...", logger.String("url", loginURL))
client := &http.Client{Timeout: 15 * time.Second}
resp, err := client.Do(req)
if err != nil {
return fmt.Errorf("gagal melakukan login request: %w", err)
}
defer resp.Body.Close()
// Baca body untuk logging jika terjadi error
bodyBytes, readErr := io.ReadAll(resp.Body)
if readErr != nil {
return fmt.Errorf("gagal membaca response body login: %w", readErr)
}
if resp.StatusCode != http.StatusOK {
return fmt.Errorf("login gagal dengan status: %d, response: %s", resp.StatusCode, string(bodyBytes))
}
var apiResp apiLoginResponse
if err := json.Unmarshal(bodyBytes, &apiResp); err != nil {
return fmt.Errorf("gagal decode response login: %w, body: %s", err, string(bodyBytes))
}
loginResp := apiResp.Data
if loginResp.AccessToken == "" || loginResp.RefreshToken == "" {
logger.Default().Error("[WORKER AUTH] Token kosong diterima dari server", logger.Any("response", loginResp))
return fmt.Errorf("access token atau refresh token kosong diterima dari server")
}
m.accessToken = loginResp.AccessToken
m.refreshToken = loginResp.RefreshToken
logger.Default().Info("[WORKER AUTH] Berhasil mendapatkan token awal.")
return nil
}
// refresh uses the refresh_token to get a new access_token.
func (m *Manager) refresh(ctx context.Context) error {
refreshURL := fmt.Sprintf("%s/auth/refresh", strings.TrimRight(m.cfg.SatuSehat.InternalFHIRServerURL, "/"))
if m.refreshToken == "" {
return fmt.Errorf("tidak ada refresh token untuk digunakan, akan mencoba login ulang")
}
reqBody := auth.RefreshTokenRequest{
RefreshToken: m.refreshToken,
Provider: "jwt",
}
payloadBytes, _ := json.Marshal(reqBody)
req, err := http.NewRequestWithContext(ctx, "POST", refreshURL, bytes.NewBuffer(payloadBytes))
if err != nil {
return fmt.Errorf("gagal membuat refresh request: %w", err)
}
req.Header.Set("Content-Type", "application/json")
logger.Default().Info("[WORKER AUTH] Melakukan refresh token...", logger.String("url", refreshURL))
client := &http.Client{Timeout: 15 * time.Second}
resp, err := client.Do(req)
if err != nil {
return fmt.Errorf("gagal melakukan refresh request: %w", err)
}
defer resp.Body.Close()
bodyBytes, readErr := io.ReadAll(resp.Body)
if readErr != nil {
return fmt.Errorf("gagal membaca response body refresh: %w", readErr)
}
if resp.StatusCode != http.StatusOK {
return fmt.Errorf("refresh token gagal dengan status: %d, response: %s", resp.StatusCode, string(bodyBytes))
}
var apiResp apiLoginResponse
if err := json.Unmarshal(bodyBytes, &apiResp); err != nil {
return fmt.Errorf("gagal decode response refresh: %w, body: %s", err, string(bodyBytes))
}
refreshResp := apiResp.Data
if refreshResp.AccessToken == "" {
logger.Default().Error("[WORKER AUTH] Access token kosong diterima saat refresh", logger.Any("response", refreshResp))
return fmt.Errorf("access token kosong diterima dari server saat refresh")
}
m.accessToken = refreshResp.AccessToken
// Update refresh token if a new one is provided
if refreshResp.RefreshToken != "" {
m.refreshToken = refreshResp.RefreshToken
}
logger.Default().Info("[WORKER AUTH] Berhasil me-refresh token.")
return nil
}
// GetAccessToken safely retrieves the current access token.
func (m *Manager) GetAccessToken() string {
m.tokenMutex.RLock()
defer m.tokenMutex.RUnlock()
return m.accessToken
}
// ForceRefreshAndGetToken tries to refresh the token, falls back to login, and returns the new token.
func (m *Manager) ForceRefreshAndGetToken(ctx context.Context) (string, error) {
m.tokenMutex.Lock()
defer m.tokenMutex.Unlock()
if err := m.refresh(ctx); err != nil {
logger.Default().Warn("[WORKER AUTH] Refresh token gagal, mencoba login ulang...", logger.ErrorField(err))
if loginErr := m.login(ctx); loginErr != nil {
return "", fmt.Errorf("fallback login juga gagal: %w", loginErr)
}
}
return m.accessToken, nil
}
+22 -19
View File
@@ -2,27 +2,30 @@ package imagingstudy
import (
"database/sql"
"time"
)
// ImagingStudyData merepresentasikan gabungan data dari Postgres (Satu Data) dan MySQL (RIS)
type ImagingStudyData struct {
RequestID string `db:"id"`
ServiceRequestID sql.NullString `db:"Entity_Id"`
EncounterID sql.NullString `db:"Encounter_Id"`
NoRegister sql.NullString `db:"No_register"`
PatientID sql.NullString `db:"Nomor_satusehat_pasien"`
PatientName sql.NullString `db:"Nama_lengkap"`
// Data dari MySQL (RIS)
Modality sql.NullString
StartedDate sql.NullTime
// ImagingStudyDB merepresentasikan struktur tabel dari SIMRS
type ImagingStudyDB struct {
ID int64 `db:"id"`
SourceID string // Holds the UUID from the source table (data_service_requests)
CreatedAt time.Time // Holds the Created_at from the source table for tracking
NoMR sql.NullString `db:"nomr"`
PatientIHS sql.NullString `db:"patient_ihs"`
PractitionerIHS sql.NullString `db:"practitioner_ihs"`
EncounterIHS sql.NullString `db:"encounter_ihs"`
AccessionNumber sql.NullString `db:"accession_number"`
ServiceRequestID sql.NullString `db:"service_request_id"`
Modality sql.NullString `db:"modality"`
StartedDate sql.NullTime `db:"started_date"`
}
type ImagingStudySyncLog struct {
RequestID string `db:"id"`
ImagingStudyID string `db:"imagingstudy_id"`
RequestPayload string `db:"request_payload"`
ResponsePayload string `db:"response_payload"`
Status string `db:"status"`
ErrorMessage string `db:"error_message"`
// SyncLog menyimpan log sinkronisasi untuk diaudit di database
type SyncLog struct {
ImagingStudyID string
SatuSehatID string
RequestPayload string
ResponsePayload string
Status string
ErrorMessage string
}
@@ -0,0 +1 @@
2026-04-24T12:46:09Z
@@ -6,28 +6,35 @@ import (
)
// MapToInternalAPI memetakan data gabungan ke payload API Internal SatuSehat
func MapToInternalAPI(dbData *ImagingStudyData, orgID string) map[string]interface{} {
func MapToInternalAPI(dbData *ImagingStudyDB, orgID string) map[string]interface{} {
waktu := time.Now()
if dbData.StartedDate.Valid {
waktu = dbData.StartedDate.Time
}
procedureCode := dbData.Modality.String
if procedureCode == "" {
procedureCode = "DX" // Default ke "DX" jika modality kosong
}
payload := map[string]interface{}{
"request_id": dbData.RequestID,
"servicerequest_id": dbData.ServiceRequestID.String,
"encounter_id": dbData.EncounterID.String,
"patient_id": dbData.PatientID.String,
"accession_number": dbData.NoRegister.String, // Digunakan sebagai Identifier SATUSEHAT
"modality": dbData.Modality.String,
"started_date": waktu.Format(time.RFC3339),
"organization_id": orgID,
"accession_number": dbData.AccessionNumber.String,
"service_request_id": dbData.ServiceRequestID.String,
"patient_id": dbData.PatientIHS.String,
"encounter_id": dbData.EncounterIHS.String,
"status": "available",
"started": waktu.Format(time.RFC3339),
"procedure_code": procedureCode,
}
return payload
}
func MapToSyncLog(reqID string, fhirID string, reqPayload interface{}, respBody []byte, status string, errMsg string) ImagingStudySyncLog {
reqBytes, _ := json.MarshalIndent(reqPayload, "", " ")
return ImagingStudySyncLog{
RequestID: reqID,
ImagingStudyID: fhirID,
func MapToSyncLog(id string, fhirID string, reqPayload interface{}, respBody []byte, status string, errMsg string) SyncLog {
reqBytes, _ := json.Marshal(reqPayload)
return SyncLog{
ImagingStudyID: id,
SatuSehatID: fhirID,
RequestPayload: string(reqBytes),
ResponsePayload: string(respBody),
Status: status,
@@ -3,13 +3,16 @@ package imagingstudy
import (
"context"
"database/sql"
"service/internal/infrastructure/database"
"service/pkg/logger"
"service/pkg/utils/query"
"time"
)
type Repository interface {
GetNextPendingRequest(ctx context.Context) (*ImagingStudyData, error)
UpdateSyncStatus(ctx context.Context, reqID string, status string, responsePayload string) error
GetNextImagingStudy(ctx context.Context, lastCreatedAt time.Time) (*ImagingStudyDB, error)
SaveSatuSehatID(ctx context.Context, sourceID string, fhirID string) error
SaveSyncLog(ctx context.Context, logData SyncLog) error
}
type repository struct {
@@ -20,68 +23,173 @@ func NewRepository(dbManager database.Service) Repository {
return &repository{dbManager: dbManager}
}
// GetNextPendingRequest mengambil 1 data service request radiologi yang belum terkirim
func (r *repository) GetNextPendingRequest(ctx context.Context) (*ImagingStudyData, error) {
var data ImagingStudyData
// GetNextImagingStudy mengambil data imaging study berikutnya untuk diproses.
// Tracker `lastID` adalah primary key integer (`id`) dari tabel `data_service_requests`.
// Data akan diambil mulai dari tanggal 2026-04-15 dan melompati `lastCreatedAt` yang sudah diproses.
func (r *repository) GetNextImagingStudy(ctx context.Context, lastCreatedAt time.Time) (*ImagingStudyDB, error) {
var data ImagingStudyDB
// 1. Ambil koneksi Postgres (Satu Data) - Sesuaikan nama dengan konfigurasi Anda
pgDB, err := r.dbManager.GetDB("satudata")
// 1. Inisialisasi Koneksi ke Database yang diperlukan
satudataDB, err := r.dbManager.GetSQLXDB("satudata")
if err != nil {
return nil, err
}
risDB, err := r.dbManager.GetSQLXDB("ris")
if err != nil {
return nil, err
}
// Ambil dari Postgres
queryPG := `
SELECT
sr.id, sr."Entity_Id", sr."Encounter_Id", sr."No_register",
kp."Nomor_satusehat_pasien", kp."Nama_lengkap"
FROM public.data_service_requests sr
JOIN public.data_kunjungan_pasien kp ON sr."Encounter_Id" = kp."IDXDAFTAR_satusehat"
WHERE LOWER(sr."Order_from") = 'radiologi'
AND (sr."Send_status" IS NULL OR sr."Send_status" = 'FAILED')
ORDER BY sr."Created_at" ASC
LIMIT 1
`
err = pgDB.QueryRowContext(ctx, queryPG).Scan(
&data.RequestID, &data.ServiceRequestID, &data.EncounterID, &data.NoRegister,
&data.PatientID, &data.PatientName,
)
if err != nil { // Bisa berupa sql.ErrNoRows jika data habis
return nil, err
// --- Langkah 1: Ambil data pemicu dari `satudata` ---
qbSatuData := query.NewSQLQueryBuilder(query.DBTypePostgreSQL).SetSecurityOptions(false, 0)
// Struct penampung sementara untuk mendapat foreign key ke db lain
type BaseSatuData struct {
ID string `db:"id"` // Perbaikan: Ubah ke string untuk menampung UUID
ServiceRequestID sql.NullString `db:"service_request_id"`
EncounterIHS sql.NullString `db:"encounter_ihs"`
PatientIHS sql.NullString `db:"patient_ihs"`
NoRegister sql.NullString `db:"No_register"`
TanggalOrder sql.NullTime `db:"Tanggal_order"`
NoMR sql.NullString `db:"nomr"`
CreatedAt time.Time `db:"Created_at"`
PractitionerIHS sql.NullString `db:"practitioner_ihs"`
StartedDate sql.NullTime `db:"started_date"`
}
var baseData BaseSatuData
// Hardcode tanggal mulai
startDate, _ := time.Parse("2006-01-02", "2026-01-01")
qSatuData := query.DynamicQuery{
From: "public.data_service_requests",
Aliases: "dsr",
Fields: []query.SelectField{
{Expression: `dsr.id`},
{Expression: `dsr."Entity_Id"`, Alias: "service_request_id"},
{Expression: `dsr."Encounter_Id"`, Alias: "encounter_ihs"},
{Expression: `dsr."No_register"`},
{Expression: `dsr."Tanggal_order"`},
{Expression: `dsr."Occurrence_date_time"`, Alias: "started_date"},
{Expression: `dsr."Requester_reference"`, Alias: "practitioner_ihs"},
{Expression: `dsr."Created_at"`},
{Expression: `dkp."Nomor_satusehat_pasien"`, Alias: "patient_ihs"},
{Expression: `dkp."NOMR"`, Alias: "nomr"},
},
Joins: []query.Join{
{
Type: "LEFT",
Table: "public.data_kunjungan_pasien",
Alias: "dkp",
OnConditions: query.CreateAndFilterGroup([]query.DynamicFilter{
query.CreateFilter(`dkp."IDXDAFTAR_satusehat"`, query.OpEqual, `dsr."Encounter_Id"`),
}),
},
},
Filters: []query.FilterGroup{
{Filters: []query.DynamicFilter{
query.CreateFilter(`dsr."Created_at"`, query.OpGreaterThan, lastCreatedAt),
query.CreateFilter(`dsr."Tanggal_order"`, query.OpGreaterThanEqual, startDate),
query.CreateFilter(`dsr."Entity_Id"`, query.OpNotNull, nil),
}},
},
Sort: []query.SortField{query.CreateAscSort(`dsr."Created_at"`)},
Limit: 1,
}
// 2. Ambil koneksi MySQL (RIS) - Sesuaikan nama dengan konfigurasi Anda
mySQLDB, err := r.dbManager.GetDB("simrs")
if err == nil && data.NoRegister.Valid {
queryMySQL := `SELECT modality, foto FROM periksa WHERE noregister = ? LIMIT 1`
err = qbSatuData.ExecuteQueryRow(ctx, satudataDB, qSatuData, &baseData)
if err != nil {
return nil, err // Akan melempar sql.ErrNoRows jika tidak ada data baru
}
var modality sql.NullString
var foto sql.NullTime
// Map data dari `satudata` ke struct utama
// SourceID (UUID) digunakan untuk tracking, sedangkan ID (int64) adalah dari tabel log,
// yang akan diisi saat menyimpan log.
data.SourceID = baseData.ID
data.CreatedAt = baseData.CreatedAt
data.ID = 0 // ID dari tabel log akan diisi nanti, bukan dari query ini.
data.ServiceRequestID = baseData.ServiceRequestID
data.EncounterIHS = baseData.EncounterIHS
data.PatientIHS = baseData.PatientIHS
data.NoMR = baseData.NoMR
data.PractitionerIHS = baseData.PractitionerIHS
data.StartedDate = baseData.StartedDate
// Gunakan placeholder '?' jika MySQL, atau '$1' jika PostgreSQL
err = mySQLDB.QueryRowContext(ctx, queryMySQL, data.NoRegister.String).Scan(&modality, &foto)
if err == nil {
data.Modality = modality
data.StartedDate = foto
// --- Langkah 2: Ambil Accession Number dan Modality dari `ris` (MySQL) ---
if baseData.NoRegister.Valid {
qbRis := query.NewSQLQueryBuilder(query.DBTypeMySQL).SetSecurityOptions(false, 0)
// PERBAIKAN: Secara eksplisit mengizinkan kolom yang akan digunakan dalam filter query RIS.
// Ini untuk mengatasi masalah validasi pada query builder yang menganggap kolom 'noregister' tidak valid.
qbRis.SetAllowedColumns([]string{
"noregister", "DATE(daftar)",
})
risFilters := []query.DynamicFilter{
query.CreateFilter("noregister", query.OpEqual, baseData.NoRegister.String),
}
// Filter berdasarkan tanggal order jika ada, untuk mempersempit pencarian
if baseData.TanggalOrder.Valid {
risFilters = append(risFilters, query.CreateFilter("DATE(daftar)", query.OpEqual, baseData.TanggalOrder.Time.Format("2006-01-02")))
}
qRis := query.DynamicQuery{
From: "periksa",
Fields: []query.SelectField{
{Expression: "nofoto", Alias: "accession_number"},
{Expression: "modality", Alias: "modality"},
},
Filters: []query.FilterGroup{
{Filters: risFilters},
},
Limit: 1,
}
// Mengeluarkan Log hasil SQL query yang di-generate
sqlStr, args, errBuild := qbRis.BuildQuery(qRis)
if errBuild == nil {
logger.Default().Debug("[IMAGING STUDY REPO] RIS Query Generated", logger.String("query", sqlStr), logger.Any("args", args))
} else {
logger.Default().Error("[IMAGING STUDY REPO] Failed to build RIS Query", logger.ErrorField(errBuild))
}
// PERBAIKAN: Jangan abaikan semua error. Log error jika bukan 'sql.ErrNoRows'.
// Ini penting untuk mendeteksi masalah koneksi atau query ke database RIS.
if errRis := qbRis.ExecuteQueryRow(ctx, risDB, qRis, &data); errRis != nil && errRis != sql.ErrNoRows {
logger.Default().Warn("[IMAGING STUDY REPO] Gagal mengambil data dari RIS, melanjutkan tanpa data RIS.",
logger.String("query", sqlStr), logger.Any("args", args), logger.ErrorField(errRis))
}
}
return &data, nil
}
// UpdateSyncStatus memperbarui status pengiriman di PostgreSQL
func (r *repository) UpdateSyncStatus(ctx context.Context, reqID string, status string, responsePayload string) error {
pgDB, err := r.dbManager.GetDB("satudata")
func (r *repository) SaveSatuSehatID(ctx context.Context, sourceID string, fhirID string) error {
// Perhatian: Karena ID dari data_service_requests adalah UUID,
// kita tidak bisa lagi menggunakan `id` (int64) dari tabel log untuk melakukan UPDATE.
// Fungsi ini perlu penyesuaian lebih lanjut jika Anda perlu menyimpan fhir_id kembali ke tabel `data_service_requests`.
// Untuk sementara, fungsi ini tidak akan melakukan apa-apa untuk menghindari error.
// return nil
// satudataDB, err := r.dbManager.GetSQLXDB("satudata")
// if err != nil {
// return err
// }
// qb := query.NewSQLQueryBuilder(query.DBTypePostgreSQL).SetSecurityOptions(false, 0)
// _, err = qb.ExecuteUpdate(ctx, satudataDB, "public.data_service_requests", query.UpdateData{Columns: []string{"fhir_id"}, Values: []interface{}{fhirID}}, []query.FilterGroup{query.CreateAndFilterGroup([]query.DynamicFilter{query.CreateEqualFilter("id", sourceID)})})
// return err
return nil
}
func (r *repository) SaveSyncLog(ctx context.Context, logData SyncLog) error {
satudataDB, err := r.dbManager.GetSQLXDB("satudata")
if err != nil {
return err
}
query := `
UPDATE public.data_service_requests
SET "Send_status" = $1, "Send_response" = $2, "Updated_at" = NOW()
WHERE id = $3
`
_, err = pgDB.ExecContext(ctx, query, status, responsePayload, reqID)
qb := query.NewSQLQueryBuilder(query.DBTypePostgreSQL).SetSecurityOptions(false, 0)
insertData := query.InsertData{
Columns: []string{"imaging_id", "fhir_id", "request_payload", "response_payload", "status", "error_message"},
Values: []interface{}{logData.ImagingStudyID, logData.SatuSehatID, logData.RequestPayload, logData.ResponsePayload, logData.Status, logData.ErrorMessage},
}
_, err = qb.ExecuteUpsert(ctx, satudataDB, "public.log_satusehat_imagingstudy", insertData, []string{"imaging_id"}, []string{"fhir_id", "request_payload", "response_payload", "status", "error_message"})
return err
}
+260 -40
View File
@@ -5,94 +5,314 @@ import (
"database/sql"
"encoding/json"
"fmt"
"log"
"net/http"
"os"
"strings"
"time"
"service/internal/infrastructure/database"
extapi "service/internal/worker/interface"
"service/pkg/logger"
)
const trackerFile = "internal/worker/satusehat/imagingstudy/last_imagingstudy_id.txt"
type Config struct {
DBManager database.Service
InternalBaseURL string
InternalToken string
OrganizationID string
}
// TokenManager defines the interface for a centralized token provider.
type TokenManager interface {
GetAccessToken() string
ForceRefreshAndGetToken(ctx context.Context) (string, error)
}
type WorkerService interface {
Run(ctx context.Context)
}
type worker struct {
cfg Config
repo Repository
apiClient extapi.Client
cfg Config
repo Repository
apiClient extapi.Client
tokenManager TokenManager
}
func NewWorker(cfg Config) WorkerService {
return &worker{cfg: cfg, repo: NewRepository(cfg.DBManager), apiClient: extapi.NewClient(15 * time.Second)}
func NewWorker(cfg Config, tokenManager TokenManager) WorkerService {
return &worker{
cfg: cfg,
repo: NewRepository(cfg.DBManager),
apiClient: extapi.NewClient(60 * time.Second),
tokenManager: tokenManager,
}
}
func (w *worker) Run(ctx context.Context) {
log.Println("[IMAGINGSTUDY WORKER] Memulai proses sinkronisasi...")
logger.Default().Info("[IMAGING STUDY WORKER] Memulai proses sinkronisasi API...")
lastCreatedAt := w.readLastCreatedAt()
logger.Default().Info("[IMAGING STUDY WORKER] Melanjutkan proses dari", logger.Time("last_created_at", lastCreatedAt))
for {
select {
case <-ctx.Done():
log.Println("[IMAGINGSTUDY WORKER] Proses dihentikan.")
logger.Default().Warn("[IMAGING STUDY WORKER] Proses dihentikan oleh sistem (Graceful Shutdown)")
return
default:
}
// 1. Ambil data dengan status belum terkirim (IS NULL atau FAILED)
isData, err := w.repo.GetNextPendingRequest(ctx)
// 1. Fetch Data
imagingData, err := w.repo.GetNextImagingStudy(ctx, lastCreatedAt)
if err != nil {
if err == sql.ErrNoRows {
// Jika tidak ada data antrean, istirahat lebih lama
time.Sleep(10 * time.Second)
time.Sleep(5 * time.Second) // Tunggu data baru
continue
}
log.Printf("[IMAGINGSTUDY WORKER] Error query db: %v", err)
logger.Default().Error("[IMAGING STUDY WORKER] Gagal query ke database", logger.ErrorField(err))
time.Sleep(5 * time.Second)
continue
}
// 2. Petakan ke payload SATUSEHAT via Internal API
internalPayload := MapToInternalAPI(isData, w.cfg.OrganizationID)
reqURL := fmt.Sprintf("%s/satusehat/imagingstudy", strings.TrimRight(w.cfg.InternalBaseURL, "/"))
// Fallback pencarian Encounter ID lewat API jika data di tabel kosong
if (!imagingData.EncounterIHS.Valid || imagingData.EncounterIHS.String == "") && imagingData.ServiceRequestID.Valid && imagingData.ServiceRequestID.String != "" {
logger.Default().Info("[IMAGING STUDY WORKER] Encounter ID kosong, mencoba fetch dari API ServiceRequest", logger.String("servicerequest_id", imagingData.ServiceRequestID.String))
// 3. Eksekusi pengiriman API
respBody, statusCode, err := w.apiClient.PostJSON(ctx, reqURL, w.cfg.InternalToken, internalPayload)
reqURL := fmt.Sprintf("%s/satusehat/servicerequest/%s", strings.TrimRight(w.cfg.InternalBaseURL, "/"), imagingData.ServiceRequestID.String)
srRespBody, srStatusCode, srErr := w.apiClient.GetJSON(ctx, reqURL, w.tokenManager.GetAccessToken())
var status, errMsg, fhirID string
if err != nil || (statusCode != http.StatusOK && statusCode != http.StatusCreated) {
status, errMsg = "FAILED", fmt.Sprintf("Err: %v, HTTP: %d", err, statusCode)
} else {
status = "SUCCESS"
var res map[string]interface{}
if json.Unmarshal(respBody, &res) == nil {
if data, ok := res["data"].(map[string]interface{}); ok {
fhirID, _ = data["id"].(string)
} else {
fhirID, _ = res["id"].(string)
if srStatusCode == http.StatusUnauthorized {
logger.Default().Warn("[IMAGING STUDY WORKER] 401 Unauthorized saat GET ServiceRequest, refresh token...")
if newToken, errRef := w.tokenManager.ForceRefreshAndGetToken(ctx); errRef == nil {
srRespBody, srStatusCode, srErr = w.apiClient.GetJSON(ctx, reqURL, newToken)
}
}
if srErr == nil && (srStatusCode == http.StatusOK || srStatusCode == http.StatusCreated) {
var parsedResp map[string]interface{}
if errParse := json.Unmarshal(srRespBody, &parsedResp); errParse == nil {
var encounterRef string
if data, ok := parsedResp["data"].(map[string]interface{}); ok {
if enc, ok := data["encounter"].(map[string]interface{}); ok {
encounterRef, _ = enc["reference"].(string)
}
} else if enc, ok := parsedResp["encounter"].(map[string]interface{}); ok {
encounterRef, _ = enc["reference"].(string)
}
if encounterRef != "" {
if parts := strings.Split(encounterRef, "/"); len(parts) > 1 {
imagingData.EncounterIHS.String = parts[len(parts)-1]
imagingData.EncounterIHS.Valid = true
logger.Default().Info("[IMAGING STUDY WORKER] Berhasil mendapatkan Encounter ID dari API", logger.String("encounter_id", imagingData.EncounterIHS.String))
}
}
}
}
}
// Buat response data berupa string JSON untuk log & penyimpanan error
logData := MapToSyncLog(isData.RequestID, fhirID, internalPayload, respBody, status, errMsg)
logBytes, _ := json.Marshal(logData)
// Gunakan SourceID (UUID) untuk logging dan tracking
logger.Default().Info("[IMAGING STUDY WORKER] 🔄 Memproses Dokumen",
logger.String("source_id", imagingData.SourceID),
logger.String("no_mr", imagingData.NoMR.String),
)
// 4. Update status ke tabel data_service_requests
errUpdate := w.repo.UpdateSyncStatus(ctx, isData.RequestID, status, string(logBytes))
if errUpdate != nil {
log.Printf("[IMAGINGSTUDY WORKER] Gagal update status di database untuk ID %s: %v", isData.RequestID, errUpdate)
} else {
log.Printf("[IMAGINGSTUDY WORKER] Sukses proses ID %s dengan status %s", isData.RequestID, status)
// Skip jika accession_number kosong / null
if !imagingData.AccessionNumber.Valid || imagingData.AccessionNumber.String == "" {
logger.Default().Warn("[IMAGING STUDY WORKER] ⏭️ Skip Dokumen: Accession Number kosong (Data RIS tidak ditemukan)",
logger.String("source_id", imagingData.SourceID),
logger.String("no_mr", imagingData.NoMR.String),
)
w.updateTracker(&lastCreatedAt, imagingData.CreatedAt)
continue
}
time.Sleep(500 * time.Millisecond)
// 2. Mapping Payload
internalPayload := MapToInternalAPI(imagingData, w.cfg.OrganizationID)
reqURL := fmt.Sprintf("%s/satusehat/imagingstudy", strings.TrimRight(w.cfg.InternalBaseURL, "/"))
logger.Default().Debug("[IMAGING STUDY WORKER] 📡 Mengirim Request ke API Part 3",
logger.String("url", reqURL),
logger.Any("payload", internalPayload),
)
// 3. Eksekusi Kirim HTTP via Client Helper Anda
fhirID, respBody, status, errMsg, shouldRetry := w.sendToInternalAPI(ctx, internalPayload, imagingData.SourceID)
/*
if err != nil {
// Kegagalan Jaringan/Timeout
status = "FAILED"
errMsg = err.Error()
logger.Default().Error("[IMAGING STUDY WORKER] ❌ Gagal Koneksi ke API Part 3",
logger.String("source_id", imagingData.SourceID),
logger.String("no_mr", imagingData.NoMR.String),
logger.Any("payload_sent", internalPayload),
logger.ErrorField(err),
)
shouldRetry = true // Wajib retry jika jaringan terputus/timeout
} else if statusCode != http.StatusOK && statusCode != http.StatusCreated {
// Kegagalan Response API
status = "FAILED"
errMsg = fmt.Sprintf("HTTP %d", statusCode)
logger.Default().Error("[IMAGING STUDY WORKER] ❌ Respons Error dari API Part 3",
logger.String("source_id", imagingData.SourceID),
logger.Int("status_code", statusCode),
logger.String("response", truncate(string(respBody), 200)),
)
// Retry jika Internal Server Error (5xx) atau Rate Limit (429)
if statusCode >= 500 || statusCode == http.StatusTooManyRequests {
shouldRetry = true
}
} else {
// Sukses
status = "SUCCESS"
var result map[string]interface{}
if errUnmarshal := json.Unmarshal(respBody, &result); errUnmarshal == nil {
if data, ok := result["data"].(map[string]interface{}); ok {
if id, ok := data["id"].(string); ok {
fhirID = id
}
} else if id, ok := result["id"].(string); ok {
fhirID = id
}
}
logger.Default().Info("[IMAGING STUDY WORKER] ✅ Sukses mengirim data Imaging Study",
logger.String("source_id", imagingData.SourceID),
logger.String("fhir_id", fhirID),
)
}*/
// 4. Catat Log ke Database
syncLog := MapToSyncLog(imagingData.SourceID, fhirID, internalPayload, respBody, status, errMsg)
if errLog := w.repo.SaveSyncLog(ctx, syncLog); errLog != nil {
logger.Default().Error("[IMAGING STUDY WORKER] Gagal menyimpan histori log ke DB", logger.ErrorField(errLog))
}
// 5. Update FHIR ID di tabel utama bila sukses
if status == "SUCCESS" && fhirID != "" {
if errUpdate := w.repo.SaveSatuSehatID(ctx, imagingData.SourceID, fhirID); errUpdate != nil {
logger.Default().Error("[IMAGING STUDY WORKER] Gagal update FHIR ID ke transaksi utama", logger.ErrorField(errUpdate))
}
}
// Update Tracker TXT agar tidak dikirim ulang terus-menerus KECUALI jika butuh retry
if !shouldRetry {
w.updateTracker(&lastCreatedAt, imagingData.CreatedAt)
} else {
// Memberitahu log bahwa data yang sama akan dicoba lagi pada loop berikutnya
logger.Default().Warn("[IMAGING STUDY WORKER] ⚠️ Retrying data", logger.String("source_id", imagingData.SourceID), logger.Time("created_at", imagingData.CreatedAt), logger.String("reason", errMsg))
}
// Jeda
if shouldRetry {
time.Sleep(5 * time.Second) // Tunggu sebentar jika server tujuan sedang sibuk
} else {
time.Sleep(2 * time.Second) // Jeda antar pengiriman diperpanjang untuk mencegah Rate Limit
}
}
}
// sendToInternalAPI sends the payload to the internal FHIR server, handles authentication and retries.
func (w *worker) sendToInternalAPI(ctx context.Context, payload map[string]interface{}, sourceID string) (fhirID string, respBody []byte, status string, errMsg string, shouldRetry bool) {
reqURL := fmt.Sprintf("%s/satusehat/imagingstudy", strings.TrimRight(w.cfg.InternalBaseURL, "/"))
// --- First Attempt ---
respBody, statusCode, err := w.apiClient.PostJSON(ctx, reqURL, w.tokenManager.GetAccessToken(), payload)
if err != nil {
// Network errors are always retried
logger.Default().Error("[IMAGING STUDY WORKER] ❌ Gagal Koneksi ke API Part 3",
logger.String("source_id", sourceID),
logger.Any("payload_sent", payload),
logger.ErrorField(err),
)
return "", nil, "FAILED", err.Error(), true
}
// --- Handle Unauthorized (401) ---
if statusCode == http.StatusUnauthorized {
logger.Default().Warn("[IMAGING STUDY WORKER] Menerima status 401 Unauthorized, mencoba refresh token...", logger.String("source_id", sourceID))
newToken, refreshErr := w.tokenManager.ForceRefreshAndGetToken(ctx)
if refreshErr != nil {
logger.Default().Error("[IMAGING STUDY WORKER] Gagal refresh token, akan mencoba lagi pada iterasi berikutnya.", logger.String("source_id", sourceID), logger.ErrorField(refreshErr))
return "", respBody, "FAILED", refreshErr.Error(), true
}
logger.Default().Info("[IMAGING STUDY WORKER] Token berhasil di-refresh, mencoba ulang request...", logger.String("source_id", sourceID))
// --- Second Attempt ---
respBody, statusCode, err = w.apiClient.PostJSON(ctx, reqURL, newToken, payload)
if err != nil {
logger.Default().Error("[IMAGING STUDY WORKER] ❌ Gagal Koneksi ke API Part 3 (setelah retry)",
logger.String("source_id", sourceID),
logger.ErrorField(err),
)
return "", nil, "FAILED", err.Error(), true
}
}
// --- Process Final Response ---
if statusCode != http.StatusOK && statusCode != http.StatusCreated {
errMsg = fmt.Sprintf("HTTP %d", statusCode)
logger.Default().Error("[IMAGING STUDY WORKER] ❌ Respons Error dari API Part 3",
logger.String("source_id", sourceID),
logger.Int("status_code", statusCode),
logger.String("response", truncate(string(respBody), 200)),
)
// Retry on server-side errors
if statusCode >= 500 || statusCode == http.StatusTooManyRequests {
return "", respBody, "FAILED", errMsg, true
}
// Do not retry on client-side errors (4xx)
return "", respBody, "FAILED", errMsg, false
}
// --- Success ---
var result map[string]interface{}
if errUnmarshal := json.Unmarshal(respBody, &result); errUnmarshal == nil {
if data, ok := result["data"].(map[string]interface{}); ok {
if id, ok := data["id"].(string); ok {
fhirID = id
}
} else if id, ok := result["id"].(string); ok {
fhirID = id
}
}
logger.Default().Info("[IMAGING STUDY WORKER] ✅ Sukses mengirim data Imaging Study",
logger.String("source_id", sourceID),
logger.String("fhir_id", fhirID),
)
return fhirID, respBody, "SUCCESS", "", false
}
func (w *worker) updateTracker(lastCreatedAt *time.Time, currentCreatedAt time.Time) {
*lastCreatedAt = currentCreatedAt
os.WriteFile(trackerFile, []byte(currentCreatedAt.Format(time.RFC3339Nano)), 0644)
}
func (w *worker) readLastCreatedAt() time.Time {
data, err := os.ReadFile(trackerFile)
if err != nil {
// Jika file tidak ada, mulai dari awal (zero time)
return time.Time{}
}
timestampStr := strings.TrimSpace(string(data))
t, err := time.Parse(time.RFC3339Nano, timestampStr)
if err != nil {
logger.Default().Warn("[IMAGING STUDY WORKER] Gagal parsing timestamp dari tracker file, memulai dari awal.", logger.String("content", timestampStr), logger.ErrorField(err))
return time.Time{}
}
return t
}
func truncate(s string, max int) string {
if len(s) > max {
return s[:max] + "..."
}
return s
}
+5 -12
View File
@@ -4,22 +4,15 @@ import (
"database/sql"
)
// MedicationDB merepresentasikan tabel master/transaksi obat (KFA)
// TODO: Sesuaikan field dan tag `db` dengan tabel SIMRS Anda
// MedicationDB merepresentasikan tabel transaksi obat dari t_permintaan_apotek_rajal
type MedicationDB struct {
IdxObat int64 `db:"idxobat"`
KodeKFA sql.NullString `db:"kode_kfa"`
NamaKFA sql.NullString `db:"nama_kfa"`
KodeBentuk sql.NullString `db:"kode_bentuk"`
NamaBentuk sql.NullString `db:"nama_bentuk"`
ManufacturerID sql.NullString `db:"manufacturer_id"`
NoBatch sql.NullString `db:"no_batch"`
TglKadaluarsa sql.NullTime `db:"tgl_kadaluarsa"`
IdxPesanObat int64 `db:"idxpesanobat"`
KfaCode sql.NullString `db:"kode_kfa"`
}
type MedicationSyncLog struct {
IdxObat int64 `db:"idxobat"`
MedicationID string `db:"medication_id"`
IdxPesanObat int64 `db:"idxpesanobat"`
SatuSehatID string `db:"satusehat_id"`
RequestPayload string `db:"request_payload"`
ResponsePayload string `db:"response_payload"`
Status string `db:"status"`
@@ -0,0 +1 @@
3384484
+27 -16
View File
@@ -2,31 +2,42 @@ package medication
import (
"encoding/json"
"time"
"strconv"
)
// TODO: Sesuaikan dengan payload internal API Medication
func MapToInternalAPI(dbData *MedicationDB, orgID string) map[string]interface{} {
payload := map[string]interface{}{
"status_code": "active",
"kfa_code": dbData.KodeKFA.String,
"kfa_display": dbData.NamaKFA.String,
"form_code": dbData.KodeBentuk.String,
"form_display": dbData.NamaBentuk.String,
"manufacturer_id": orgID, // Bisa disesuaikan menjadi dbData.ManufacturerID.String jika beda pabrik
"batch_number": dbData.NoBatch.String,
// MapToInternalAPI memetakan data DB ke payload API Internal Medication
func MapToInternalAPI(dbData *MedicationDB, orgID string, kfaDisplay, formCode, formDisplay string) map[string]interface{} {
payload := make(map[string]interface{})
payload["status_code"] = "active"
if dbData.IdxPesanObat != 0 {
payload["medication_id"] = strconv.FormatInt(dbData.IdxPesanObat, 10)
}
if dbData.TglKadaluarsa.Valid {
payload["expiration_date"] = dbData.TglKadaluarsa.Time.Format(time.RFC3339)
if dbData.KfaCode.Valid && dbData.KfaCode.String != "" {
payload["kfa_code"] = dbData.KfaCode.String
}
if orgID != "" {
payload["manufacturer_id"] = orgID
}
if kfaDisplay != "" {
payload["kfa_display"] = kfaDisplay
}
if formCode != "" {
payload["form_code"] = formCode
}
if formDisplay != "" {
payload["form_display"] = formDisplay
}
return payload
}
func MapToSyncLog(idx int64, fhirID string, reqPayload interface{}, respBody []byte, status string, errMsg string) MedicationSyncLog {
reqBytes, _ := json.MarshalIndent(reqPayload, "", " ")
reqBytes, _ := json.Marshal(reqPayload)
return MedicationSyncLog{
IdxObat: idx,
MedicationID: fhirID,
IdxPesanObat: idx,
SatuSehatID: fhirID,
RequestPayload: string(reqBytes),
ResponsePayload: string(respBody),
Status: status,
@@ -0,0 +1,121 @@
3384065|7d731949-ac7c-409c-b997-5ae48898087b
3384067|75922941-7c0d-40c9-b09e-07155d05f19e
3384068|3a1d2828-a67b-4b0b-8a7f-d501bff494eb
3384074|3269526f-6c8a-432e-a0c2-3cb0fb7d58f2
3384075|bf75589f-689a-4f6e-990d-b64bf7d19655
3384084|9b5e40a0-a908-4fe9-98fb-faeb23380f4d
3384088|6ab7a573-7327-4349-8e0a-e6adeece3e21
3384089|6ef8c7d0-b9b6-4473-b803-435e5d2da43b
3384090|740eeed2-7815-477d-8c1b-653d7b0a6dc8
3384093|e9916e04-ba83-44be-a59a-f9477cc9fba8
3384094|f8106ab5-048b-4b08-b647-b9263fcbeed1
3384095|4078f9b7-d895-4656-a215-30aeb291d0ec
3384096|2d9e19e5-1547-4e34-b05c-19bcea5dd099
3384097|a99b8793-1360-485c-8384-8c672f38ea14
3384099|e293a828-46a1-4829-b95e-b7d36bb17460
3384107|fb41a9e5-57ce-4259-ab22-c6d428d3cc5e
3384113|0640a712-16fc-4b68-832e-0b041c7fb0ee
3384138|67db8861-92dc-41b5-a2bc-14082cc04e76
3384146|581e3187-ac4a-413c-ae85-39560c300f4f
3384147|a3109162-df95-4581-9852-0cc0cda1372a
3384154|e46eda4e-ec0b-46f2-bc6b-3cca56e5c889
3384170|2634b8d9-7ab8-4556-87d9-118d82d281e7
3384175|3842777d-ceab-43ab-9a2e-08ff0397d7ca
3384177|18736b7f-fcb1-4e92-ae78-7073526ee605
3384180|b70c06f2-f06c-43f3-9ae9-ff1f5d7cec92
3384181|8c146256-a004-4d37-97ff-5d0efc07b28d
3384184|a0b4addb-cf57-4cf7-a8ce-7fa3c1733614
3384186|e5d36d3d-01f3-446b-b558-5c86712e1873
3384187|4a6549a1-e4c2-4165-8e5a-7a9cd068a522
3384190|49e2481c-d370-4367-b070-d2c652b1c325
3384191|7c1a7315-d8f4-4e55-8890-f0772e99115c
3384192|16ea6748-d1a2-4b46-acdf-3d0e84e4ab6f
3384193|ddf97d42-c953-45d9-b763-e7072665ac84
3384194|3da3d066-ca09-4fc6-8e83-5bde3c8a1d76
3384195|2bfef15f-2c1a-4c0a-a598-34f229139556
3384196|e9b94407-a524-4d0f-8efb-5e13080d4e2e
3384197|c6799b62-8777-488f-8931-dc1c820adebc
3384198|d1ab6618-d278-4c28-b9fd-129ad4345c07
3384200|a876cd27-65ca-4e78-82e3-7b47455119dc
3384208|f6b0c2b1-ac58-4639-83bd-633cc30ffa74
3384215|7d2ecbe4-5553-404b-a732-7d15b7cf9355
3384230|f8d15006-08aa-4fcd-9f25-8921cef87860
3384239|f8f506fb-0c8c-493e-8e2a-8401a064458f
3384253|993f2410-5a24-4bdc-aa77-0c740630d043
3384258|5153d58a-a487-4201-b198-b3db83d47568
3384260|28a28511-a1e1-4c75-aba1-97b67ab0bb39
3384261|f29fa145-5199-408b-9512-8184d5dbfa1e
3384263|2a621669-e2d0-444c-bd2c-4a77a65be14b
3384265|9d61147e-0edf-43ca-b93e-f9b6e546e173
3384277|84ce68b9-cbd9-4cdb-bc48-81c3068f2d9b
3384289|1d946f71-a050-444d-b97b-ffac87af3bec
3384291|629ae24f-f117-4adb-8122-5033739f9a77
3384298|e6b9a50c-1d23-4fdb-ada0-c79e605cc545
3384299|a14e9b01-5043-45a0-8d8a-bda67707d30c
3384300|add6ad7d-e32e-4840-a565-49c9bba605b9
3384304|50d251d8-7208-419d-a8bc-84ad979f17d8
3384305|e8001b64-b90f-41cc-95e2-5efda731c504
3384308|4d33f376-1437-4874-9573-924d1c02fefa
3384310|0a19db00-a042-4acb-8a8f-35485e1b2aad
3384311|38621f80-ae46-46ac-8f62-4bc7b66c2776
3384314|5d978686-2e70-4ed3-825a-e7ed18f400e8
3384315|7d5ef2c5-5079-43e5-b0ce-5284f51006fe
3384316|d789fe64-cf62-41ac-bbb6-227c23d90650
3384317|a1b6f81e-a194-4b23-bd84-9cf249d8a40d
3384321|f56e3cce-7bfc-479a-8bb0-c2a5e35ff956
3384325|919c9238-965c-40aa-81ae-7374d178475e
3384330|14b64e7b-fdd4-4e95-9152-54ba88fb1f02
3384331|a73228ae-6021-41ca-9edd-61fdd21647d4
3384333|f9d36faa-e97f-4cb9-a189-1c5c45598ea1
3384334|fa39f375-2a60-4782-bec4-1919c178795e
3384335|10691f24-78ea-45bf-9419-0300e2a24320
3384336|528649f6-0654-40f9-b310-806a35e0f3bf
3384340|e738cad7-8ff5-4d96-b01a-01117847bfd8
3384343|7b628d79-28fa-4ee1-ad1b-94760b6be2f0
3384349|2abd44ab-3465-4b77-aa8f-6bf0f3459fb4
3384354|a361bb0e-5764-4ad6-b0a1-6ea402a8170b
3384355|50c35eca-5cdb-4f26-97d8-0f1a16f812f4
3384358|f33107bf-e1d1-49f9-9d49-58e0ae4919af
3384361|413056a4-450e-4eb7-942e-752aeea608fd
3384363|a6dbe25e-0c99-41ab-85d4-468c10adff68
3384375|ec7b064e-5f3c-4d90-9776-0ec61d34833c
3384379|0495eb25-d3dd-4c31-b9bc-dbfa770a2152
3384380|b4abceee-6535-4839-b463-76df18f51a22
3384383|10989bab-0c22-4231-a676-8e41a0f60021
3384384|db35de2c-1777-4a30-b859-ffa88a01723a
3384387|7fc38f6a-6579-459b-bfa5-6eed9a24f274
3384388|b25684e7-e8d4-4470-b26a-ee1e54241af8
3384399|419a8949-3489-439c-ae2a-1f6ec6fa7d0f
3384400|ebb3d1e4-6d30-4822-908d-9e768c62ac80
3384405|80593d6a-749e-4602-b8a6-688d039e1f1f
3384408|abb1b18a-6915-4999-b016-68366d96be2d
3384416|e3921a30-dc8f-4085-a5be-ce24c077c768
3384417|7aeaec56-fd32-4d19-b561-5820c86eb803
3384419|93d437c5-8118-4e3b-ae68-5c289fb8c004
3384420|921bcc71-d632-4156-8a6f-7d79d887520a
3384422|056092a6-bec8-46b4-85db-2e5f9da4b628
3384423|d8026a01-5b2f-423c-9042-577cb3221d8c
3384425|01adcc5c-349c-4381-9125-06816fa19034
3384426|0eb873f5-054d-4861-9b57-ba4cd45c33a4
3384427|effbe803-2e15-4624-a423-595bdf670556
3384428|ac8a89d3-3c82-468a-8b99-5b4975d30b46
3384439|1a14cfa3-bfd6-49e3-9a87-3c496e07b18b
3384442|6dd478f9-9d3e-4478-af15-a9aed00cee8a
3384444|f75da4cd-1847-4f95-a1d2-e2b3a58f71e9
3384445|50800e76-b7b1-4d62-afe7-dada10212ace
3384454|2c0291d0-d609-419f-bb6a-1adafe71d685
3384456|88e3ea14-2027-482a-b928-8ecbb773bfff
3384459|41ab8bf3-bc2e-4d52-8933-b269669370fb
3384460|f82235cf-69ad-45a8-9318-5053cce14d00
3384461|632da84c-c45c-46b1-854c-4a34cd60ddd2
3384467|96beb57a-67b2-45a5-abc2-f5550edb0426
3384468|d43c2f05-33e9-442e-9b48-7d0f5f17454a
3384469|5487d5c6-4213-4674-90eb-d0410dfba7d2
3384470|50e2f103-d491-4644-8316-715711a3aa99
3384471|ca217f91-315a-454d-aa49-85454e30e66e
3384472|df86b609-92a2-4ecb-bb49-8780f5f3061c
3384473|4141ed35-9cb1-41c7-ace3-abd137c2fcd6
3384475|18ae8627-c025-4f4a-8522-2dcfa406e336
3384482|30a18fd7-4e57-41cf-ae5a-83bbda050b9d
3384483|0cfbf15e-0916-420c-8a14-db322a9f8355
3384484|1bf3dd22-9ba7-4786-b5f1-67d40f3b2fb2
@@ -8,7 +8,7 @@ import (
type Repository interface {
GetNextMedication(ctx context.Context, lastID int64) (*MedicationDB, error)
SaveSatuSehatID(ctx context.Context, idx int64, fhirID string) error
SaveSatuSehatID(ctx context.Context, idxPesanObat int64, fhirID string) error
SaveSyncLog(ctx context.Context, logData MedicationSyncLog) error
}
@@ -27,20 +27,29 @@ func (r *repository) GetNextMedication(ctx context.Context, lastID int64) (*Medi
return nil, err
}
qb := query.NewSQLQueryBuilder(query.DBTypePostgreSQL).SetSecurityOptions(false, 0)
qb := query.NewSQLQueryBuilder(query.DBTypePostgreSQL).
SetSecurityOptions(false, 0).
SetQueryLogging(false).
SetAllowedColumns([]string{"idxpesanobat", "kode_kfa", "tgl_pesan"})
// startDate, _ := time.Parse("2006-01-02", "2026-01-02")
// TODO: Sesuaikan nama tabel referensi/master obat Anda
qSimrs := query.DynamicQuery{
From: "public.m_obat",
From: "public.t_permintaan_apotek_rajal",
Fields: []query.SelectField{
{Expression: "idxpesanobat"},
{Expression: "kode_kfa"},
},
Filters: []query.FilterGroup{
{
Filters: []query.DynamicFilter{
query.CreateFilter("idxobat", query.OpGreaterThan, lastID),
query.CreateFilter("idxpesanobat", query.OpGreaterThanEqual, lastID+1),
// query.CreateFilter("tgl_pesan", query.OpGreaterThanEqual, startDate),
},
},
},
Sort: []query.SortField{
query.CreateAscSort("idxobat"),
query.CreateAscSort("idxpesanobat"),
},
Limit: 1,
}
@@ -52,13 +61,16 @@ func (r *repository) GetNextMedication(ctx context.Context, lastID int64) (*Medi
return &med, nil
}
func (r *repository) SaveSatuSehatID(ctx context.Context, idx int64, fhirID string) error {
func (r *repository) SaveSatuSehatID(ctx context.Context, idxPesanObat int64, fhirID string) error {
simrsDB, err := r.dbManager.GetSQLXDB("simrs")
if err != nil {
return err
}
qb := query.NewSQLQueryBuilder(query.DBTypePostgreSQL).SetSecurityOptions(false, 0)
_, err = qb.ExecuteUpdate(ctx, simrsDB, "public.m_obat", query.UpdateData{Columns: []string{"status_bridging"}, Values: []interface{}{fhirID}}, []query.FilterGroup{query.CreateAndFilterGroup([]query.DynamicFilter{query.CreateEqualFilter("idxobat", idx)})})
qb := query.NewSQLQueryBuilder(query.DBTypePostgreSQL).
SetSecurityOptions(false, 0).
SetQueryLogging(false).
SetAllowedColumns([]string{"id_satusehat", "idxpesanobat"})
_, err = qb.ExecuteUpdate(ctx, simrsDB, "public.t_permintaan_apotek_rajal", query.UpdateData{Columns: []string{"id_satusehat"}, Values: []interface{}{fhirID}}, []query.FilterGroup{query.CreateAndFilterGroup([]query.DynamicFilter{query.CreateEqualFilter("idxpesanobat", idxPesanObat)})})
return err
}
@@ -67,11 +79,14 @@ func (r *repository) SaveSyncLog(ctx context.Context, logData MedicationSyncLog)
if err != nil {
return err
}
qb := query.NewSQLQueryBuilder(query.DBTypePostgreSQL).SetSecurityOptions(false, 0)
qb := query.NewSQLQueryBuilder(query.DBTypePostgreSQL).
SetSecurityOptions(false, 0).
SetQueryLogging(false).
SetAllowedColumns([]string{"idxpesanobat", "satusehat_id", "request_payload", "response_payload", "status", "error_message"})
insertData := query.InsertData{
Columns: []string{"idxobat", "medication_id", "request_payload", "response_payload", "status", "error_message"},
Values: []interface{}{logData.IdxObat, logData.MedicationID, logData.RequestPayload, logData.ResponsePayload, logData.Status, logData.ErrorMessage},
Columns: []string{"idxpesanobat", "satusehat_id", "request_payload", "response_payload", "status", "error_message"},
Values: []interface{}{logData.IdxPesanObat, logData.SatuSehatID, logData.RequestPayload, logData.ResponsePayload, logData.Status, logData.ErrorMessage},
}
_, err = qb.ExecuteUpsert(ctx, simrsDB, "public.log_satusehat_medication", insertData, []string{"idxobat"}, []string{"medication_id", "request_payload", "response_payload", "status", "error_message"})
_, err = qb.ExecuteUpsert(ctx, simrsDB, "public.log_satusehat_medication", insertData, []string{"idxpesanobat"}, []string{"satusehat_id", "request_payload", "response_payload", "status", "error_message"})
return err
}
+263 -33
View File
@@ -2,92 +2,322 @@ package medication
import (
"context"
"database/sql"
"encoding/json"
"fmt"
"log"
"net/http"
"os"
"path/filepath"
"strconv"
"strings"
"time"
"service/internal/infrastructure/database"
extapi "service/internal/worker/interface"
"service/pkg/logger"
)
const trackerFile = "last_migrated_medication_id.txt"
const trackerFile = "internal/worker/satusehat/medication/last_medication_id.txt"
const mappingFile = "internal/worker/satusehat/medication/medication_mapping.txt"
type Config struct {
DBManager database.Service
InternalBaseURL string
InternalToken string
OrganizationID string
}
type TokenManager interface {
GetAccessToken() string
ForceRefreshAndGetToken(ctx context.Context) (string, error)
}
type WorkerService interface {
Run(ctx context.Context)
}
type worker struct {
cfg Config
repo Repository
apiClient extapi.Client
cfg Config
repo Repository
apiClient extapi.Client
tokenManager TokenManager
}
func NewWorker(cfg Config) WorkerService {
return &worker{cfg: cfg, repo: NewRepository(cfg.DBManager), apiClient: extapi.NewClient(15 * time.Second)}
func NewWorker(cfg Config, tokenManager TokenManager) WorkerService {
return &worker{
cfg: cfg,
repo: NewRepository(cfg.DBManager),
apiClient: extapi.NewClient(60 * time.Second),
tokenManager: tokenManager,
}
}
func (w *worker) Run(ctx context.Context) {
log.Println("[MEDICATION WORKER] Memulai proses sinkronisasi...")
logger.Default().Info("[MEDICATION WORKER] Memulai proses sinkronisasi API...")
w.ensureTrackerFileExists()
lastID := w.readLastID()
// if lastID == 0 {
// lastID = 3384064 // Dikurangi 1 agar ID 3384065 ikut terambil
// w.updateTracker(&lastID, lastID)
// }
logger.Default().Info("[MEDICATION WORKER] Melanjutkan proses dari", logger.Int64("last_id", lastID))
for {
select {
case <-ctx.Done():
log.Println("[MEDICATION WORKER] Proses dihentikan.")
logger.Default().Warn("[MEDICATION WORKER] Proses dihentikan oleh sistem (Graceful Shutdown)")
return
default:
}
med, err := w.repo.GetNextMedication(ctx, lastID)
if err != nil {
if err == sql.ErrNoRows {
time.Sleep(5 * time.Second) // Tunggu data baru
continue
}
logger.Default().Error("[MEDICATION WORKER] Gagal query ke database", logger.ErrorField(err))
time.Sleep(5 * time.Second)
continue
}
internalPayload := MapToInternalAPI(med, w.cfg.OrganizationID)
reqURL := fmt.Sprintf("%s/satusehat/medication", strings.TrimRight(w.cfg.InternalBaseURL, "/"))
respBody, statusCode, err := w.apiClient.PostJSON(ctx, reqURL, w.cfg.InternalToken, internalPayload)
logger.Default().Info("[MEDICATION WORKER] 🔄 Memproses Dokumen",
logger.Int64("idxpesanobat", med.IdxPesanObat),
logger.String("kode_kfa", med.KfaCode.String),
)
var status, errMsg, fhirID string
if err != nil || (statusCode != http.StatusOK && statusCode != http.StatusCreated) {
status, errMsg = "FAILED", fmt.Sprintf("Err: %v, HTTP: %d", err, statusCode)
} else {
status = "SUCCESS"
var res map[string]interface{}
if json.Unmarshal(respBody, &res) == nil {
if data, ok := res["data"].(map[string]interface{}); ok {
fhirID, _ = data["id"].(string)
} else {
fhirID, _ = res["id"].(string)
}
}
if !med.KfaCode.Valid || med.KfaCode.String == "" {
logger.Default().Warn("[MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong",
logger.Int64("idxpesanobat", med.IdxPesanObat),
)
w.updateTracker(&lastID, med.IdxPesanObat)
continue
}
kfaDisplay, formCode, formDisplay := w.fetchKFADetails(ctx, med.KfaCode.String)
internalPayload := MapToInternalAPI(med, w.cfg.OrganizationID, kfaDisplay, formCode, formDisplay)
fhirID, respBody, status, errMsg, shouldRetry := w.sendToInternalAPI(ctx, internalPayload, med.IdxPesanObat)
// Menyimpan payload request dan response ke dalam log
logger.Default().Info("[MEDICATION WORKER] Detail Transaksi",
logger.Int64("idxpesanobat", med.IdxPesanObat),
logger.Any("request_payload", internalPayload),
logger.String("response_payload", string(respBody)),
logger.String("status", status),
)
syncLog := MapToSyncLog(med.IdxPesanObat, fhirID, internalPayload, respBody, status, errMsg)
if errLog := w.repo.SaveSyncLog(ctx, syncLog); errLog != nil {
logger.Default().Error("[MEDICATION WORKER] Gagal menyimpan histori log ke DB", logger.ErrorField(errLog))
}
_ = w.repo.SaveSyncLog(ctx, MapToSyncLog(med.IdxObat, fhirID, internalPayload, respBody, status, errMsg))
if status == "SUCCESS" && fhirID != "" {
_ = w.repo.SaveSatuSehatID(ctx, med.IdxObat, fhirID)
// if errUpdate := w.repo.SaveSatuSehatID(ctx, med.IdxPesanObat, fhirID); errUpdate != nil {
// logger.Default().Error("[MEDICATION WORKER] Gagal update FHIR ID ke transaksi utama", logger.ErrorField(errUpdate))
// }
w.saveMapping(med.IdxPesanObat, fhirID)
}
lastID = med.IdxObat
os.WriteFile(trackerFile, []byte(strconv.FormatInt(lastID, 10)), 0644)
time.Sleep(500 * time.Millisecond)
// SELALU update tracker agar lastID berjalan maju terus dan tidak mengulang data yang sama
w.updateTracker(&lastID, med.IdxPesanObat)
if shouldRetry {
logger.Default().Warn("[MEDICATION WORKER] ⚠️ Gagal memproses data (melewati dokumen)", logger.Int64("idxpesanobat", med.IdxPesanObat), logger.String("reason", errMsg))
time.Sleep(5 * time.Second)
} else {
time.Sleep(2 * time.Second)
}
}
}
func (w *worker) sendToInternalAPI(ctx context.Context, payload map[string]interface{}, idxPesanObat int64) (fhirID string, respBody []byte, status string, errMsg string, shouldRetry bool) {
reqURL := fmt.Sprintf("%s/satusehat/medication", strings.TrimRight(w.cfg.InternalBaseURL, "/"))
respBody, statusCode, err := w.apiClient.PostJSON(ctx, reqURL, w.tokenManager.GetAccessToken(), payload)
if err != nil {
logger.Default().Error("[MEDICATION WORKER] ❌ Gagal Koneksi ke API Part 3",
logger.Int64("idxpesanobat", idxPesanObat),
logger.Any("payload_sent", payload),
logger.ErrorField(err),
)
return "", nil, "FAILED", err.Error(), true
}
if statusCode == http.StatusUnauthorized {
logger.Default().Warn("[MEDICATION WORKER] Menerima status 401 Unauthorized, mencoba refresh token...", logger.Int64("idxpesanobat", idxPesanObat))
newToken, refreshErr := w.tokenManager.ForceRefreshAndGetToken(ctx)
if refreshErr != nil {
logger.Default().Error("[MEDICATION WORKER] Gagal refresh token, akan mencoba lagi pada iterasi berikutnya.", logger.Int64("idxpesanobat", idxPesanObat), logger.ErrorField(refreshErr))
return "", respBody, "FAILED", refreshErr.Error(), true
}
logger.Default().Info("[MEDICATION WORKER] Token berhasil di-refresh, mencoba ulang request...", logger.Int64("idxpesanobat", idxPesanObat))
respBody, statusCode, err = w.apiClient.PostJSON(ctx, reqURL, newToken, payload)
if err != nil {
logger.Default().Error("[MEDICATION WORKER] ❌ Gagal Koneksi ke API Part 3 (setelah retry)",
logger.Int64("idxpesanobat", idxPesanObat),
logger.ErrorField(err),
)
return "", nil, "FAILED", err.Error(), true
}
}
if statusCode != http.StatusOK && statusCode != http.StatusCreated {
errMsg = fmt.Sprintf("HTTP %d", statusCode)
logger.Default().Error("[MEDICATION WORKER] ❌ Respons Error dari API Part 3",
logger.Int64("idxpesanobat", idxPesanObat),
logger.Int("status_code", statusCode),
logger.String("response", truncate(string(respBody), 200)),
)
if statusCode >= 500 || statusCode == http.StatusTooManyRequests {
return "", respBody, "FAILED", errMsg, true
}
return "", respBody, "FAILED", errMsg, false
}
var result map[string]interface{}
if errUnmarshal := json.Unmarshal(respBody, &result); errUnmarshal == nil {
if data, ok := result["data"].(map[string]interface{}); ok {
if id, ok := data["id"].(string); ok {
fhirID = id
}
} else if id, ok := result["id"].(string); ok {
fhirID = id
}
}
logger.Default().Info("[MEDICATION WORKER] ✅ Sukses mengirim data Medication",
logger.Int64("idxpesanobat", idxPesanObat),
logger.String("fhir_id", fhirID),
)
return fhirID, respBody, "SUCCESS", "", false
}
func (w *worker) fetchKFADetails(ctx context.Context, kfaCode string) (kfaDisplay, formCode, formDisplay string) {
reqURL := fmt.Sprintf("%s/satusehat/reference/kfa/products/%s", strings.TrimRight(w.cfg.InternalBaseURL, "/"), kfaCode)
req, err := http.NewRequestWithContext(ctx, http.MethodGet, reqURL, nil)
if err != nil {
logger.Default().Error("[MEDICATION WORKER] Gagal membuat request KFA", logger.ErrorField(err))
return "", "", ""
}
req.Header.Set("Authorization", "Bearer "+w.tokenManager.GetAccessToken())
req.Header.Set("Accept", "application/json")
client := &http.Client{Timeout: 10 * time.Second}
resp, err := client.Do(req)
if err != nil {
logger.Default().Error("[MEDICATION WORKER] Gagal request data ke Part 3 KFA", logger.ErrorField(err))
return "", "", ""
}
defer resp.Body.Close()
if resp.StatusCode != http.StatusOK {
logger.Default().Warn("[MEDICATION WORKER] KFA tidak ditemukan / Error", logger.Int("status", resp.StatusCode), logger.String("kfa_code", kfaCode))
return "", "", ""
}
var result map[string]interface{}
if err := json.NewDecoder(resp.Body).Decode(&result); err != nil {
logger.Default().Error("[MEDICATION WORKER] Gagal decode response KFA", logger.ErrorField(err))
return "", "", ""
}
// Parsing respons bersarang dari KFA API (data -> result -> dosage_form)
if dataMap, ok := result["data"].(map[string]interface{}); ok {
if resultMap, ok := dataMap["result"].(map[string]interface{}); ok {
// Ekstrak nama obat
if val, ok := resultMap["name"].(string); ok {
kfaDisplay = val
}
// Ekstrak bentuk obat (dosage_form)
if dosageForm, ok := resultMap["dosage_form"].(map[string]interface{}); ok {
if val, ok := dosageForm["code"].(string); ok {
formCode = val
}
if val, ok := dosageForm["name"].(string); ok {
formDisplay = val
}
}
}
}
// Fallback jika format respons langsung flat
if kfaDisplay == "" {
if val, ok := result["name"].(string); ok {
kfaDisplay = val
}
}
if formCode == "" {
if val, ok := result["form_code"].(string); ok {
formCode = val
}
}
if formDisplay == "" {
if val, ok := result["form_display"].(string); ok {
formDisplay = val
}
}
return kfaDisplay, formCode, formDisplay
}
func (w *worker) updateTracker(lastID *int64, currentID int64) {
*lastID = currentID
os.MkdirAll("internal/worker/satusehat/medication", 0755)
os.WriteFile(trackerFile, []byte(strconv.FormatInt(currentID, 10)), 0644)
}
func (w *worker) readLastID() int64 {
data, _ := os.ReadFile(trackerFile)
id, _ := strconv.ParseInt(strings.TrimSpace(string(data)), 10, 64)
data, err := os.ReadFile(trackerFile)
if err != nil {
return 0
}
idStr := strings.TrimSpace(string(data))
id, err := strconv.ParseInt(idStr, 10, 64)
if err != nil {
logger.Default().Warn("[MEDICATION WORKER] Gagal parsing ID dari tracker file, memulai dari awal.", logger.String("content", idStr), logger.ErrorField(err))
return 0
}
return id
}
func (w *worker) ensureTrackerFileExists() {
if _, err := os.Stat(trackerFile); os.IsNotExist(err) {
dir := filepath.Dir(trackerFile)
if err := os.MkdirAll(dir, 0755); err != nil {
logger.Default().Error("[MEDICATION WORKER] Gagal membuat direktori tracker", logger.ErrorField(err))
}
if err := os.WriteFile(trackerFile, []byte("0"), 0644); err != nil {
logger.Default().Error("[MEDICATION WORKER] Gagal membuat file tracker default", logger.ErrorField(err))
}
}
}
func (w *worker) saveMapping(idxPesanObat int64, fhirID string) {
os.MkdirAll("internal/worker/satusehat/medication", 0755)
f, err := os.OpenFile(mappingFile, os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0644)
if err != nil {
logger.Default().Error("[MEDICATION WORKER] Gagal membuka file mapping", logger.ErrorField(err))
return
}
defer f.Close()
line := fmt.Sprintf("%d|%s\n", idxPesanObat, fhirID)
if _, err := f.WriteString(line); err != nil {
logger.Default().Error("[MEDICATION WORKER] Gagal menulis ke file mapping", logger.ErrorField(err))
}
}
func truncate(s string, max int) string {
if len(s) > max {
return s[:max] + "..."
}
return s
}
@@ -2,6 +2,7 @@ package servicerequest
import (
"database/sql"
"time"
)
// ServiceRequestDB merepresentasikan tabel order lab/radiologi
@@ -22,3 +23,39 @@ type ServiceRequestSyncLog struct {
Status string `db:"status"`
ErrorMessage string `db:"error_message"`
}
type ServiceRequestRadDB struct {
ID string `db:"id"`
JsonData sql.NullString `db:"Json_data"`
PatientIHS sql.NullString `db:"Nomor_satusehat_pasien"`
PatientName sql.NullString `db:"Nama_lengkap"`
EncounterID sql.NullString `db:"IDXDAFTAR_satusehat"`
CreatedAt time.Time `db:"Created_at"`
RequesterID sql.NullString `db:"requester_id"`
PerformerID sql.NullString `db:"performer_id"`
}
type ServiceRequestJson struct {
Status string `json:"status"`
Intent string `json:"intent"`
Category []struct {
Coding []struct {
Code string `json:"code"`
Display string `json:"display"`
} `json:"coding"`
} `json:"category"`
Code struct {
Coding []struct {
Code string `json:"code"`
Display string `json:"display"`
} `json:"coding"`
} `json:"code"`
Requester struct {
Reference string `json:"reference"`
} `json:"requester"`
Performer []struct {
Reference string `json:"reference"`
Display string `json:"display"`
} `json:"performer"`
AuthoredOn string `json:"authoredOn"`
}
@@ -0,0 +1 @@
2026-04-24T13:24:32Z
@@ -3,6 +3,7 @@ package servicerequest
import (
"encoding/json"
"fmt"
"strings"
"time"
)
@@ -33,3 +34,58 @@ func MapToSyncLog(idx int64, fhirID string, reqPayload interface{}, respBody []b
ErrorMessage: errMsg,
}
}
func MapRadiologyToInternalAPI(dbData *ServiceRequestRadDB) map[string]interface{} {
var parsedData ServiceRequestJson
_ = json.Unmarshal([]byte(dbData.JsonData.String), &parsedData)
categoryCode := ""
categoryDisplay := ""
if len(parsedData.Category) > 0 && len(parsedData.Category[0].Coding) > 0 {
categoryCode = parsedData.Category[0].Coding[0].Code
categoryDisplay = parsedData.Category[0].Coding[0].Display
}
codeVal := ""
codeDisplay := ""
if len(parsedData.Code.Coding) > 0 {
codeVal = parsedData.Code.Coding[0].Code
codeDisplay = parsedData.Code.Coding[0].Display
}
requesterID := dbData.RequesterID.String
// Ambil dari DB terlebih dahulu, fallback ke JSON data jika kosong
performerID := dbData.PerformerID.String
if performerID == "" && len(parsedData.Performer) > 0 {
performerID = parsedData.Performer[0].Reference
if parts := strings.Split(performerID, "/"); len(parts) > 1 {
performerID = parts[len(parts)-1]
}
}
status := parsedData.Status
if status == "" {
status = "active" // Fallback jika kosong
}
intent := parsedData.Intent
if intent == "" {
intent = "order" // Fallback jika kosong
}
return map[string]interface{}{
"patient_id": dbData.PatientIHS.String,
"patient_name": dbData.PatientName.String,
"encounter_id": dbData.EncounterID.String,
"status": status,
"intent": intent,
"category_code": categoryCode,
"category_display": categoryDisplay,
"code": codeVal,
"display": codeDisplay,
"requester_id": requesterID,
"performer_id": performerID,
"authored_on": parsedData.AuthoredOn,
}
}
@@ -4,12 +4,16 @@ import (
"context"
"service/internal/infrastructure/database"
"service/pkg/utils/query"
"time"
)
type Repository interface {
GetNextServiceRequest(ctx context.Context, lastID int64) (*ServiceRequestDB, error)
SaveSatuSehatID(ctx context.Context, idx int64, fhirID string) error
SaveSyncLog(ctx context.Context, logData ServiceRequestSyncLog) error
GetNextRadiologyServiceRequest(ctx context.Context, lastCreatedAt time.Time) (*ServiceRequestRadDB, error)
UpdateRadiologyServiceRequestStatus(ctx context.Context, id string, fhirID string, encounterID string, status bool) error
}
type repository struct {
@@ -75,3 +79,84 @@ func (r *repository) SaveSyncLog(ctx context.Context, logData ServiceRequestSync
_, err = qb.ExecuteUpsert(ctx, simrsDB, "public.log_satusehat_servicerequest", insertData, []string{"idxorder"}, []string{"servicerequest_id", "request_payload", "response_payload", "status", "error_message"})
return err
}
func (r *repository) GetNextRadiologyServiceRequest(ctx context.Context, lastCreatedAt time.Time) (*ServiceRequestRadDB, error) {
var data ServiceRequestRadDB
satudataDB, err := r.dbManager.GetSQLXDB("satudata")
if err != nil {
return nil, err
}
qb := query.NewSQLQueryBuilder(query.DBTypePostgreSQL).SetSecurityOptions(false, 0)
qRadiology := query.DynamicQuery{
From: "public.data_service_requests",
Aliases: "dsr",
Fields: []query.SelectField{
{Expression: "dsr.id"},
{Expression: `dsr."Json_data"`, Alias: "Json_data"},
{Expression: `dkp."Nomor_satusehat_pasien"`, Alias: "Nomor_satusehat_pasien"},
{Expression: `dkp."Nama_lengkap"`, Alias: "Nama_lengkap"},
{Expression: `dkp."IDXDAFTAR_satusehat"`, Alias: "IDXDAFTAR_satusehat"},
{Expression: `dsr."Created_at"`, Alias: "Created_at"},
{Expression: `dp."Kode_satusehat"`, Alias: "requester_id"},
},
Joins: []query.Join{
{
Type: "INNER",
Table: "public.data_kunjungan_pasien",
Alias: "dkp",
OnConditions: query.CreateAndFilterGroup([]query.DynamicFilter{
query.CreateFilter(`dsr."No_register"`, query.OpEqual, `dkp."NOMR"`),
query.CreateFilter(`dsr."Tanggal_order"`, query.OpEqual, `dkp."Tanggal_masuk"`),
}),
},
{
Type: "LEFT",
Table: "public.data_pegawai",
Alias: "dp",
OnConditions: query.CreateAndFilterGroup([]query.DynamicFilter{
query.CreateFilter(`dkp."DPJP"`, query.OpEqual, `dp."id"`),
}),
},
},
Filters: []query.FilterGroup{
{Filters: []query.DynamicFilter{
query.CreateFilter(`dsr."Send_status"`, query.OpEqual, "false"),
query.CreateFilter(`dsr."Created_at"`, query.OpGreaterThan, lastCreatedAt),
query.CreateFilter(`dsr."Order_from"`, query.OpEqual, "radiologi"),
}},
},
Sort: []query.SortField{query.CreateAscSort(`dsr."Created_at"`)},
Limit: 1,
}
err = qb.ExecuteQueryRow(ctx, satudataDB, qRadiology, &data)
return &data, err
}
func (r *repository) UpdateRadiologyServiceRequestStatus(ctx context.Context, id string, fhirID string, encounterID string, status bool) error {
satudataDB, err := r.dbManager.GetSQLXDB("satudata")
if err != nil {
return err
}
qb := query.NewSQLQueryBuilder(query.DBTypePostgreSQL).SetSecurityOptions(false, 0)
// Secara eksplisit mengizinkan kolom yang memiliki case sensitive (huruf besar) dengan quotes
qb.SetAllowedColumns([]string{
`"Entity_Id"`, `"Send_status"`, "id", `"Encounter_Id"`,
})
statusStr := "false"
if status {
statusStr = "true"
}
updateData := query.UpdateData{
Columns: []string{`"Entity_Id"`, `"Send_status"`, `"Encounter_Id"`},
Values: []interface{}{fhirID, statusStr, encounterID},
}
filters := []query.FilterGroup{query.CreateAndFilterGroup([]query.DynamicFilter{query.CreateEqualFilter("id", id)})}
_, err = qb.ExecuteUpdate(ctx, satudataDB, "public.data_service_requests", updateData, filters)
return err
}
@@ -2,92 +2,338 @@ package servicerequest
import (
"context"
"database/sql"
"encoding/json"
"fmt"
"log"
"net/http"
"os"
"path/filepath"
"strconv"
"strings"
"time"
"service/internal/infrastructure/database"
extapi "service/internal/worker/interface"
"service/pkg/logger"
)
const trackerFile = "last_migrated_servicerequest_id.txt"
const trackerFile = "internal/worker/satusehat/servicerequest/last_servicerequest_id.txt"
const trackerFileRad = "internal/worker/satusehat/servicerequest/last_servicerequest_rad_time.txt"
type Config struct {
DBManager database.Service
InternalBaseURL string
InternalToken string
OrganizationID string
}
type TokenManager interface {
GetAccessToken() string
ForceRefreshAndGetToken(ctx context.Context) (string, error)
}
type WorkerService interface {
Run(ctx context.Context)
}
type worker struct {
cfg Config
repo Repository
apiClient extapi.Client
cfg Config
repo Repository
apiClient extapi.Client
tokenManager TokenManager
mode string
}
func NewWorker(cfg Config) WorkerService {
return &worker{cfg: cfg, repo: NewRepository(cfg.DBManager), apiClient: extapi.NewClient(15 * time.Second)}
func NewDefaultWorker(cfg Config, tokenManager TokenManager) WorkerService {
return &worker{cfg: cfg, repo: NewRepository(cfg.DBManager), apiClient: extapi.NewClient(15 * time.Second), tokenManager: tokenManager, mode: "default"}
}
func NewRadiologyWorker(cfg Config, tokenManager TokenManager) WorkerService {
return &worker{cfg: cfg, repo: NewRepository(cfg.DBManager), apiClient: extapi.NewClient(15 * time.Second), tokenManager: tokenManager, mode: "radiology"}
}
func (w *worker) Run(ctx context.Context) {
log.Println("[SERVICEREQUEST WORKER] Memulai proses sinkronisasi...")
if w.mode == "radiology" {
w.runRadiology(ctx)
} else {
w.runDefault(ctx)
}
}
func (w *worker) runDefault(ctx context.Context) {
logger.Default().Info("[SERVICEREQUEST WORKER] Memulai proses sinkronisasi...")
w.ensureTrackerFileExists()
lastID := w.readLastID()
logger.Default().Info("[SERVICEREQUEST WORKER] Melanjutkan proses dari", logger.Int64("last_id", lastID))
for {
select {
case <-ctx.Done():
log.Println("[SERVICEREQUEST WORKER] Proses dihentikan.")
logger.Default().Warn("[SERVICEREQUEST WORKER] Proses dihentikan oleh sistem (Graceful Shutdown)")
return
default:
}
sr, err := w.repo.GetNextServiceRequest(ctx, lastID)
if err != nil {
if err == sql.ErrNoRows {
time.Sleep(5 * time.Second) // Tunggu data baru
continue
}
logger.Default().Error("[SERVICEREQUEST WORKER] Gagal query ke database", logger.ErrorField(err))
time.Sleep(5 * time.Second)
continue
}
internalPayload := MapToInternalAPI(sr, w.cfg.OrganizationID)
reqURL := fmt.Sprintf("%s/satusehat/servicerequest", strings.TrimRight(w.cfg.InternalBaseURL, "/"))
respBody, statusCode, err := w.apiClient.PostJSON(ctx, reqURL, w.cfg.InternalToken, internalPayload)
sourceID := strconv.FormatInt(sr.IdxOrder, 10)
logger.Default().Info("[SERVICEREQUEST WORKER] 🔄 Memproses Dokumen",
logger.String("source_id", sourceID),
logger.String("no_mr", sr.NoMR.String),
)
var status, errMsg, fhirID string
if err != nil || (statusCode != http.StatusOK && statusCode != http.StatusCreated) {
status, errMsg = "FAILED", fmt.Sprintf("Err: %v, HTTP: %d", err, statusCode)
} else {
status = "SUCCESS"
var res map[string]interface{}
if json.Unmarshal(respBody, &res) == nil {
if data, ok := res["data"].(map[string]interface{}); ok {
fhirID, _ = data["id"].(string)
} else {
fhirID, _ = res["id"].(string)
}
internalPayload := MapToInternalAPI(sr, w.cfg.OrganizationID)
patientID, _ := internalPayload["patient_id"].(string)
encounterID, _ := internalPayload["encounter_id"].(string)
if patientID == "" || encounterID == "" || encounterID == "0" {
logger.Default().Warn("[SERVICEREQUEST WORKER] ⚠️ Data dilewati karena patient_id atau encounter_id kosong", logger.String("source_id", sourceID))
lastID = sr.IdxOrder
os.WriteFile(trackerFile, []byte(strconv.FormatInt(lastID, 10)), 0644)
continue
}
fhirID, respBody, status, errMsg, retryDelay := w.sendToInternalAPI(ctx, internalPayload, sourceID)
syncLog := MapToSyncLog(sr.IdxOrder, fhirID, internalPayload, respBody, status, errMsg)
if errLog := w.repo.SaveSyncLog(ctx, syncLog); errLog != nil {
logger.Default().Error("[SERVICEREQUEST WORKER] Gagal menyimpan histori log ke DB", logger.ErrorField(errLog))
}
if status == "SUCCESS" && fhirID != "" {
if errUpdate := w.repo.SaveSatuSehatID(ctx, sr.IdxOrder, fhirID); errUpdate != nil {
logger.Default().Error("[SERVICEREQUEST WORKER] Gagal update FHIR ID ke transaksi utama", logger.ErrorField(errUpdate))
}
}
_ = w.repo.SaveSyncLog(ctx, MapToSyncLog(sr.IdxOrder, fhirID, internalPayload, respBody, status, errMsg))
if status == "SUCCESS" && fhirID != "" {
_ = w.repo.SaveSatuSehatID(ctx, sr.IdxOrder, fhirID)
if retryDelay == 0 {
lastID = sr.IdxOrder
os.WriteFile(trackerFile, []byte(strconv.FormatInt(lastID, 10)), 0644)
} else {
logger.Default().Warn("[SERVICEREQUEST WORKER] ⚠️ Retrying data", logger.String("source_id", sourceID), logger.String("reason", errMsg), logger.Duration("delay", retryDelay))
}
lastID = sr.IdxOrder
os.WriteFile(trackerFile, []byte(strconv.FormatInt(lastID, 10)), 0644)
time.Sleep(500 * time.Millisecond)
if retryDelay > 0 {
time.Sleep(retryDelay)
} else {
time.Sleep(2 * time.Second) // Mencegah Rate Limit Exceeded
}
}
}
func (w *worker) runRadiology(ctx context.Context) {
logger.Default().Info("[SERVICEREQUEST-RAD WORKER] Memulai proses sinkronisasi radiologi...")
w.ensureTrackerFileRadExists()
lastTime := w.readLastTime()
// Custom data: Override membaca mulai tanggal 2025-12-18 (Format: YYYY-MM-DD)
customDate, _ := time.Parse("2006-01-02", "2026-24-04")
if lastTime.Before(customDate) {
lastTime = customDate
}
logger.Default().Info("[SERVICEREQUEST-RAD WORKER] Melanjutkan proses dari", logger.Time("last_time", lastTime))
for {
select {
case <-ctx.Done():
logger.Default().Warn("[SERVICEREQUEST-RAD WORKER] Proses dihentikan oleh sistem (Graceful Shutdown)")
return
default:
}
sr, err := w.repo.GetNextRadiologyServiceRequest(ctx, lastTime)
if err != nil {
if err == sql.ErrNoRows {
time.Sleep(5 * time.Second) // Tunggu data baru
continue
}
logger.Default().Error("[SERVICEREQUEST-RAD WORKER] Gagal query ke database", logger.ErrorField(err))
time.Sleep(5 * time.Second)
continue
}
logger.Default().Info("[SERVICEREQUEST-RAD WORKER] 🔄 Memproses Dokumen",
logger.String("source_id", sr.ID),
logger.String("patient_name", sr.PatientName.String),
)
internalPayload := MapRadiologyToInternalAPI(sr)
patientID, _ := internalPayload["patient_id"].(string)
encounterID, _ := internalPayload["encounter_id"].(string)
requesterID, _ := internalPayload["requester_id"].(string)
performerID, _ := internalPayload["performer_id"].(string)
if patientID == "" || encounterID == "" || encounterID == "0" || requesterID == "" || requesterID == "0" || performerID == "" || performerID == "0" {
logger.Default().Warn("[SERVICEREQUEST-RAD WORKER] ⚠️ Data dilewati karena patient_id atau encounter_id atau requester_id kosong", logger.String("source_id", sr.ID))
lastTime = sr.CreatedAt
os.WriteFile(trackerFileRad, []byte(lastTime.Format(time.RFC3339Nano)), 0644)
continue
}
fhirID, respBody, status, errMsg, retryDelay := w.sendToInternalAPI(ctx, internalPayload, sr.ID)
// Menyimpan payload request dan response ke dalam log
logger.Default().Info("[SERVICEREQUEST-RAD WORKER] Detail Transaksi",
logger.String("source_id", sr.ID),
logger.Any("request_payload", internalPayload),
logger.String("response_payload", string(respBody)),
logger.String("status", status),
)
if status == "SUCCESS" && fhirID != "" {
if errUpdate := w.repo.UpdateRadiologyServiceRequestStatus(ctx, sr.ID, fhirID, encounterID, true); errUpdate != nil {
logger.Default().Error("[SERVICEREQUEST-RAD WORKER] Gagal update status ke transaksi utama", logger.ErrorField(errUpdate))
}
}
if retryDelay == 0 {
lastTime = sr.CreatedAt
os.WriteFile(trackerFileRad, []byte(lastTime.Format(time.RFC3339Nano)), 0644)
} else {
logger.Default().Warn("[SERVICEREQUEST-RAD WORKER] ⚠️ Retrying data", logger.String("source_id", sr.ID), logger.String("reason", errMsg), logger.Duration("delay", retryDelay))
}
if retryDelay > 0 {
time.Sleep(retryDelay)
} else {
time.Sleep(2 * time.Second) // Mencegah Rate Limit Exceeded
}
}
}
// sendToInternalAPI mengirimkan payload ke internal FHIR server, menangani auth retry (401) dan response error.
func (w *worker) sendToInternalAPI(ctx context.Context, payload map[string]interface{}, sourceID string) (fhirID string, respBody []byte, status string, errMsg string, retryDelay time.Duration) {
reqURL := fmt.Sprintf("%s/satusehat/servicerequest", strings.TrimRight(w.cfg.InternalBaseURL, "/"))
workerName := "SERVICEREQUEST WORKER"
if w.mode == "radiology" {
workerName = "SERVICEREQUEST-RAD WORKER"
}
// --- Percobaan Pertama ---
respBody, statusCode, err := w.apiClient.PostJSON(ctx, reqURL, w.tokenManager.GetAccessToken(), payload)
if err != nil {
logger.Default().Error(fmt.Sprintf("[%s] ❌ Gagal Koneksi ke API Part 3", workerName),
logger.String("source_id", sourceID),
logger.Any("payload_sent", payload),
logger.ErrorField(err),
)
return "", nil, "FAILED", err.Error(), 5 * time.Second
}
// --- Penanganan Token Unauthorized (401) ---
if statusCode == http.StatusUnauthorized {
logger.Default().Warn(fmt.Sprintf("[%s] Menerima status 401 Unauthorized, mencoba refresh token...", workerName), logger.String("source_id", sourceID))
newToken, refreshErr := w.tokenManager.ForceRefreshAndGetToken(ctx)
if refreshErr != nil {
logger.Default().Error(fmt.Sprintf("[%s] Gagal refresh token, akan mencoba lagi pada iterasi berikutnya.", workerName), logger.String("source_id", sourceID), logger.ErrorField(refreshErr))
return "", respBody, "FAILED", refreshErr.Error(), 5 * time.Second
}
logger.Default().Info(fmt.Sprintf("[%s] Token berhasil di-refresh, mencoba ulang request...", workerName), logger.String("source_id", sourceID))
respBody, statusCode, err = w.apiClient.PostJSON(ctx, reqURL, newToken, payload)
if err != nil {
logger.Default().Error(fmt.Sprintf("[%s] ❌ Gagal Koneksi ke API Part 3 (setelah retry)", workerName),
logger.String("source_id", sourceID),
logger.ErrorField(err),
)
return "", nil, "FAILED", err.Error(), 5 * time.Second
}
}
// --- Evaluasi Final Respons ---
if statusCode != http.StatusOK && statusCode != http.StatusCreated {
errMsg = fmt.Sprintf("HTTP %d", statusCode)
logger.Default().Error(fmt.Sprintf("[%s] ❌ Respons Error dari API Part 3", workerName),
logger.String("source_id", sourceID),
logger.Int("status_code", statusCode),
logger.String("response", truncate(string(respBody), 200)),
)
// Lakukan Retry jika server Internal error (5xx) atau Rate Limit (429)
if statusCode >= 500 || statusCode == http.StatusTooManyRequests {
delay := 5 * time.Second
if statusCode == http.StatusTooManyRequests {
delay = 60 * time.Second // Default fallback jika parse gagal
var errResp struct {
RetryAfter int `json:"retry_after"`
}
if errParse := json.Unmarshal(respBody, &errResp); errParse == nil && errResp.RetryAfter > 0 {
delay = time.Duration(errResp.RetryAfter) * time.Second
}
}
return "", respBody, "FAILED", errMsg, delay
}
return "", respBody, "FAILED", errMsg, 0
}
// --- Sukses ---
var result map[string]interface{}
if errUnmarshal := json.Unmarshal(respBody, &result); errUnmarshal == nil {
if data, ok := result["data"].(map[string]interface{}); ok {
if id, ok := data["id"].(string); ok {
fhirID = id
}
} else if id, ok := result["id"].(string); ok {
fhirID = id
}
}
logger.Default().Info(fmt.Sprintf("[%s] ✅ Sukses mengirim data ServiceRequest", workerName),
logger.String("source_id", sourceID),
logger.String("fhir_id", fhirID),
)
return fhirID, respBody, "SUCCESS", "", 0
}
func (w *worker) readLastID() int64 {
data, _ := os.ReadFile(trackerFile)
id, _ := strconv.ParseInt(strings.TrimSpace(string(data)), 10, 64)
return id
}
func (w *worker) ensureTrackerFileExists() {
if _, err := os.Stat(trackerFile); os.IsNotExist(err) {
dir := filepath.Dir(trackerFile)
if err := os.MkdirAll(dir, 0755); err != nil {
logger.Default().Error("[SERVICEREQUEST WORKER] Gagal membuat direktori tracker", logger.ErrorField(err))
}
if err := os.WriteFile(trackerFile, []byte("0"), 0644); err != nil {
logger.Default().Error("[SERVICEREQUEST WORKER] Gagal membuat file tracker default", logger.ErrorField(err))
}
}
}
func (w *worker) readLastTime() time.Time {
data, err := os.ReadFile(trackerFileRad)
if err != nil {
return time.Time{}
}
t, err := time.Parse(time.RFC3339Nano, strings.TrimSpace(string(data)))
if err != nil {
return time.Time{}
}
return t
}
func (w *worker) ensureTrackerFileRadExists() {
if _, err := os.Stat(trackerFileRad); os.IsNotExist(err) {
dir := filepath.Dir(trackerFileRad)
_ = os.MkdirAll(dir, 0755)
_ = os.WriteFile(trackerFileRad, []byte(time.Time{}.Format(time.RFC3339Nano)), 0644)
}
}
func truncate(s string, max int) string {
if len(s) > max {
return s[:max] + "..."
}
return s
}
+201 -200
View File
@@ -10,25 +10,7 @@ import (
"service/internal/infrastructure/config"
"service/internal/infrastructure/database"
"service/internal/interfaces/satusehat"
"service/internal/worker/satusehat/allergyintolerance"
"service/internal/worker/satusehat/careplan"
"service/internal/worker/satusehat/clinicalimpression"
"service/internal/worker/satusehat/composition"
"service/internal/worker/satusehat/condition"
"service/internal/worker/satusehat/diagnosticreport"
"service/internal/worker/satusehat/encounter"
"service/internal/worker/satusehat/episodeofcare"
"service/internal/worker/satusehat/imagingstudy"
"service/internal/worker/satusehat/immunization"
"service/internal/worker/satusehat/medication"
"service/internal/worker/satusehat/medicationdispense"
"service/internal/worker/satusehat/medicationrequest"
"service/internal/worker/satusehat/medicationstatement"
"service/internal/worker/satusehat/observation"
"service/internal/worker/satusehat/procedure"
"service/internal/worker/satusehat/questionnaireresponse"
"service/internal/worker/satusehat/servicerequest"
"service/internal/worker/satusehat/specimen"
"service/pkg/logger"
)
@@ -37,6 +19,11 @@ type Manager struct {
cfg *config.Config
db database.Service
satusehatClient satusehat.SatuSehatClient
// Auth state for all workers
accessToken string
refreshToken string
tokenMutex sync.RWMutex
}
// NewManager membuat instance Manager baru
@@ -52,20 +39,21 @@ func NewManager(cfg *config.Config, db database.Service, satusehatClient satuseh
func (m *Manager) Start(ctx context.Context) {
logger.Default().Info("Starting background workers...")
// Lakukan login awal untuk mendapatkan token bagi semua worker
if err := m.login(ctx); err != nil {
logger.Default().Fatal("Initial login for workers failed, stopping.", logger.ErrorField(err))
return
}
var wg sync.WaitGroup
// Tentukan Organization ID (Bisa dari Environment Variable atau Config Struct)
orgID := os.Getenv("SATUSEHAT_ORGANIZATION_ID")
orgID := os.Getenv("SATUSEHAT_ORG_ID")
if orgID == "" {
logger.Default().Warn("SATUSEHAT_ORGANIZATION_ID is not set in environment variables")
logger.Default().Warn("SATUSEHAT_ORG_ID is not set in environment variables")
}
internalPort := 8080
if m.cfg != nil && m.cfg.Server.REST.Port != 0 {
internalPort = m.cfg.Server.REST.Port
}
internalBaseURL := fmt.Sprintf("http://localhost:%d/api/v1", internalPort)
internalToken := os.Getenv("INTERNAL_API_TOKEN")
internalBaseURL := m.cfg.SatuSehat.InternalFHIRServerURL
// Jobs mendefinisikan urutan dan jeda waktu (delay) boot-up setiap worker.
// Konfigurasi waktu ini mencegah perebutan resource di awal (thundering herd)
@@ -76,195 +64,208 @@ func (m *Manager) Start(ctx context.Context) {
delay time.Duration
run func(context.Context)
}{
// {
// name: "Encounter",
// delay: 5 * time.Second, // Memberikan jeda 5 detik agar Encounter mendapat porsi jalan lebih dulu
// run: func(c context.Context) {
// encounter.NewWorker(encounter.Config{
// DBManager: m.db, InternalBaseURL: internalBaseURL, OrganizationID: orgID,
// }).Run(c)
// },
// },
// {
// name: "Condition",
// delay: 2 * time.Second,
// run: func(c context.Context) {
// // TODO: Refactor this worker
// // condition.NewWorker(...).Run(c)
// },
// },
{
name: "Medication (Master)",
delay: 0, // Master data berjalan seketika
run: func(c context.Context) {
medication.NewWorker(medication.Config{
DBManager: m.db, InternalBaseURL: internalBaseURL, InternalToken: internalToken, OrganizationID: orgID,
}).Run(c)
},
},
{
name: "Encounter",
delay: 5 * time.Second, // Memberikan jeda 5 detik agar Encounter mendapat porsi jalan lebih dulu
run: func(c context.Context) {
encounter.NewWorker(encounter.Config{
DBManager: m.db, InternalBaseURL: internalBaseURL, InternalToken: internalToken, OrganizationID: orgID,
}).Run(c)
},
},
{
name: "Condition",
delay: 2 * time.Second,
run: func(c context.Context) {
condition.NewWorker(condition.Config{
DBManager: m.db, InternalBaseURL: internalBaseURL, InternalToken: internalToken, OrganizationID: orgID,
}).Run(c)
},
},
{
name: "Observation",
delay: 2 * time.Second,
run: func(c context.Context) {
observation.NewWorker(observation.Config{
DBManager: m.db, InternalBaseURL: internalBaseURL, InternalToken: internalToken, OrganizationID: orgID,
}).Run(c)
},
},
{
name: "Procedure",
delay: 2 * time.Second,
run: func(c context.Context) {
procedure.NewWorker(procedure.Config{
DBManager: m.db, InternalBaseURL: internalBaseURL, InternalToken: internalToken, OrganizationID: orgID,
}).Run(c)
},
},
{
name: "AllergyIntolerance",
delay: 2 * time.Second,
run: func(c context.Context) {
allergyintolerance.NewWorker(allergyintolerance.Config{
DBManager: m.db, InternalBaseURL: internalBaseURL, InternalToken: internalToken, OrganizationID: orgID,
}).Run(c)
},
},
{
name: "ClinicalImpression",
delay: 2 * time.Second,
run: func(c context.Context) {
clinicalimpression.NewWorker(clinicalimpression.Config{
DBManager: m.db, InternalBaseURL: internalBaseURL, InternalToken: internalToken, OrganizationID: orgID,
}).Run(c)
},
},
{
name: "Immunization",
delay: 2 * time.Second,
run: func(c context.Context) {
immunization.NewWorker(immunization.Config{
DBManager: m.db, InternalBaseURL: internalBaseURL, InternalToken: internalToken, OrganizationID: orgID,
}).Run(c)
},
},
{
name: "ServiceRequest",
delay: 2 * time.Second,
run: func(c context.Context) {
servicerequest.NewWorker(servicerequest.Config{
DBManager: m.db, InternalBaseURL: internalBaseURL, InternalToken: internalToken, OrganizationID: orgID,
}).Run(c)
},
},
{
name: "Specimen",
delay: 2 * time.Second,
run: func(c context.Context) {
specimen.NewWorker(specimen.Config{
DBManager: m.db, InternalBaseURL: internalBaseURL, InternalToken: internalToken, OrganizationID: orgID,
}).Run(c)
},
},
{
name: "DiagnosticReport",
delay: 2 * time.Second,
run: func(c context.Context) {
diagnosticreport.NewWorker(diagnosticreport.Config{
DBManager: m.db, InternalBaseURL: internalBaseURL, InternalToken: internalToken, OrganizationID: orgID,
}).Run(c)
},
},
{
name: "ImagingStudy",
delay: 2 * time.Second,
run: func(c context.Context) {
imagingstudy.NewWorker(imagingstudy.Config{
DBManager: m.db, InternalBaseURL: internalBaseURL, InternalToken: internalToken, OrganizationID: orgID,
}).Run(c)
},
},
{
name: "Composition",
delay: 2 * time.Second,
run: func(c context.Context) {
composition.NewWorker(composition.Config{
DBManager: m.db, InternalBaseURL: internalBaseURL, InternalToken: internalToken, OrganizationID: orgID,
}).Run(c)
},
},
{
name: "CarePlan",
delay: 2 * time.Second,
run: func(c context.Context) {
careplan.NewWorker(careplan.Config{
DBManager: m.db, InternalBaseURL: internalBaseURL, InternalToken: internalToken, OrganizationID: orgID,
}).Run(c)
},
},
{
name: "EpisodeOfCare",
delay: 2 * time.Second,
run: func(c context.Context) {
episodeofcare.NewWorker(episodeofcare.Config{
DBManager: m.db, InternalBaseURL: internalBaseURL, InternalToken: internalToken, OrganizationID: orgID,
}).Run(c)
},
},
{
name: "MedicationRequest",
delay: 2 * time.Second,
run: func(c context.Context) {
medicationrequest.NewWorker(medicationrequest.Config{
DBManager: m.db, InternalBaseURL: internalBaseURL, InternalToken: internalToken, OrganizationID: orgID,
}).Run(c)
},
},
{
name: "MedicationDispense",
delay: 2 * time.Second,
run: func(c context.Context) {
medicationdispense.NewWorker(medicationdispense.Config{
DBManager: m.db, InternalBaseURL: internalBaseURL, InternalToken: internalToken, OrganizationID: orgID,
}).Run(c)
},
},
{
name: "MedicationStatement",
delay: 2 * time.Second,
run: func(c context.Context) {
medicationstatement.NewWorker(medicationstatement.Config{
DBManager: m.db, InternalBaseURL: internalBaseURL, InternalToken: internalToken, OrganizationID: orgID,
}).Run(c)
},
},
{
name: "QuestionnaireResponse",
delay: 2 * time.Second,
run: func(c context.Context) {
questionnaireresponse.NewWorker(questionnaireresponse.Config{
DBManager: m.db, InternalBaseURL: internalBaseURL, InternalToken: internalToken, OrganizationID: orgID,
}).Run(c)
DBManager: m.db,
InternalBaseURL: internalBaseURL,
OrganizationID: orgID,
}, m).Run(c)
},
},
// {
// name: "Observation",
// delay: 2 * time.Second,
// run: func(c context.Context) {
// // TODO: Refactor this worker
// // observation.NewWorker(...).Run(c)
// },
// },
// {
// name: "Procedure",
// delay: 2 * time.Second,
// run: func(c context.Context) {
// // TODO: Refactor this worker
// // procedure.NewWorker(...).Run(c)
// },
// },
// {
// name: "AllergyIntolerance",
// delay: 2 * time.Second,
// run: func(c context.Context) {
// // TODO: Refactor this worker
// // allergyintolerance.NewWorker(...).Run(c)
// },
// },
// {
// name: "ClinicalImpression",
// delay: 2 * time.Second,
// run: func(c context.Context) {
// // TODO: Refactor this worker
// // clinicalimpression.NewWorker(...).Run(c)
// },
// },
// {
// name: "Immunization",
// delay: 2 * time.Second,
// run: func(c context.Context) {
// // TODO: Refactor this worker
// // immunization.NewWorker(...).Run(c)
// },
// },
// {
// name: "ServiceRequest (Default)",
// delay: 0,
// run: func(c context.Context) {
// servicerequest.NewDefaultWorker(servicerequest.Config{
// DBManager: m.db,
// InternalBaseURL: internalBaseURL,
// OrganizationID: orgID,
// }, m).Run(c)
// },
// },
// {
// name: "ServiceRequest (Radiology)",
// delay: 2 * time.Second,
// run: func(c context.Context) {
// servicerequest.NewRadiologyWorker(servicerequest.Config{
// DBManager: m.db,
// InternalBaseURL: internalBaseURL,
// OrganizationID: orgID,
// }, m).Run(c)
// },
// },
// {
// name: "Specimen",
// delay: 2 * time.Second,
// run: func(c context.Context) {
// // TODO: Refactor this worker
// // specimen.NewWorker(...).Run(c)
// },
// },
// {
// name: "DiagnosticReport",
// delay: 2 * time.Second,
// run: func(c context.Context) {
// // TODO: Refactor this worker
// // diagnosticreport.NewWorker(...).Run(c)
// },
// },
// {
// name: "ImagingStudy",
// delay: 2 * time.Second,
// run: func(c context.Context) {
// // The Manager 'm' now acts as the TokenManager
// imagingstudy.NewWorker(imagingstudy.Config{
// DBManager: m.db, InternalBaseURL: internalBaseURL, OrganizationID: orgID,
// }, m).Run(c)
// },
// },
// {
// name: "Composition",
// delay: 2 * time.Second,
// run: func(c context.Context) {
// // TODO: Refactor this worker
// // composition.NewWorker(...).Run(c)
// },
// },
// {
// name: "CarePlan",
// delay: 2 * time.Second,
// run: func(c context.Context) {
// // TODO: Refactor this worker
// // careplan.NewWorker(...).Run(c)
// },
// },
// {
// name: "EpisodeOfCare",
// delay: 2 * time.Second,
// run: func(c context.Context) {
// // TODO: Refactor this worker
// // episodeofcare.NewWorker(...).Run(c)
// },
// },
// {
// name: "MedicationRequest",
// delay: 2 * time.Second,
// run: func(c context.Context) {
// // TODO: Refactor this worker
// // medicationrequest.NewWorker(...).Run(c)
// },
// },
// {
// name: "MedicationDispense",
// delay: 2 * time.Second,
// run: func(c context.Context) {
// // TODO: Refactor this worker
// // medicationdispense.NewWorker(...).Run(c)
// },
// },
// {
// name: "MedicationStatement",
// delay: 2 * time.Second,
// run: func(c context.Context) {
// // TODO: Refactor this worker
// // medicationstatement.NewWorker(...).Run(c)
// },
// },
// {
// name: "QuestionnaireResponse",
// delay: 2 * time.Second,
// run: func(c context.Context) {
// // TODO: Refactor this worker
// // questionnaireresponse.NewWorker(...).Run(c)
// },
// },
}
// Eksekusi semua background worker secara tertib
// Eksekusi semua background worker secara tertib dengan delay bertingkat
go func() {
for _, job := range jobs {
// Jeda startup, dapat di-interrupt oleh Context Cancel (Shutdown System)
if job.delay > 0 {
select {
case <-ctx.Done():
return
case <-time.After(job.delay):
}
baseDelay := 10 * time.Second // Jeda 10 detik antar tiap worker untuk cegah spike di awal
for i, job := range jobs {
// Hitung delay bertingkat: (index) * baseDelay
staggeredDelay := time.Duration(i) * baseDelay
// Jika job memiliki delay statis yang lebih besar, utamakan nilai tersebut
if job.delay > staggeredDelay {
staggeredDelay = job.delay
}
wg.Add(1)
j := job // copy pointer untuk goroutine loop
j := job
d := staggeredDelay
go func() {
defer wg.Done()
if d > 0 {
select {
case <-ctx.Done():
return
case <-time.After(d):
}
}
logger.Default().Info(fmt.Sprintf("[%s WORKER] Started", j.name))
j.run(ctx)
logger.Default().Info(fmt.Sprintf("[%s WORKER] Stopped", j.name))
-387
View File
@@ -1,387 +0,0 @@
[2026-04-01 00:52:25.411] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 505.067µs | method: OPTIONS | path: /api/v1/auth/login | request_id: db872229-b7de-46a0-9506-f0038880292d | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 00:52:25.422] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 1.270639ms | method: POST | path: /api/v1/auth/login | request_id: a5a0b540-b639-4b36-b5da-b6723782118b | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 00:52:25.521] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 00:52:25.521] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 665.214µs | method: GET | path: /api/v1/auth/info | request_id: 410c6a97-b304-485c-a357-162933f8f711 | service: service-general | status: 200 | user_agent: node
[2026-04-01 00:52:30.671] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 55.632µs | method: OPTIONS | path: /api/v1/roles/pages/tree | request_id: aae35444-4928-41f0-ae52-3d851a7afe3e | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 00:52:30.683] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 00:52:30.694] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 10.576369ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: e7558826-025e-41b5-8f6a-90df29e3ec4c | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 00:52:30.695] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.227793ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: e7558826-025e-41b5-8f6a-90df29e3ec4c | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 00:52:30.695] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 12.877448ms | method: GET | path: /api/v1/roles/pages/tree | request_id: e7558826-025e-41b5-8f6a-90df29e3ec4c | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 00:52:41.414] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 00:52:41.415] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.118121ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 1f21feb7-b615-4296-a4d6-df595f9509b4 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 00:52:41.416] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 605.009µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 1f21feb7-b615-4296-a4d6-df595f9509b4 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 00:52:41.416] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.528238ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 1f21feb7-b615-4296-a4d6-df595f9509b4 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 00:52:45.234] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 00:52:45.235] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.008ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: cc1eef43-c1bb-4074-9d51-2c24cea6da84 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 00:52:45.236] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 682.656µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: cc1eef43-c1bb-4074-9d51-2c24cea6da84 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 00:52:45.236] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.686994ms | method: GET | path: /api/v1/roles/pages/tree | request_id: cc1eef43-c1bb-4074-9d51-2c24cea6da84 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 00:52:49.006] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 00:52:49.008] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.000289ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: cbfcc8b1-706a-41ba-8a62-fd296c95b990 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 00:52:49.008] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 448.751µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: cbfcc8b1-706a-41ba-8a62-fd296c95b990 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 00:52:49.008] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.278381ms | method: GET | path: /api/v1/roles/pages/tree | request_id: cbfcc8b1-706a-41ba-8a62-fd296c95b990 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 00:52:53.369] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 00:52:53.370] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 971.629µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 165f23d7-5ac4-4866-a8ea-882ff325207f | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 00:52:53.371] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 763.785µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 165f23d7-5ac4-4866-a8ea-882ff325207f | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 00:52:53.371] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.621453ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 165f23d7-5ac4-4866-a8ea-882ff325207f | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 00:53:24.184] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 00:53:24.186] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.189422ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: d3bd170f-98e7-4368-a7ca-ac5b6c4cd982 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 00:53:24.186] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 543.131µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: d3bd170f-98e7-4368-a7ca-ac5b6c4cd982 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 00:53:24.186] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.663803ms | method: GET | path: /api/v1/roles/pages/tree | request_id: d3bd170f-98e7-4368-a7ca-ac5b6c4cd982 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 00:53:42.430] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 00:53:42.431] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.292914ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 00269130-4c07-449f-b2bb-c021ee2e460f | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 00:53:42.432] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 588.209µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 00269130-4c07-449f-b2bb-c021ee2e460f | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 00:53:42.432] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 3.244843ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 00269130-4c07-449f-b2bb-c021ee2e460f | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 00:54:04.414] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 00:54:04.415] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 971.828µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: aaee2c6e-cee4-4220-b364-70e5a74e1b32 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 00:54:04.416] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 631.173µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: aaee2c6e-cee4-4220-b364-70e5a74e1b32 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 00:54:04.416] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.442861ms | method: GET | path: /api/v1/roles/pages/tree | request_id: aaee2c6e-cee4-4220-b364-70e5a74e1b32 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 00:54:07.380] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 00:54:07.381] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 943.577µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 82812262-2f94-417a-b2ff-34531b565ead | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 00:54:07.382] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 599.106µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 82812262-2f94-417a-b2ff-34531b565ead | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 00:54:07.382] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.315596ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 82812262-2f94-417a-b2ff-34531b565ead | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 00:54:24.434] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 00:54:24.435] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 911.322µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: a219e720-1988-4f4f-bc39-0e260041a43f | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 00:54:24.436] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 607.256µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: a219e720-1988-4f4f-bc39-0e260041a43f | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 00:54:24.436] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.374874ms | method: GET | path: /api/v1/roles/pages/tree | request_id: a219e720-1988-4f4f-bc39-0e260041a43f | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 00:54:27.989] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 00:54:27.990] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.119385ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: a84a401f-c301-41d6-a115-b8d1729fcf0d | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 00:54:27.990] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 487.235µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: a84a401f-c301-41d6-a115-b8d1729fcf0d | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 00:54:27.991] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.381516ms | method: GET | path: /api/v1/roles/pages/tree | request_id: a84a401f-c301-41d6-a115-b8d1729fcf0d | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 00:54:44.929] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 00:54:44.930] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.476471ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 1261984c-ebd5-47e2-8cbf-c00e98fb0704 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 00:54:44.931] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 532.962µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 1261984c-ebd5-47e2-8cbf-c00e98fb0704 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 00:54:44.931] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.919036ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 1261984c-ebd5-47e2-8cbf-c00e98fb0704 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 01:00:01.811] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 01:00:01.822] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 10.419392ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 574099f4-9c13-4ade-b8c5-5ba1bdea663e | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:00:01.824] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 2.428597ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 574099f4-9c13-4ade-b8c5-5ba1bdea663e | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:00:01.824] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 14.01941ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 574099f4-9c13-4ade-b8c5-5ba1bdea663e | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 01:00:05.827] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 01:00:05.829] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 951.835µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 4c24f071-66c4-4914-9c87-0c5be9f5a24d | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:00:05.829] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 510.972µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 4c24f071-66c4-4914-9c87-0c5be9f5a24d | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:00:05.829] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.31954ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 4c24f071-66c4-4914-9c87-0c5be9f5a24d | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 01:01:50.183] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 01:01:50.185] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.328926ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 782a7719-b972-4ed4-96b4-06bff6df1985 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:01:50.186] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 776.99µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 782a7719-b972-4ed4-96b4-06bff6df1985 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:01:50.186] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 3.097444ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 782a7719-b972-4ed4-96b4-06bff6df1985 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 01:02:09.763] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 01:02:09.764] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.166733ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b69d9147-b095-460c-8c6a-294e841a18fd | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:02:09.765] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 569.186µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b69d9147-b095-460c-8c6a-294e841a18fd | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:02:09.765] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.57605ms | method: GET | path: /api/v1/roles/pages/tree | request_id: b69d9147-b095-460c-8c6a-294e841a18fd | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 01:02:11.876] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 01:02:11.877] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.261991ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 03df8ce2-4731-4c0e-ab46-45f98d44431d | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:02:11.878] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 754.611µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 03df8ce2-4731-4c0e-ab46-45f98d44431d | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:02:11.878] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.823839ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 03df8ce2-4731-4c0e-ab46-45f98d44431d | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 01:02:15.584] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 01:02:15.586] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.0798ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 287caaaa-3040-4fd9-b702-eb3636a56634 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:02:15.586] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 596.524µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 287caaaa-3040-4fd9-b702-eb3636a56634 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:02:15.586] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.432223ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 287caaaa-3040-4fd9-b702-eb3636a56634 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 01:02:28.901] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 01:02:28.902] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 974.746µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 51749076-a918-4b1d-bd22-2cd5e0eec098 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:02:28.903] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 532.629µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 51749076-a918-4b1d-bd22-2cd5e0eec098 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:02:28.903] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.161117ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 51749076-a918-4b1d-bd22-2cd5e0eec098 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 01:02:53.705] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 01:02:53.706] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 920.223µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b9727a29-1c67-4332-b79a-0b33aa0d17d1 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:02:53.707] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 535.454µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b9727a29-1c67-4332-b79a-0b33aa0d17d1 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:02:53.707] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.315282ms | method: GET | path: /api/v1/roles/pages/tree | request_id: b9727a29-1c67-4332-b79a-0b33aa0d17d1 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 01:03:04.851] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 01:03:04.852] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.252154ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b8072737-660c-4224-aef8-993b885d3ef5 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:03:04.853] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 487.313µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b8072737-660c-4224-aef8-993b885d3ef5 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:03:04.853] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.53503ms | method: GET | path: /api/v1/roles/pages/tree | request_id: b8072737-660c-4224-aef8-993b885d3ef5 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 01:05:45.310] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 01:05:45.319] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 8.439389ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 33cd4d9f-43ca-4f92-8941-e57443550e8a | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:05:45.321] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.497818ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 33cd4d9f-43ca-4f92-8941-e57443550e8a | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:05:45.321] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 11.362958ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 33cd4d9f-43ca-4f92-8941-e57443550e8a | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 01:06:59.694] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.150.106 | latency: 1.582098ms | method: GET | path: /api/v1/roles/pages | query: filter | request_id: a313a643-bda5-4c1a-9570-04edb03cfd16 | service: service-general | status: 401 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-01 01:08:01.021] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.150.106 | latency: 684.654µs | method: GET | path: /api/v1/roles/pages | query: filter | request_id: bf9bae9b-2b57-4d5d-a0ae-b312d2ebd7e7 | service: service-general | status: 401 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-01 01:08:06.567] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.150.106 | latency: 650.357µs | method: GET | path: /api/v1/roles/pages/tree/level/1 | request_id: c2e23ff0-1cad-4285-8ecf-9408a173e75f | service: service-general | status: 401 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-01 01:08:13.542] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.150.106 | latency: 442.829µs | method: POST | path: /api/v1/auth/login | request_id: 44ae713e-8266-414b-9215-ecd24b575e5c | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-01 01:08:39.545] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.150.106 | latency: 749.44µs | method: POST | path: /api/v1/auth/refresh | request_id: 6e4d39c1-23bb-4b65-ada9-edcfad57a02c | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-01 01:08:52.038] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.150.106 | latency: 955.999µs | method: POST | path: /api/v1/auth/refresh | request_id: e0458175-1afd-424d-933c-79a248b74609 | service: service-general | status: 401 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-01 01:22:22.293] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 01:22:22.302] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 9.395976ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 00794bf5-4a04-4fa4-8b51-3d6565bf7c71 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:22:22.304] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.177606ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 00794bf5-4a04-4fa4-8b51-3d6565bf7c71 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:22:22.304] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 11.741677ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 00794bf5-4a04-4fa4-8b51-3d6565bf7c71 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 01:22:22.646] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 01:22:22.647] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 848.183µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 0f114c13-bbfe-479f-bfef-e1710647f461 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:22:22.648] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 913.571µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 0f114c13-bbfe-479f-bfef-e1710647f461 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:22:22.648] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.755395ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 0f114c13-bbfe-479f-bfef-e1710647f461 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 01:25:21.365] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 01:25:21.366] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.057279ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 8b0edde0-967f-46e1-9a00-ea2de6033374 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:25:21.367] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 522.859µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 8b0edde0-967f-46e1-9a00-ea2de6033374 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:25:21.367] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.737485ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 8b0edde0-967f-46e1-9a00-ea2de6033374 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 01:25:29.196] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 01:25:29.198] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.844386ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: baf63382-6b4e-4f44-8821-63ae17666f37 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:25:29.199] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.268989ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: baf63382-6b4e-4f44-8821-63ae17666f37 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:25:29.200] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 4.321924ms | method: GET | path: /api/v1/roles/pages/tree | request_id: baf63382-6b4e-4f44-8821-63ae17666f37 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 01:25:31.600] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 01:25:31.601] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.002401ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 99a649b5-cfbe-4472-9b24-34c17564852c | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:25:31.602] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 573.248µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 99a649b5-cfbe-4472-9b24-34c17564852c | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:25:31.602] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.489312ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 99a649b5-cfbe-4472-9b24-34c17564852c | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 01:25:39.255] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 01:25:39.256] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.089155ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 725413de-12b3-4aea-9782-44621204af4a | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:25:39.257] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 705.683µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 725413de-12b3-4aea-9782-44621204af4a | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:25:39.257] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.75249ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 725413de-12b3-4aea-9782-44621204af4a | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 01:29:49.456] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 01:29:49.467] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 10.964189ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 4d5baa28-411c-4488-a472-510bbe382700 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:29:49.468] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.381439ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 4d5baa28-411c-4488-a472-510bbe382700 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:29:49.469] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 13.411298ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 4d5baa28-411c-4488-a472-510bbe382700 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 01:30:01.628] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 01:30:01.630] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.178795ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 383a86ab-87da-4334-9ee3-85ede0fa3a90 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:30:01.631] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 759.089µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 383a86ab-87da-4334-9ee3-85ede0fa3a90 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:30:01.631] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 3.030896ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 383a86ab-87da-4334-9ee3-85ede0fa3a90 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 01:30:36.515] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 01:30:36.517] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.20456ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 5f0f50e1-5f1b-44b6-baab-56f41f41ecec | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:30:36.517] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 731.089µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 5f0f50e1-5f1b-44b6-baab-56f41f41ecec | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:30:36.518] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.870552ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 5f0f50e1-5f1b-44b6-baab-56f41f41ecec | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 01:32:45.459] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 01:32:45.462] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 2.706501ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b1e7a158-6c98-422d-aba4-4cc7028433ad | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:32:45.462] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 553.955µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b1e7a158-6c98-422d-aba4-4cc7028433ad | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:32:45.463] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 4.230911ms | method: GET | path: /api/v1/roles/pages/tree | request_id: b1e7a158-6c98-422d-aba4-4cc7028433ad | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 01:39:14.924] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 01:39:14.933] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 9.555005ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: f361676f-70e8-4b7e-8cc0-af07fd12f1b6 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:39:14.934] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 875.843µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: f361676f-70e8-4b7e-8cc0-af07fd12f1b6 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:39:14.934] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 11.58442ms | method: GET | path: /api/v1/roles/pages/tree | request_id: f361676f-70e8-4b7e-8cc0-af07fd12f1b6 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 01:39:19.831] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 350.548µs | method: GET | path: /api/v1/roles/pages/tree | request_id: f939432c-75ac-4fcd-9efa-66b71e137dfb | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 01:42:25.134] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 01:42:25.135] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.017251ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: fcf314a7-2094-4171-bfe8-1f0e11430cd4 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:42:25.135] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 491.236µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: fcf314a7-2094-4171-bfe8-1f0e11430cd4 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:42:25.136] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.679881ms | method: GET | path: /api/v1/roles/pages/tree | request_id: fcf314a7-2094-4171-bfe8-1f0e11430cd4 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 01:42:25.454] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 01:42:25.455] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 942.876µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 90cc0f95-43a8-42ed-923e-ca9530e12623 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:42:25.456] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 727.02µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 90cc0f95-43a8-42ed-923e-ca9530e12623 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 01:42:25.456] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.553897ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 90cc0f95-43a8-42ed-923e-ca9530e12623 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 04:13:30.650] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 92.105µs | method: OPTIONS | path: /api/v1/auth/login | request_id: 6c59671e-d8f8-4d17-8c73-d723dc8c7061 | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 04:13:30.659] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 1.699838ms | method: POST | path: /api/v1/auth/login | request_id: afbbff38-fbd6-44e2-97d7-d7a0340a5ae8 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 04:13:30.781] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 04:13:30.781] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 604.288µs | method: GET | path: /api/v1/auth/info | request_id: e1608461-fe87-4eb0-a93f-66534ef92e0c | service: service-general | status: 200 | user_agent: node
[2026-04-01 04:13:35.202] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 51.193µs | method: OPTIONS | path: /api/v1/roles/pages/tree | request_id: cee36795-baff-412f-b546-04088cba454e | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 04:13:35.208] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 04:13:35.217] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 8.612224ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 270bb094-0cea-4154-8844-09b041073463 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 04:13:35.219] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.205433ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 270bb094-0cea-4154-8844-09b041073463 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 04:13:35.219] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 10.765816ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 270bb094-0cea-4154-8844-09b041073463 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 04:38:05.570] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 565.963µs | method: POST | path: /api/v1/auth/login | request_id: be77df63-bdb3-4523-8ffb-a5f1fc230c80 | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 04:38:08.759] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 501.319µs | method: POST | path: /api/v1/auth/login | request_id: e147cb67-50ab-47e5-a8bb-93cc35d301be | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 04:38:09.188] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 498.352µs | method: POST | path: /api/v1/auth/login | request_id: 15f7afae-4110-4f2b-a3f1-6059ebc57c2c | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 04:38:09.374] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 454.139µs | method: POST | path: /api/v1/auth/login | request_id: 171a0580-4a63-4516-8f36-b55b2ab179db | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 06:50:14.105] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 66.559µs | method: OPTIONS | path: /api/v1/auth/login | request_id: f0fc9c89-5ef4-429a-93ea-4392f2d213c8 | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 06:50:14.114] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 1.611074ms | method: POST | path: /api/v1/auth/login | request_id: 98353689-1d28-465a-b28e-bd4cb3bb289d | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 06:50:26.824] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 450.331µs | method: POST | path: /api/v1/auth/login | request_id: def976f2-de5d-4c07-8dd6-0a89b9bea239 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 06:50:35.049] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 477.509µs | method: POST | path: /api/v1/auth/login | request_id: 991402e8-3e81-48ce-b5c3-3d5b9316b520 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 06:52:14.261] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 993.531µs | method: POST | path: /api/v1/auth/login | request_id: 9112fdf4-01c2-4d2d-83ac-dd0f7aff8a99 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 06:52:19.324] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 504.706µs | method: POST | path: /api/v1/auth/login | request_id: b2da5f26-8701-4484-b031-54ee1e7444ac | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 06:56:42.486] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 541.065µs | method: POST | path: /api/v1/auth/login | request_id: f222d489-ebe6-4fab-ad62-8f1e6ef14a39 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 06:56:42.562] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 06:56:42.562] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 604.844µs | method: GET | path: /api/v1/auth/info | request_id: 1118a14a-bd7b-461c-afc6-340edcb4bab4 | service: service-general | status: 200 | user_agent: node
[2026-04-01 06:56:48.552] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 64.406µs | method: OPTIONS | path: /api/v1/roles/pages/tree | request_id: 7b49ba96-a681-48b6-9002-85299e16e0d8 | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 06:56:48.558] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 06:56:48.571] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 12.371708ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 7dd94ec1-8885-4fd0-b60c-8299b8df7467 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 06:56:48.574] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 3.408744ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 7dd94ec1-8885-4fd0-b60c-8299b8df7467 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 06:56:48.574] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 16.767753ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 7dd94ec1-8885-4fd0-b60c-8299b8df7467 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:11:46.158] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 680.212µs | method: GET | path: /api/v1/roles/pages | query: filter | request_id: b2224960-16fc-4244-877a-ed434c21604f | service: service-general | status: 401 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-01 07:11:52.820] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 437.625µs | method: POST | path: /api/v1/auth/login | request_id: aeb51a77-e255-45c4-8439-28245aca5b9b | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-01 07:11:56.558] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:11:56.567] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 9.012174ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 8519d24d-751e-4ce3-9bda-ee2d6735c760 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:11:56.569] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.366826ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 8519d24d-751e-4ce3-9bda-ee2d6735c760 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:11:56.569] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 11.322346ms | method: GET | path: /api/v1/roles/pages | query: filter | request_id: 8519d24d-751e-4ce3-9bda-ee2d6735c760 | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-01 07:12:03.836] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:12:03.837] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.207693ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 2845035d-371c-4a2f-a7ee-78359bbdb2de | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:12:03.838] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 669.462µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 2845035d-371c-4a2f-a7ee-78359bbdb2de | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:12:03.838] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.965792ms | method: GET | path: /api/v1/roles/pages | query: filter=detail | request_id: 2845035d-371c-4a2f-a7ee-78359bbdb2de | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-01 07:15:22.538] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 82.241µs | method: OPTIONS | path: /api/v1/roles/pages | query: filter= | request_id: ae6b4bdc-29f3-4f65-89f2-c20e30be726c | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:15:22.546] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:15:22.547] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 886.295µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: dc56c225-5d38-4b51-8a91-61c5e5ee0d4c | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:15:22.548] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 563.977µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: dc56c225-5d38-4b51-8a91-61c5e5ee0d4c | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:15:22.548] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.428999ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: dc56c225-5d38-4b51-8a91-61c5e5ee0d4c | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:15:24.787] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 36.61µs | method: OPTIONS | path: /api/v1/roles/pages | query: filter=de | request_id: 0f2a4f69-d2ff-4525-a06d-fc144f6b1cd1 | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:15:24.804] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:15:24.806] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.294546ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: d2dd4dfc-941b-4af8-ac7d-28c01a80cd5c | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:15:24.806] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 536.816µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: d2dd4dfc-941b-4af8-ac7d-28c01a80cd5c | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:15:24.807] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.75064ms | method: GET | path: /api/v1/roles/pages | query: filter=de | request_id: d2dd4dfc-941b-4af8-ac7d-28c01a80cd5c | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:15:25.224] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 32.548µs | method: OPTIONS | path: /api/v1/roles/pages | query: filter=deta | request_id: 366557a5-7c1f-4988-aad1-16f634ace836 | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:15:25.235] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:15:25.236] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 665.927µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 5e7b4332-3fc1-43bb-bd63-7a55cf2e65ae | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:15:25.236] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 333.411µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 5e7b4332-3fc1-43bb-bd63-7a55cf2e65ae | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:15:25.236] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 1.733416ms | method: GET | path: /api/v1/roles/pages | query: filter=deta | request_id: 5e7b4332-3fc1-43bb-bd63-7a55cf2e65ae | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:15:26.397] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 29.975µs | method: OPTIONS | path: /api/v1/roles/pages | query: filter=detail | request_id: df2d5b4f-6d10-48c2-83af-36c0deb71e2b | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:15:26.435] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:15:26.474] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 39.314794ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 0ccae3ce-42bc-4d2b-a96f-4d1257e4ed41 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:15:26.494] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 19.538248ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 0ccae3ce-42bc-4d2b-a96f-4d1257e4ed41 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:15:26.494] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 59.77807ms | method: GET | path: /api/v1/roles/pages | query: filter=detail | request_id: 0ccae3ce-42bc-4d2b-a96f-4d1257e4ed41 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:15:29.093] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 28.723µs | method: OPTIONS | path: /api/v1/roles/pages | query: filter=Dashboard+Coba | request_id: 23313a39-e239-4696-aa1b-f5690f522ea3 | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:15:29.111] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:15:29.120] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 9.224327ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: fa2aba50-b66e-4931-81fc-4a3dfb557085 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:15:29.127] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 6.099431ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: fa2aba50-b66e-4931-81fc-4a3dfb557085 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:15:29.127] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 16.011659ms | method: GET | path: /api/v1/roles/pages | query: filter=Dashboard+Coba | request_id: fa2aba50-b66e-4931-81fc-4a3dfb557085 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:15:37.655] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 61.618µs | method: OPTIONS | path: /api/v1/roles/pages | query: filter=Detail+Tiket+Coba | request_id: 54bd243d-444a-4b5c-a839-d4e7279b866a | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:15:37.662] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:15:37.663] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 733.252µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: ca1a7f19-a5c3-41b8-8ee6-f0dfcdaa8c42 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:15:37.663] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 351.116µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: ca1a7f19-a5c3-41b8-8ee6-f0dfcdaa8c42 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:15:37.663] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 1.960216ms | method: GET | path: /api/v1/roles/pages | query: filter=Detail+Tiket+Coba | request_id: ca1a7f19-a5c3-41b8-8ee6-f0dfcdaa8c42 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:15:42.674] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:15:42.675] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.171815ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: adf912e0-37ae-4774-9711-9512d1dc7032 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:15:42.676] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 632.69µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: adf912e0-37ae-4774-9711-9512d1dc7032 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:15:42.676] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.82657ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: adf912e0-37ae-4774-9711-9512d1dc7032 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:15:44.827] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:15:44.829] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.022474ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 2779939a-151b-43a8-b8bf-08675070109a | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:15:44.829] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 303.546µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 2779939a-151b-43a8-b8bf-08675070109a | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:15:44.829] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.176002ms | method: GET | path: /api/v1/roles/pages | query: filter=de | request_id: 2779939a-151b-43a8-b8bf-08675070109a | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:15:47.577] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:15:47.578] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.200353ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: fa1390b1-491f-4690-bdf9-8d15af47272d | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:15:47.579] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 819.36µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: fa1390b1-491f-4690-bdf9-8d15af47272d | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:15:47.579] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.877344ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: fa1390b1-491f-4690-bdf9-8d15af47272d | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:16:08.108] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:16:08.110] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.180613ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: d0ea108b-3dc2-4522-9c77-be7eeb53adf3 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:16:08.110] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 656.857µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: d0ea108b-3dc2-4522-9c77-be7eeb53adf3 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:16:08.111] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 3.173892ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: d0ea108b-3dc2-4522-9c77-be7eeb53adf3 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:16:13.393] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 28.016µs | method: OPTIONS | path: /api/v1/roles/pages | query: filter=ma | request_id: 2c9ccd09-1509-4abc-8fb0-85a7b41873cc | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:16:13.400] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:16:13.402] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.003987ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: a11c9894-8db4-4dbb-873f-f52819628fa2 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:16:13.402] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 418.074µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: a11c9894-8db4-4dbb-873f-f52819628fa2 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:16:13.402] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.310748ms | method: GET | path: /api/v1/roles/pages | query: filter=ma | request_id: a11c9894-8db4-4dbb-873f-f52819628fa2 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:16:14.683] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 32.888µs | method: OPTIONS | path: /api/v1/roles/pages | query: filter=mana | request_id: 163617c6-0a88-415d-b653-61fcd9824ba7 | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:16:14.692] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:16:14.693] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 765.58µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: d684aa23-0a21-491f-a2c7-7ead3c2284ed | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:16:14.693] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 414.699µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: d684aa23-0a21-491f-a2c7-7ead3c2284ed | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:16:14.693] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.050677ms | method: GET | path: /api/v1/roles/pages | query: filter=mana | request_id: d684aa23-0a21-491f-a2c7-7ead3c2284ed | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:16:16.937] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 29.719µs | method: OPTIONS | path: /api/v1/roles/pages | query: filter=manajemen | request_id: 03224291-2b23-412b-8d2f-99b6638d309e | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:16:16.953] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:16:16.954] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.173751ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 0516203c-cab5-48a5-884b-03ac3459e1b4 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:16:16.955] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 871.792µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 0516203c-cab5-48a5-884b-03ac3459e1b4 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:16:16.955] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.838405ms | method: GET | path: /api/v1/roles/pages | query: filter=manajemen | request_id: 0516203c-cab5-48a5-884b-03ac3459e1b4 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:16:19.659] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:16:19.660] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.058111ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 8ce8c9c9-2480-4062-8449-957d8ba1f100 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:16:19.661] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 586.269µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 8ce8c9c9-2480-4062-8449-957d8ba1f100 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:16:19.661] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.57294ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 8ce8c9c9-2480-4062-8449-957d8ba1f100 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:16:21.836] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 25.254µs | method: OPTIONS | path: /api/v1/roles/pages | query: filter=Manajemen+Pengguna | request_id: 40c89f3b-e4c6-42bd-ae26-b11383e3b3c6 | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:16:21.847] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:16:21.848] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 986.701µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: d0bd3d3f-e657-4bca-860f-6b20a5516c84 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:16:21.849] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 576.031µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: d0bd3d3f-e657-4bca-860f-6b20a5516c84 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:16:21.849] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.685518ms | method: GET | path: /api/v1/roles/pages | query: filter=Manajemen+Pengguna | request_id: d0bd3d3f-e657-4bca-860f-6b20a5516c84 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:16:29.592] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:16:29.593] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 805.223µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: a8b82c0e-7235-4325-b0e6-7f41e4c2cea7 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:16:29.593] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 458.838µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: a8b82c0e-7235-4325-b0e6-7f41e4c2cea7 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:16:29.593] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.349722ms | method: GET | path: /api/v1/roles/pages | query: filter=Manajemen+Pengguna | request_id: a8b82c0e-7235-4325-b0e6-7f41e4c2cea7 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:18:34.112] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:18:34.120] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 8.563695ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b41e1770-8cfd-4189-84c0-a9960c9f11d9 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:18:34.121] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 993.424µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b41e1770-8cfd-4189-84c0-a9960c9f11d9 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:18:34.122] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 10.675342ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: b41e1770-8cfd-4189-84c0-a9960c9f11d9 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:18:35.619] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:18:35.620] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.103012ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b309579d-0195-48b8-8da4-605da5887576 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:18:35.621] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 645.108µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b309579d-0195-48b8-8da4-605da5887576 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:18:35.621] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.812975ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: b309579d-0195-48b8-8da4-605da5887576 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:25:48.447] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:25:48.455] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 8.419609ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: a56c5b82-8caf-497a-8c08-46c9f99d8998 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:25:48.456] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.116097ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: a56c5b82-8caf-497a-8c08-46c9f99d8998 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:25:48.457] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 10.647596ms | method: GET | path: /api/v1/roles/pages/tree | request_id: a56c5b82-8caf-497a-8c08-46c9f99d8998 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:26:01.499] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:26:01.500] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.232875ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 173a9b14-99cc-40dd-ab17-222e7e95e235 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:26:01.501] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 559.507µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 173a9b14-99cc-40dd-ab17-222e7e95e235 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:26:01.501] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.67899ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 173a9b14-99cc-40dd-ab17-222e7e95e235 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:26:10.169] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:26:10.170] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 917.861µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 26ac8aa8-6720-4e63-8b97-40aa7f0f55f9 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:26:10.171] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 570.235µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 26ac8aa8-6720-4e63-8b97-40aa7f0f55f9 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:26:10.171] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.439684ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 26ac8aa8-6720-4e63-8b97-40aa7f0f55f9 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:26:15.246] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:26:15.248] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.204083ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 5075ba3b-9745-40c3-831a-06314bff6903 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:26:15.248] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 445.466µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 5075ba3b-9745-40c3-831a-06314bff6903 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:26:15.248] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.491486ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 5075ba3b-9745-40c3-831a-06314bff6903 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:26:45.274] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:26:45.276] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.04478ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: ef0ea051-c9c9-4b35-90e5-64642849407a | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:26:45.277] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.01859ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: ef0ea051-c9c9-4b35-90e5-64642849407a | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:26:45.277] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 3.077831ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: ef0ea051-c9c9-4b35-90e5-64642849407a | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:26:46.699] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:26:46.700] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 959.144µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 8b371a01-2981-4c44-b1ec-1c2c5b401d33 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:26:46.701] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 507.086µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 8b371a01-2981-4c44-b1ec-1c2c5b401d33 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:26:46.701] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.3536ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 8b371a01-2981-4c44-b1ec-1c2c5b401d33 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:26:48.109] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:26:48.110] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 919.723µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b996d767-4af4-4b3f-80d4-e8457720758c | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:26:48.110] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 389.435µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b996d767-4af4-4b3f-80d4-e8457720758c | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:26:48.110] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.2591ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: b996d767-4af4-4b3f-80d4-e8457720758c | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:29:49.864] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:29:49.865] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 964.365µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: f205f775-773f-4408-802f-43f093f528b0 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:29:49.868] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 3.479188ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: f205f775-773f-4408-802f-43f093f528b0 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:29:49.869] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 5.593717ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: f205f775-773f-4408-802f-43f093f528b0 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:29:54.614] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:29:54.615] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.367159ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: f5dfe169-49ea-485f-a653-ff88f11d8113 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:29:54.616] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 465.394µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: f5dfe169-49ea-485f-a653-ff88f11d8113 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:29:54.616] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.746253ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: f5dfe169-49ea-485f-a653-ff88f11d8113 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:33:11.568] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:33:11.577] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 8.694158ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 1fc3eb63-12d7-475f-9b3a-9a723c0e8bc2 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:33:11.578] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 917.247µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 1fc3eb63-12d7-475f-9b3a-9a723c0e8bc2 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:33:11.578] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 10.733919ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 1fc3eb63-12d7-475f-9b3a-9a723c0e8bc2 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:33:49.631] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:33:49.633] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.199388ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 3488197f-e6da-46d7-8b25-0430ba3b3bdc | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:33:49.633] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 438.364µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 3488197f-e6da-46d7-8b25-0430ba3b3bdc | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:33:49.633] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.538462ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 3488197f-e6da-46d7-8b25-0430ba3b3bdc | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:33:52.975] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:33:52.977] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.493844ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: ce0cf8ca-a13f-4455-9e00-40d2230b4322 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:33:52.978] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 613.242µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: ce0cf8ca-a13f-4455-9e00-40d2230b4322 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:33:52.978] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.823121ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: ce0cf8ca-a13f-4455-9e00-40d2230b4322 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:44:47.320] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:44:47.329] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 8.444916ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: d69a27ad-26e8-4d5a-aa35-44c2e5430568 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:44:47.329] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 723.5µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: d69a27ad-26e8-4d5a-aa35-44c2e5430568 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:44:47.329] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 10.09819ms | method: GET | path: /api/v1/roles/pages/tree | request_id: d69a27ad-26e8-4d5a-aa35-44c2e5430568 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:47:45.467] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:47:45.468] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.412536ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 290cf1f8-6faf-423f-8c2a-bde47d0c14a1 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:47:45.470] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.435517ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 290cf1f8-6faf-423f-8c2a-bde47d0c14a1 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:47:45.470] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 4.175997ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 290cf1f8-6faf-423f-8c2a-bde47d0c14a1 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:47:47.980] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:47:47.981] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.278235ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 9e60d897-4ae4-4c3a-8fc2-9323b95de60e | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:47:47.982] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 665.84µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 9e60d897-4ae4-4c3a-8fc2-9323b95de60e | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:47:47.982] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.650865ms | method: GET | path: /api/v1/roles/pages | query: filter=Detail+Tiket+Coba | request_id: 9e60d897-4ae4-4c3a-8fc2-9323b95de60e | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:47:52.929] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:47:52.930] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.240802ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 3fff4388-9bf1-4f82-950b-3ab84d21254d | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:47:52.931] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 489.743µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 3fff4388-9bf1-4f82-950b-3ab84d21254d | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:47:52.931] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.594496ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 3fff4388-9bf1-4f82-950b-3ab84d21254d | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:47:57.850] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:47:57.851] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.049913ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: ef987a9b-b443-4764-bd96-5c7cb28b0635 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:47:57.852] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 616.861µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: ef987a9b-b443-4764-bd96-5c7cb28b0635 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:47:57.852] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.594834ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: ef987a9b-b443-4764-bd96-5c7cb28b0635 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:48:00.633] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 27.022µs | method: OPTIONS | path: /api/v1/roles/pages | query: filter=Index+Coba | request_id: 3a684840-2828-4733-8066-9bf60f610c35 | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:48:00.643] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 07:48:00.644] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.079629ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 1049a845-d13e-439d-82f6-167a1726a02c | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 07:48:00.645] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 738.474µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 1049a845-d13e-439d-82f6-167a1726a02c | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 07:48:00.645] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.677184ms | method: GET | path: /api/v1/roles/pages | query: filter=Index+Coba | request_id: 1049a845-d13e-439d-82f6-167a1726a02c | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:58:32.594] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 773.641µs | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 8d2ca9ff-7bf9-4910-aa0e-91574cba1c86 | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 07:58:37.874] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 510.877µs | method: GET | path: /api/v1/roles/pages/tree | request_id: 38e6bf04-6be3-42fc-8072-5e14b0cd635e | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 08:01:12.294] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 881.902µs | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 31368d93-9ab1-423c-bce8-b9830e884dd7 | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 08:01:15.829] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 624.733µs | method: GET | path: /api/v1/roles/pages/tree | request_id: 8ae603c1-a7ca-4ddc-9884-659048e7dcee | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 08:06:37.166] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 463.025µs | method: POST | path: /api/v1/auth/login | request_id: 533d3028-5d40-4510-875d-0e95b07806dd | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 08:06:37.277] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 08:06:37.277] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 935.439µs | method: GET | path: /api/v1/auth/info | request_id: b94f6704-7f1f-4329-9414-e338a2caa14a | service: service-general | status: 200 | user_agent: node
[2026-04-01 08:06:41.742] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 08:06:41.752] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 10.135621ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 690a0bb0-3a3d-49a3-b87b-e6cc28309673 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 08:06:41.753] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.029548ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 690a0bb0-3a3d-49a3-b87b-e6cc28309673 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 08:06:41.753] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 11.978761ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 690a0bb0-3a3d-49a3-b87b-e6cc28309673 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 08:07:12.333] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 08:07:12.334] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.049495ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 971eaa97-625a-492d-88f0-6d2055cdb05d | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 08:07:12.335] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 613.965µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 971eaa97-625a-492d-88f0-6d2055cdb05d | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 08:07:12.335] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.847943ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 971eaa97-625a-492d-88f0-6d2055cdb05d | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 08:07:29.713] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 08:07:29.714] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.200405ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: adbc5de4-5354-4620-b96f-deaeeaefb942 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 08:07:29.715] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 497.619µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: adbc5de4-5354-4620-b96f-deaeeaefb942 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 08:07:29.715] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.464567ms | method: GET | path: /api/v1/roles/pages/tree | request_id: adbc5de4-5354-4620-b96f-deaeeaefb942 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 08:07:47.019] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 08:07:47.020] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.016123ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 22432ea2-6fba-4fcd-998e-58af3d5cb4e9 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 08:07:47.021] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 649.656µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 22432ea2-6fba-4fcd-998e-58af3d5cb4e9 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 08:07:47.021] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.576025ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 22432ea2-6fba-4fcd-998e-58af3d5cb4e9 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 08:08:00.401] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 08:08:00.402] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.033894ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: ad46e33a-2b90-4088-8a26-8710845cb9a2 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 08:08:00.403] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 523.011µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: ad46e33a-2b90-4088-8a26-8710845cb9a2 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 08:08:00.403] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.262208ms | method: GET | path: /api/v1/roles/pages/tree | request_id: ad46e33a-2b90-4088-8a26-8710845cb9a2 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 08:09:23.005] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 08:09:23.007] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.553563ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: d2f1d33c-fef5-481e-bfb9-4cfe75df9dcb | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 08:09:23.008] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 907.716µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: d2f1d33c-fef5-481e-bfb9-4cfe75df9dcb | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 08:09:23.008] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 3.505402ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: d2f1d33c-fef5-481e-bfb9-4cfe75df9dcb | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 08:09:24.833] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 08:09:24.834] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 909.239µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 08669315-52ee-47fe-9134-928bd20fdcef | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 08:09:24.835] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 470.453µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 08669315-52ee-47fe-9134-928bd20fdcef | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 08:09:24.835] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.215242ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 08669315-52ee-47fe-9134-928bd20fdcef | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 08:09:29.097] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 08:09:29.098] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.135229ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 825f2322-4653-419a-b86b-5b86791afe41 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 08:09:29.099] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 610.781µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 825f2322-4653-419a-b86b-5b86791afe41 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 08:09:29.099] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 2.567147ms | method: GET | path: /api/v1/roles/pages | query: filter=Index+Coba | request_id: 825f2322-4653-419a-b86b-5b86791afe41 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-01 08:13:14.371] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-01 08:13:14.382] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 11.103093ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 3986e601-4f0f-4f21-b90d-9cac5d977d7d | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-01 08:13:14.383] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 965.33µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 3986e601-4f0f-4f21-b90d-9cac5d977d7d | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-01 08:13:14.383] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.245 | latency: 12.961508ms | method: GET | path: /api/v1/roles/pages | query: filter=Index+Coba | request_id: 3986e601-4f0f-4f21-b90d-9cac5d977d7d | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
-712
View File
@@ -1,712 +0,0 @@
[2026-04-02 00:48:25.935] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 1.415573ms | method: OPTIONS | path: /api/v1/auth/login | request_id: 38e6c7e0-928d-4233-9b60-c3fbe06678eb | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 00:48:25.949] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 4.293602ms | method: POST | path: /api/v1/auth/login | request_id: 68de5f52-b7bf-40da-8e46-9d702c402bc9 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 00:48:26.110] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 00:48:26.110] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 1.387688ms | method: GET | path: /api/v1/auth/info | request_id: 253aec1b-3f53-4a54-a971-1f31db2473d1 | service: service-general | status: 200 | user_agent: node
[2026-04-02 00:48:32.414] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 46.424µs | method: OPTIONS | path: /api/v1/roles/pages/tree | request_id: 58405906-3ead-4fa5-b8db-bb229a9d4dea | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 00:48:32.423] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 00:48:32.435] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 11.854163ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 18158fe3-dfa1-4983-9151-0b62d47ce96c | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 00:48:32.436] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.165966ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 18158fe3-dfa1-4983-9151-0b62d47ce96c | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 00:48:32.437] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 14.621111ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 18158fe3-dfa1-4983-9151-0b62d47ce96c | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 00:53:26.107] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 00:53:26.109] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.770201ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: eecec8d7-7c95-475e-89e9-da615c593033 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 00:53:26.110] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 499.49µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: eecec8d7-7c95-475e-89e9-da615c593033 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 00:53:26.110] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 3.319682ms | method: GET | path: /api/v1/roles/pages/tree | request_id: eecec8d7-7c95-475e-89e9-da615c593033 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:09:26.143] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:09:26.153] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 10.47284ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 8847e110-27df-4287-9305-ead879466395 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:09:26.155] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.721835ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 8847e110-27df-4287-9305-ead879466395 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:09:26.155] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 13.2225ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 8847e110-27df-4287-9305-ead879466395 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:09:51.106] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:09:51.107] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 998.273µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: aaf55a16-3d67-4159-8371-ce0fb591c7bc | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:09:51.108] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 885.643µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: aaf55a16-3d67-4159-8371-ce0fb591c7bc | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:09:51.108] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.740674ms | method: GET | path: /api/v1/roles/pages/tree | request_id: aaf55a16-3d67-4159-8371-ce0fb591c7bc | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:09:57.925] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:09:57.927] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.576375ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 00c4fde6-74ec-4cd5-86fe-f2b6187290cd | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:09:57.928] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 604.651µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 00c4fde6-74ec-4cd5-86fe-f2b6187290cd | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:09:57.928] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 3.068604ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 00c4fde6-74ec-4cd5-86fe-f2b6187290cd | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:10:35.323] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 28.45µs | method: OPTIONS | path: /api/v1/roles/pages | query: filter= | request_id: 33c682ff-d38e-47ed-a502-3936c452e034 | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:10:35.337] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:10:35.338] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.364565ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: a2864f20-52dc-41ea-bcb1-b18248d6ad2a | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:10:35.340] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.477725ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: a2864f20-52dc-41ea-bcb1-b18248d6ad2a | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 01:10:35.340] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 3.985366ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: a2864f20-52dc-41ea-bcb1-b18248d6ad2a | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:11:37.231] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:11:37.232] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.053804ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 2bcaad48-5d50-4f7a-b7af-b53b8ab9cd86 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:11:37.233] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.032191ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 2bcaad48-5d50-4f7a-b7af-b53b8ab9cd86 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 01:11:37.233] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.884539ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 2bcaad48-5d50-4f7a-b7af-b53b8ab9cd86 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:11:54.395] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:11:54.396] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 973.676µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: a7f8880f-526e-4649-813b-98da84b39f1f | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:11:54.397] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 672.644µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: a7f8880f-526e-4649-813b-98da84b39f1f | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 01:11:54.397] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.66833ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: a7f8880f-526e-4649-813b-98da84b39f1f | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:20:00.816] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:20:00.828] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 11.812829ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 22dcd158-4610-4b73-a672-e1d41ae483ca | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:20:00.830] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.376175ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 22dcd158-4610-4b73-a672-e1d41ae483ca | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 01:20:00.830] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 14.448331ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 22dcd158-4610-4b73-a672-e1d41ae483ca | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:24:55.909] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:24:55.910] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.255248ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: d174be85-3fb5-45be-ae3c-79e1d6450e61 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:24:55.911] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.234105ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: d174be85-3fb5-45be-ae3c-79e1d6450e61 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:24:55.912] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 3.627746ms | method: GET | path: /api/v1/roles/pages/tree | request_id: d174be85-3fb5-45be-ae3c-79e1d6450e61 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:24:56.149] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:24:56.149] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 497.789µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: f1b432c4-8cce-40b8-8110-dcdb435e2520 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:24:56.150] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 391.943µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: f1b432c4-8cce-40b8-8110-dcdb435e2520 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:24:56.150] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 1.808794ms | method: GET | path: /api/v1/roles/pages/tree | request_id: f1b432c4-8cce-40b8-8110-dcdb435e2520 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:25:48.805] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:25:48.814] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 8.41956ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 99baf903-521d-410b-9890-a65d0cea2dd9 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:25:48.816] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.987569ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 99baf903-521d-410b-9890-a65d0cea2dd9 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 01:25:48.816] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 11.197939ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 99baf903-521d-410b-9890-a65d0cea2dd9 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:26:40.200] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:26:40.201] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.068285ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 79c301f1-657d-41e9-b66d-3d219f2ee500 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:26:40.202] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.008714ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 79c301f1-657d-41e9-b66d-3d219f2ee500 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:26:40.202] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 3.291872ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 79c301f1-657d-41e9-b66d-3d219f2ee500 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:28:35.762] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:28:35.764] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.110469ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 8603af62-0836-493d-a43b-2f1f814dd63d | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:28:35.765] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 971.467µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 8603af62-0836-493d-a43b-2f1f814dd63d | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:28:35.765] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 3.20869ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 8603af62-0836-493d-a43b-2f1f814dd63d | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:28:36.087] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:28:36.089] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 980.205µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 9abb6732-2ab1-4533-bb94-f21e90ed99ce | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:28:36.090] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.079005ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 9abb6732-2ab1-4533-bb94-f21e90ed99ce | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:28:36.090] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.866428ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 9abb6732-2ab1-4533-bb94-f21e90ed99ce | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:29:26.122] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:29:26.123] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 953.231µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 961eb7d8-3990-46ba-83c6-313b3317477a | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:29:26.124] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 339.071µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 961eb7d8-3990-46ba-83c6-313b3317477a | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:29:26.124] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.384281ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 961eb7d8-3990-46ba-83c6-313b3317477a | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:29:53.151] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:29:53.165] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 13.801543ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 5fade4e5-7c8e-4811-ad2a-ca598eaa5dcf | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:29:53.166] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 710.168µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 5fade4e5-7c8e-4811-ad2a-ca598eaa5dcf | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 01:29:53.166] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 15.538049ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 5fade4e5-7c8e-4811-ad2a-ca598eaa5dcf | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:29:54.828] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 33.299µs | method: OPTIONS | path: /api/v1/roles/pages | query: filter=mana | request_id: dbec3d17-0a5a-477f-8409-49e46a0d7d7d | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:29:55.015] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:29:55.017] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 939.144µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 183cffd3-fa18-4a79-a7ea-34cc072456c9 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:29:55.017] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 670.637µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 183cffd3-fa18-4a79-a7ea-34cc072456c9 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 01:29:55.017] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.391784ms | method: GET | path: /api/v1/roles/pages | query: filter=mana | request_id: 183cffd3-fa18-4a79-a7ea-34cc072456c9 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:29:57.048] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 27.511µs | method: OPTIONS | path: /api/v1/roles/pages | query: filter=Manajemen+Pengguna | request_id: 32b0db33-4e64-403b-9413-bcb53f4aaa12 | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:29:57.433] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:29:57.435] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 948.116µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 624e581d-07ca-4a22-ba54-bb7808ec544c | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:29:57.435] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 754.643µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 624e581d-07ca-4a22-ba54-bb7808ec544c | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 01:29:57.436] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.616435ms | method: GET | path: /api/v1/roles/pages | query: filter=Manajemen+Pengguna | request_id: 624e581d-07ca-4a22-ba54-bb7808ec544c | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:30:07.964] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 25.278µs | method: OPTIONS | path: /api/v1/roles/pages | request_id: 50e3602e-7876-4339-91fb-5ea0750b7f2d | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:30:07.988] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:30:07.992] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 3.889406ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: f4f497fd-3d2d-4a6c-b8c3-5727f5cfe89d | rows: 1 | service: service-general | sql: INSERT INTO "role_access"."rol_pages" ("name","icon","url","level","sort","parent","active","created_at","updated_at") VALUES ('Manajemen Pengguna Level 2','database-bold','/user/apps/pengguna',3,1,6,true,'2026-04-02 01:30:07.99','2026-04-02 01:30:07.99') RETURNING "id"
[2026-04-02 01:30:07.993] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 4.801188ms | method: POST | path: /api/v1/roles/pages | request_id: f4f497fd-3d2d-4a6c-b8c3-5727f5cfe89d | service: service-general | status: 201 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:30:08.094] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:30:08.098] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 4.308298ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 22e2d5da-623e-439f-a0c3-8cd8a4f31a8c | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:30:08.103] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 4.185094ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 22e2d5da-623e-439f-a0c3-8cd8a4f31a8c | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:30:08.103] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 9.371351ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 22e2d5da-623e-439f-a0c3-8cd8a4f31a8c | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:30:18.856] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:30:18.857] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 934.227µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: ad98a39b-5629-414c-9c52-02c23695dfc3 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:30:18.858] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 448.571µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: ad98a39b-5629-414c-9c52-02c23695dfc3 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 01:30:18.858] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.193571ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: ad98a39b-5629-414c-9c52-02c23695dfc3 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:30:42.171] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:30:42.173] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.355289ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 50a70b3a-0581-4e9b-bc36-665afaa67bd2 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:30:42.173] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 637.484µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 50a70b3a-0581-4e9b-bc36-665afaa67bd2 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 01:30:42.173] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.78684ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 50a70b3a-0581-4e9b-bc36-665afaa67bd2 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:32:38.785] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:32:38.794] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 8.884653ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: cea0bfab-8e91-44d4-9da0-b763754b6616 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:32:38.795] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.312979ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: cea0bfab-8e91-44d4-9da0-b763754b6616 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 01:32:38.796] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 11.202111ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: cea0bfab-8e91-44d4-9da0-b763754b6616 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:37:00.577] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:37:00.579] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.236628ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 58e42af8-31af-46f3-a9e1-47ffb5d1ebb3 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:37:00.579] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 583.951µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 58e42af8-31af-46f3-a9e1-47ffb5d1ebb3 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 01:37:00.579] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.971937ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 58e42af8-31af-46f3-a9e1-47ffb5d1ebb3 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:37:39.175] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:37:39.184] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 9.051251ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 5965506f-30d5-448d-be0c-5ab3d9a5d2b8 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:37:39.186] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.454224ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 5965506f-30d5-448d-be0c-5ab3d9a5d2b8 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 01:37:39.186] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 11.562602ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 5965506f-30d5-448d-be0c-5ab3d9a5d2b8 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:42:38.826] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 1.102332ms | method: GET | path: /api/v1/roles/pages/6 | request_id: 72cdd49e-64ff-4ef0-bcf3-28869f8e9f94 | service: service-general | status: 401 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-02 01:42:43.053] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 394.881µs | method: POST | path: /api/v1/auth/login | request_id: 198db3f9-152e-401c-87fa-cb8276e18b2a | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-02 01:42:47.821] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:42:47.832] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 10.167292ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 58aada47-30f8-4870-ab5e-6f7839bd327c | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 6 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 01:42:47.833] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.022298ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 58aada47-30f8-4870-ab5e-6f7839bd327c | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 6
[2026-04-02 01:42:47.833] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 12.630517ms | method: GET | path: /api/v1/roles/pages/6 | request_id: 58aada47-30f8-4870-ab5e-6f7839bd327c | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-02 01:43:04.954] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:43:04.956] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.555487ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: d6417eae-4251-4071-8634-8ec8b4bd11ae | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 9 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 01:43:04.957] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 950.856µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: d6417eae-4251-4071-8634-8ec8b4bd11ae | rows: 0 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 9
[2026-04-02 01:43:04.957] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 3.612473ms | method: GET | path: /api/v1/roles/pages/9 | request_id: d6417eae-4251-4071-8634-8ec8b4bd11ae | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-02 01:45:07.840] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:45:07.842] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.801118ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 75ed0706-761b-4f28-a072-c9effd44a05c | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:45:07.843] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 830.703µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 75ed0706-761b-4f28-a072-c9effd44a05c | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:45:07.843] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 3.772697ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 75ed0706-761b-4f28-a072-c9effd44a05c | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:45:08.191] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:45:08.191] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 532.822µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: dca52e4f-8c32-4ff3-8253-8bc9c0aa8910 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:45:08.192] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 662.05µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: dca52e4f-8c32-4ff3-8253-8bc9c0aa8910 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:45:08.192] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 1.967359ms | method: GET | path: /api/v1/roles/pages/tree | request_id: dca52e4f-8c32-4ff3-8253-8bc9c0aa8910 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:46:39.070] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:46:39.071] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.452431ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 187a6ab8-5bc3-46d7-bc1c-6c8ee2d0f66c | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:46:39.072] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 747.469µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 187a6ab8-5bc3-46d7-bc1c-6c8ee2d0f66c | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:46:39.072] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 3.152995ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 187a6ab8-5bc3-46d7-bc1c-6c8ee2d0f66c | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:46:40.130] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:46:40.131] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.15319ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 2c4b54c6-d157-4545-b1c1-41ceb005f241 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:46:40.132] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 662.64µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 2c4b54c6-d157-4545-b1c1-41ceb005f241 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:46:40.132] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.674773ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 2c4b54c6-d157-4545-b1c1-41ceb005f241 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:46:50.970] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 30.191µs | method: OPTIONS | path: /api/v1/roles/pages/9 | request_id: 9733f27f-3ce3-44f6-8e38-ab0909be775a | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:46:51.044] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:46:51.046] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.360022ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: d6260119-2092-4169-b67e-260535b67902 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 9 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 01:46:51.046] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 556.287µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: d6260119-2092-4169-b67e-260535b67902 | rows: 0 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 9
[2026-04-02 01:46:51.046] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.784943ms | method: GET | path: /api/v1/roles/pages/9 | request_id: d6260119-2092-4169-b67e-260535b67902 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:46:51.104] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:46:51.105] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 561.878µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 0ea5c851-d43c-44f7-853e-f981f089aba5 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:46:51.105] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 790.954µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 0ea5c851-d43c-44f7-853e-f981f089aba5 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 01:46:51.106] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.097271ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 0ea5c851-d43c-44f7-853e-f981f089aba5 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:46:51.122] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:46:51.123] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 880.142µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 1eafe878-e121-404e-a68c-1653fad1b5da | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:46:51.124] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 460.855µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 1eafe878-e121-404e-a68c-1653fad1b5da | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 01:46:51.124] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.061502ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 1eafe878-e121-404e-a68c-1653fad1b5da | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:47:01.252] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 24.883µs | method: OPTIONS | path: /api/v1/roles/pages/1 | request_id: 81c57d2d-8962-4a4d-9db5-b705b9f9e36f | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:48:12.182] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:48:12.194] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 11.027804ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 9c4f62f8-2e0c-4517-b954-c602ae7736aa | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 1 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 01:48:12.195] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.050197ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 9c4f62f8-2e0c-4517-b954-c602ae7736aa | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 1
[2026-04-02 01:48:12.195] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 13.520677ms | method: GET | path: /api/v1/roles/pages/1 | request_id: 9c4f62f8-2e0c-4517-b954-c602ae7736aa | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:48:17.931] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:48:17.933] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.832855ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 81340fad-75ef-4a0d-9a18-514604a0f1da | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:48:17.934] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 955.628µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 81340fad-75ef-4a0d-9a18-514604a0f1da | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:48:17.934] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 3.585716ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 81340fad-75ef-4a0d-9a18-514604a0f1da | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:48:22.079] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:48:22.080] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.233986ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 479d147f-2c83-4042-87a4-b18e37153fba | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 1 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 01:48:22.081] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 428.914µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 479d147f-2c83-4042-87a4-b18e37153fba | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 1
[2026-04-02 01:48:22.081] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.656345ms | method: GET | path: /api/v1/roles/pages/1 | request_id: 479d147f-2c83-4042-87a4-b18e37153fba | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:49:18.154] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 617.513µs | method: PUT | path: /api/v1/roles/pages/1 | request_id: 0fd86cad-c487-4851-9f13-7b47448ab4be | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:49:32.082] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 517.933µs | method: PUT | path: /api/v1/roles/pages/1 | request_id: 7d136880-dceb-4f4d-a0f8-1ac3c44e27f0 | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:50:21.581] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 769.772µs | method: POST | path: /api/v1/auth/login | request_id: 123abbb2-ee58-417f-aa3a-24f04423475c | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:50:21.673] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:50:21.673] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 668.973µs | method: GET | path: /api/v1/auth/info | request_id: a4cf9c17-b34f-4452-b177-19edf147d191 | service: service-general | status: 200 | user_agent: node
[2026-04-02 01:50:26.294] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:50:26.296] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.131354ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: fe23f5cc-7dc9-4552-b0f9-088d1d4973c8 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:50:26.296] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 495.219µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: fe23f5cc-7dc9-4552-b0f9-088d1d4973c8 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:50:26.296] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.600861ms | method: GET | path: /api/v1/roles/pages/tree | request_id: fe23f5cc-7dc9-4552-b0f9-088d1d4973c8 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:50:28.339] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:50:28.340] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.040823ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 450828d5-05f6-4581-b21d-12ab4ac7cbad | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 1 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 01:50:28.341] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 582.334µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 450828d5-05f6-4581-b21d-12ab4ac7cbad | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 1
[2026-04-02 01:50:28.341] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.448849ms | method: GET | path: /api/v1/roles/pages/1 | request_id: 450828d5-05f6-4581-b21d-12ab4ac7cbad | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:50:50.329] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:50:50.332] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 2.934398ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 5cdcab2a-4e0c-4787-bded-351568104689 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:50:50.334] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.557518ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 5cdcab2a-4e0c-4787-bded-351568104689 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 01:50:50.334] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 5.492444ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 5cdcab2a-4e0c-4787-bded-351568104689 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:50:54.899] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:50:54.900] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.009923ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: eef45c47-73c7-45bd-b44c-1357ee3ca7cc | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 1 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 01:50:54.901] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 638.069µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: eef45c47-73c7-45bd-b44c-1357ee3ca7cc | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 1
[2026-04-02 01:50:54.901] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.55103ms | method: GET | path: /api/v1/roles/pages/1 | request_id: eef45c47-73c7-45bd-b44c-1357ee3ca7cc | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:50:57.873] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:50:57.875] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.179642ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 838aec1d-affa-4904-8d33-c81a7423c40c | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:50:57.875] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 522.562µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 838aec1d-affa-4904-8d33-c81a7423c40c | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 01:50:57.876] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.643393ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 838aec1d-affa-4904-8d33-c81a7423c40c | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:51:18.438] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:51:18.439] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.138087ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 95c5dd93-5b81-42c7-b83b-a8dde1359a93 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 1 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 01:51:18.440] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 263.167µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 95c5dd93-5b81-42c7-b83b-a8dde1359a93 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 1
[2026-04-02 01:51:18.440] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.295532ms | method: GET | path: /api/v1/roles/pages/1 | request_id: 95c5dd93-5b81-42c7-b83b-a8dde1359a93 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:51:23.793] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:51:23.794] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.140166ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 8d2edaae-41aa-4620-bf67-5bb90796ff7a | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 1 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 01:51:23.797] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 2.951256ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 8d2edaae-41aa-4620-bf67-5bb90796ff7a | rows: 1 | service: service-general | sql: UPDATE "role_access"."rol_pages" SET "name"='Dashboard Coba',"icon"='widget-add-line-duotone',"url"='/admin',"level"=1,"sort"=1,"parent"=NULL,"active"=true,"created_at"=NULL,"updated_at"='2026-04-02 01:51:23.795' WHERE "id" = 1
[2026-04-02 01:51:23.797] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 5.157883ms | method: PUT | path: /api/v1/roles/pages/1 | request_id: 8d2edaae-41aa-4620-bf67-5bb90796ff7a | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:51:23.917] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:51:23.918] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 614.52µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 09ecec1e-a60e-4a03-9266-ba3f389aba51 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:51:23.919] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 536.6µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 09ecec1e-a60e-4a03-9266-ba3f389aba51 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:51:23.919] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.062817ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 09ecec1e-a60e-4a03-9266-ba3f389aba51 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:51:31.219] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:51:31.220] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.149325ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 54eeb7f0-9573-4545-a846-6f8eb85f4f17 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:51:31.221] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 627.688µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 54eeb7f0-9573-4545-a846-6f8eb85f4f17 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:51:31.221] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.647299ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 54eeb7f0-9573-4545-a846-6f8eb85f4f17 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:51:35.954] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 26.663µs | method: OPTIONS | path: /api/v1/roles/pages/6 | request_id: 851016c0-43b1-49f7-a5e2-d8522d6cbed4 | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:51:35.962] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:51:35.964] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.080878ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 898df7b4-20ea-45db-a118-46f866ed9439 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 6 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 01:51:35.964] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 689.253µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 898df7b4-20ea-45db-a118-46f866ed9439 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 6
[2026-04-02 01:51:35.964] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.55385ms | method: GET | path: /api/v1/roles/pages/6 | request_id: 898df7b4-20ea-45db-a118-46f866ed9439 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:51:36.016] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:51:36.016] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 475.243µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 8645353c-878f-4820-948f-c85072d4106b | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:51:36.017] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 576.101µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 8645353c-878f-4820-948f-c85072d4106b | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 01:51:36.017] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 1.881484ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 8645353c-878f-4820-948f-c85072d4106b | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:51:36.023] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:51:36.024] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 506.075µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 02ab56cd-8b1d-453c-904f-683d90a33cfc | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:51:36.025] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 483.293µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 02ab56cd-8b1d-453c-904f-683d90a33cfc | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 01:51:36.025] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 1.629992ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 02ab56cd-8b1d-453c-904f-683d90a33cfc | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:52:36.792] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:52:36.793] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.097547ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 2b599d75-58cd-4a59-a494-da1cb2ded8f0 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 6 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 01:52:36.794] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 712.344µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 2b599d75-58cd-4a59-a494-da1cb2ded8f0 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 1 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 01:52:36.797] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 2.337141ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 2b599d75-58cd-4a59-a494-da1cb2ded8f0 | rows: 1 | service: service-general | sql: UPDATE "role_access"."rol_pages" SET "name"='Manajemen Pengguna',"icon"='shield-user-bold',"url"='/admin/users',"level"=2,"sort"=1,"parent"=1,"active"=true,"created_at"='2026-03-30 06:05:58.862',"updated_at"='2026-04-02 01:52:36.795' WHERE "id" = 6
[2026-04-02 01:52:36.797] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 5.428991ms | method: PUT | path: /api/v1/roles/pages/6 | request_id: 2b599d75-58cd-4a59-a494-da1cb2ded8f0 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:52:36.993] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:52:36.995] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.940425ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 8b839348-372b-4f6d-a9a7-51d814bd518b | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:52:36.998] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 2.411215ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 8b839348-372b-4f6d-a9a7-51d814bd518b | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:52:36.998] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 5.28842ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 8b839348-372b-4f6d-a9a7-51d814bd518b | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:52:42.670] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 35.095µs | method: OPTIONS | path: /api/v1/roles/pages/4 | request_id: 8c62572b-c905-402b-9882-0f3171fe1554 | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:52:42.686] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:52:42.688] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.316709ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 7129ec42-2a84-47af-869a-7193622cb2c2 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 4 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 01:52:42.689] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 716.299µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 7129ec42-2a84-47af-869a-7193622cb2c2 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 4
[2026-04-02 01:52:42.689] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.916194ms | method: GET | path: /api/v1/roles/pages/4 | request_id: 7129ec42-2a84-47af-869a-7193622cb2c2 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:52:49.117] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:52:49.118] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 825.914µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: e46903e3-ff80-46a3-9519-2045405450eb | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 4 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 01:52:49.120] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.740195ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: e46903e3-ff80-46a3-9519-2045405450eb | rows: 1 | service: service-general | sql: UPDATE "role_access"."rol_pages" SET "name"='Tiket Coba',"icon"='users-group-rounded-line-duotone',"url"='/e-tiket',"level"=1,"sort"=2,"parent"=NULL,"active"=true,"created_at"=NULL,"updated_at"='2026-04-02 01:52:49.118' WHERE "id" = 4
[2026-04-02 01:52:49.120] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 3.89847ms | method: PUT | path: /api/v1/roles/pages/4 | request_id: e46903e3-ff80-46a3-9519-2045405450eb | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:52:49.189] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:52:49.190] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 703.127µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 57d1e378-77ca-42ed-a311-0668bc93d8f6 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:52:49.191] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 438.167µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 57d1e378-77ca-42ed-a311-0668bc93d8f6 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:52:49.191] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.209161ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 57d1e378-77ca-42ed-a311-0668bc93d8f6 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:52:51.809] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:52:51.810] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 974.198µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 5c6cc7ad-a965-44d9-95d4-3dae57b651d8 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 1 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 01:52:51.810] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 428.478µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 5c6cc7ad-a965-44d9-95d4-3dae57b651d8 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 1
[2026-04-02 01:52:51.811] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.332502ms | method: GET | path: /api/v1/roles/pages/1 | request_id: 5c6cc7ad-a965-44d9-95d4-3dae57b651d8 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:53:01.297] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 34.656µs | method: OPTIONS | path: /api/v1/roles/pages/2 | request_id: 5896bbb2-9861-45c9-898e-3ddbce2b6ee1 | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:53:01.309] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:53:01.310] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.13026ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b2cc6c5b-ec58-4523-9b5c-9a17609d02aa | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 2 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 01:53:01.311] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 525.204µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b2cc6c5b-ec58-4523-9b5c-9a17609d02aa | rows: 0 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 2
[2026-04-02 01:53:01.311] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.62107ms | method: GET | path: /api/v1/roles/pages/2 | request_id: b2cc6c5b-ec58-4523-9b5c-9a17609d02aa | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:53:04.498] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:53:04.499] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.030038ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 46881169-4927-414a-87b8-9ac46c3b5ee1 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 4 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 01:53:04.500] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 458.894µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 46881169-4927-414a-87b8-9ac46c3b5ee1 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 4
[2026-04-02 01:53:04.500] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.68709ms | method: GET | path: /api/v1/roles/pages/4 | request_id: 46881169-4927-414a-87b8-9ac46c3b5ee1 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:53:08.615] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:53:08.616] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 946.937µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b02362b1-d6e4-4ad5-8047-3f69dbf3c78d | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 4 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 01:53:08.618] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 2.042349ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b02362b1-d6e4-4ad5-8047-3f69dbf3c78d | rows: 1 | service: service-general | sql: UPDATE "role_access"."rol_pages" SET "name"='Tiket Coba',"icon"='users-group-rounded-line-duotone',"url"='/e-tiket',"level"=1,"sort"=3,"parent"=NULL,"active"=true,"created_at"=NULL,"updated_at"='2026-04-02 01:53:08.617' WHERE "id" = 4
[2026-04-02 01:53:08.618] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 3.862293ms | method: PUT | path: /api/v1/roles/pages/4 | request_id: b02362b1-d6e4-4ad5-8047-3f69dbf3c78d | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:53:08.733] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:53:08.740] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 6.892062ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: f9e6555b-6ff1-46bf-9a89-99386598d827 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:53:08.741] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 450.743µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: f9e6555b-6ff1-46bf-9a89-99386598d827 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:53:08.741] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 8.266834ms | method: GET | path: /api/v1/roles/pages/tree | request_id: f9e6555b-6ff1-46bf-9a89-99386598d827 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:53:12.153] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:53:12.154] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.119653ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 4d27decf-4757-470c-b93f-ee0ae9b37cef | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 4 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 01:53:12.154] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 307.324µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 4d27decf-4757-470c-b93f-ee0ae9b37cef | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 4
[2026-04-02 01:53:12.154] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.321628ms | method: GET | path: /api/v1/roles/pages/4 | request_id: 4d27decf-4757-470c-b93f-ee0ae9b37cef | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:53:15.502] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 25.476µs | method: OPTIONS | path: /api/v1/roles/pages/3 | request_id: 5da4b9dd-e619-4dde-8482-ba4ca51811ea | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:53:15.514] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:53:15.561] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 46.081579ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: a17a1437-08c6-4cbe-a7ce-ee0a228165ad | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 3 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 01:53:15.571] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 10.296243ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: a17a1437-08c6-4cbe-a7ce-ee0a228165ad | rows: 0 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 3
[2026-04-02 01:53:15.571] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 57.262192ms | method: GET | path: /api/v1/roles/pages/3 | request_id: a17a1437-08c6-4cbe-a7ce-ee0a228165ad | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:53:19.294] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:53:19.304] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 10.363524ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 929e6683-5145-4219-800e-a41168f61ca4 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 3 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 01:53:19.307] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 2.220031ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 929e6683-5145-4219-800e-a41168f61ca4 | rows: 1 | service: service-general | sql: UPDATE "role_access"."rol_pages" SET "name"='Index Coba',"icon"='list-check-line-duotone',"url"='/',"level"=1,"sort"=4,"parent"=NULL,"active"=true,"created_at"=NULL,"updated_at"='2026-04-02 01:53:19.305' WHERE "id" = 3
[2026-04-02 01:53:19.307] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 13.563344ms | method: PUT | path: /api/v1/roles/pages/3 | request_id: 929e6683-5145-4219-800e-a41168f61ca4 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:53:19.383] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:53:19.384] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 941.529µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: f35cb873-d014-4662-be11-a42ed4621362 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:53:19.385] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 723.281µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: f35cb873-d014-4662-be11-a42ed4621362 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:53:19.385] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.412401ms | method: GET | path: /api/v1/roles/pages/tree | request_id: f35cb873-d014-4662-be11-a42ed4621362 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:56:09.064] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 46.691µs | method: OPTIONS | path: /api/v1/roles/pages/5 | request_id: fae8f579-72c2-4faa-b306-5d69fcd52d8a | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:56:09.076] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:56:09.077] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 966.662µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: a2e5e796-0ab3-4ca3-8c7e-dde56a55f0bf | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 5 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 01:56:09.077] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 400.702µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: a2e5e796-0ab3-4ca3-8c7e-dde56a55f0bf | rows: 0 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 5
[2026-04-02 01:56:09.077] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.363922ms | method: GET | path: /api/v1/roles/pages/5 | request_id: a2e5e796-0ab3-4ca3-8c7e-dde56a55f0bf | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:56:09.170] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:56:09.171] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 597.923µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 436731e0-4649-4c67-9dfa-76fa77e96770 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:56:09.172] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 575.809µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 436731e0-4649-4c67-9dfa-76fa77e96770 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 01:56:09.172] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 1.916617ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 436731e0-4649-4c67-9dfa-76fa77e96770 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:56:09.179] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:56:09.180] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 398.448µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: aa13e1ab-0058-443a-b10e-6f55e5896509 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:56:09.180] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 526.029µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: aa13e1ab-0058-443a-b10e-6f55e5896509 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 01:56:09.180] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 1.547306ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: aa13e1ab-0058-443a-b10e-6f55e5896509 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:56:29.132] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:56:29.134] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.393803ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 361b90d9-8d86-4b5e-92db-bf2edc9e82dc | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 5 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 01:56:29.135] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 617.735µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 361b90d9-8d86-4b5e-92db-bf2edc9e82dc | rows: 0 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 5
[2026-04-02 01:56:29.135] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.896842ms | method: GET | path: /api/v1/roles/pages/5 | request_id: 361b90d9-8d86-4b5e-92db-bf2edc9e82dc | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:56:29.211] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:56:29.213] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.824671ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 136643ce-8d91-4f48-bf60-f53c77b3a6f8 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:56:29.215] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 2.078653ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 136643ce-8d91-4f48-bf60-f53c77b3a6f8 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 01:56:29.215] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 4.644646ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 136643ce-8d91-4f48-bf60-f53c77b3a6f8 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:56:29.244] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:56:29.245] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 769.828µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: beeb99fd-cc9c-4fa3-8dbd-3f59842519f3 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:56:29.246] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 899.681µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: beeb99fd-cc9c-4fa3-8dbd-3f59842519f3 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 01:56:29.246] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.487669ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: beeb99fd-cc9c-4fa3-8dbd-3f59842519f3 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:57:01.754] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:57:01.755] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 995.174µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: bd97ecd7-ef0a-4fdd-bf1f-169ec419fc9d | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 1 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 01:57:01.755] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 257.394µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: bd97ecd7-ef0a-4fdd-bf1f-169ec419fc9d | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 1
[2026-04-02 01:57:01.755] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.121698ms | method: GET | path: /api/v1/roles/pages/1 | request_id: bd97ecd7-ef0a-4fdd-bf1f-169ec419fc9d | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 01:57:30.083] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:57:30.103] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 19.742678ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 9b2ec8fd-182b-414b-bbc5-68d83132f3cd | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:57:30.113] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 10.212831ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 9b2ec8fd-182b-414b-bbc5-68d83132f3cd | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 01:57:30.114] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 31.305581ms | method: GET | path: /api/v1/roles/pages | query: filter=detail | request_id: 9b2ec8fd-182b-414b-bbc5-68d83132f3cd | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-02 01:59:18.804] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 01:59:18.814] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 9.760303ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 3027062a-179e-4f85-8edc-1c3f30c89a18 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:59:18.815] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 829.221µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 3027062a-179e-4f85-8edc-1c3f30c89a18 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 01:59:18.815] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 11.760927ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 3027062a-179e-4f85-8edc-1c3f30c89a18 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:00:12.992] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 02:00:12.995] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 2.251573ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: ebaf0749-37f4-4ecc-aaa4-1ffc5da0292a | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 5 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 02:00:12.996] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.26432ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: ebaf0749-37f4-4ecc-aaa4-1ffc5da0292a | rows: 0 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 5
[2026-04-02 02:00:12.996] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 4.852471ms | method: GET | path: /api/v1/roles/pages/5 | request_id: ebaf0749-37f4-4ecc-aaa4-1ffc5da0292a | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:00:13.051] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 02:00:13.052] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 497.146µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: dcf68d39-2123-4ee8-9244-e04f8317eb98 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 02:00:13.053] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 715.484µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: dcf68d39-2123-4ee8-9244-e04f8317eb98 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 02:00:13.053] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 1.893235ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: dcf68d39-2123-4ee8-9244-e04f8317eb98 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:00:13.059] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 02:00:13.060] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 804.412µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 7eed7b2f-f39a-4e14-8860-a31daf65c609 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 02:00:13.061] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 927.929µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 7eed7b2f-f39a-4e14-8860-a31daf65c609 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 02:00:13.061] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.386768ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 7eed7b2f-f39a-4e14-8860-a31daf65c609 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:00:52.666] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 02:00:52.668] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.11159ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: f3107d8a-4055-4947-8839-7a454d691d00 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 02:00:52.668] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 759.173µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: f3107d8a-4055-4947-8839-7a454d691d00 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 02:00:52.669] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.866743ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: f3107d8a-4055-4947-8839-7a454d691d00 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:00:57.425] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 27.426µs | method: OPTIONS | path: /api/v1/roles/pages | query: filter=detail | request_id: 43c81f39-3aab-4fbd-bbb5-bad43f258356 | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:00:57.439] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 02:00:57.441] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.40762ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 2447add2-4f82-4fdd-aa2b-16d2b743a710 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 02:00:57.442] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 548.852µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 2447add2-4f82-4fdd-aa2b-16d2b743a710 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 02:00:57.442] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.830823ms | method: GET | path: /api/v1/roles/pages | query: filter=detail | request_id: 2447add2-4f82-4fdd-aa2b-16d2b743a710 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:01:00.045] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 02:01:00.046] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.327761ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 962723f2-5108-4fda-aff5-2799ee21fd52 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 02:01:00.047] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 631.011µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 962723f2-5108-4fda-aff5-2799ee21fd52 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 02:01:00.047] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.616821ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 962723f2-5108-4fda-aff5-2799ee21fd52 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:01:05.250] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 34.424µs | method: OPTIONS | path: /api/v1/roles/pages | query: filter=deta | request_id: 6e64adf8-5691-4af3-b9ec-30002430645f | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:01:05.266] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 02:01:05.268] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.049006ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: e0ab3e5f-21e5-48be-8f5c-b695c8880463 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 02:01:05.269] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 812.627µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: e0ab3e5f-21e5-48be-8f5c-b695c8880463 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 02:01:05.269] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.647335ms | method: GET | path: /api/v1/roles/pages | query: filter=deta | request_id: e0ab3e5f-21e5-48be-8f5c-b695c8880463 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:01:09.096] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 02:01:09.098] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 964.194µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 792f1fdc-f474-435f-9f48-0f44012f0093 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 02:01:09.098] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 587.658µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 792f1fdc-f474-435f-9f48-0f44012f0093 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 02:01:09.098] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.376767ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 792f1fdc-f474-435f-9f48-0f44012f0093 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:03:44.810] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 02:03:44.811] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.086562ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: a2c31d1b-2428-4f5e-8c33-6c597b008f06 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 1 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 02:03:44.812] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 524.466µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: a2c31d1b-2428-4f5e-8c33-6c597b008f06 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 1
[2026-04-02 02:03:44.812] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.559277ms | method: GET | path: /api/v1/roles/pages/1 | request_id: a2c31d1b-2428-4f5e-8c33-6c597b008f06 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:11:37.171] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 02:11:37.181] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 10.204656ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: bee99375-bc5b-466c-8f2c-3eccea0b974f | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 02:11:37.182] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.013195ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: bee99375-bc5b-466c-8f2c-3eccea0b974f | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 02:11:37.183] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 12.260331ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: bee99375-bc5b-466c-8f2c-3eccea0b974f | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:11:41.726] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 51.81µs | method: OPTIONS | path: /api/v1/roles/pages | query: filter=Dashboard+Coba | request_id: 2f491cf0-0713-479e-8014-3d2ad83d2e0c | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:11:41.734] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 02:11:41.735] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.191233ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: a129c002-934c-4e39-84ac-090ca78b8d6a | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 02:11:41.736] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 889.966µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: a129c002-934c-4e39-84ac-090ca78b8d6a | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 02:11:41.736] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 3.003271ms | method: GET | path: /api/v1/roles/pages | query: filter=Dashboard+Coba | request_id: a129c002-934c-4e39-84ac-090ca78b8d6a | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:12:23.358] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 02:12:23.364] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 4.975087ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: fcc11fc1-622a-4631-8898-9f421f340713 | rows: 1 | service: service-general | sql: INSERT INTO "role_access"."rol_pages" ("name","icon","url","level","sort","parent","active","created_at","updated_at") VALUES ('Menu 3','user-check-broken','/admin',2,1,1,true,'2026-04-02 02:12:23.359','2026-04-02 02:12:23.359') RETURNING "id"
[2026-04-02 02:12:23.364] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 6.085997ms | method: POST | path: /api/v1/roles/pages | request_id: fcc11fc1-622a-4631-8898-9f421f340713 | service: service-general | status: 201 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:12:23.424] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 02:12:23.425] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 635.108µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 592675bb-57ac-4fbc-875a-29ff8125a258 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 02:12:23.426] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.041355ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 592675bb-57ac-4fbc-875a-29ff8125a258 | rows: 8 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 02:12:23.426] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.552017ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 592675bb-57ac-4fbc-875a-29ff8125a258 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:25:47.038] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 02:25:47.048] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 9.422517ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: f0b54def-74eb-43e5-aec5-4728caa2f406 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 5 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 02:25:47.049] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.188467ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: f0b54def-74eb-43e5-aec5-4728caa2f406 | rows: 0 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 5
[2026-04-02 02:25:47.049] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 11.636518ms | method: GET | path: /api/v1/roles/pages/5 | request_id: f0b54def-74eb-43e5-aec5-4728caa2f406 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:25:47.082] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 02:25:47.084] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.108106ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 5fbddd0b-dcd6-4cfc-94cc-df30563d0615 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 02:25:47.085] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.180239ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 5fbddd0b-dcd6-4cfc-94cc-df30563d0615 | rows: 8 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 02:25:47.085] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 3.098934ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 5fbddd0b-dcd6-4cfc-94cc-df30563d0615 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:25:47.090] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 02:25:47.091] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 412.859µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 99000889-0530-4d3d-b42c-e542013421e2 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 02:25:47.091] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 457.957µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 99000889-0530-4d3d-b42c-e542013421e2 | rows: 8 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 02:25:47.091] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 1.487046ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 99000889-0530-4d3d-b42c-e542013421e2 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:28:26.315] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 56.609µs | method: OPTIONS | path: /api/v1/roles/pages | query: filter=Tiket+Coba | request_id: 06bbfb1f-3570-4395-ba5c-36a61794c5da | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:28:26.331] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 02:28:26.332] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.205252ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: bcc3e465-7a7a-4c6f-9235-2e6772e9f772 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 02:28:26.333] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 587.9µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: bcc3e465-7a7a-4c6f-9235-2e6772e9f772 | rows: 8 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 02:28:26.333] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.865993ms | method: GET | path: /api/v1/roles/pages | query: filter=Tiket+Coba | request_id: bcc3e465-7a7a-4c6f-9235-2e6772e9f772 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:29:48.926] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 02:29:48.927] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.049418ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: a7ee2e9a-09d5-462f-b04a-17d6bf2c6eb4 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 02:29:48.928] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 654.678µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: a7ee2e9a-09d5-462f-b04a-17d6bf2c6eb4 | rows: 8 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 02:29:48.928] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.927531ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: a7ee2e9a-09d5-462f-b04a-17d6bf2c6eb4 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:29:51.019] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 02:29:51.021] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.200595ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 5a8f7af4-fff4-4b06-b0a6-6cf0b617f825 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 1 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 02:29:51.021] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 434.838µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 5a8f7af4-fff4-4b06-b0a6-6cf0b617f825 | rows: 2 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 1
[2026-04-02 02:29:51.021] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.674005ms | method: GET | path: /api/v1/roles/pages/1 | request_id: 5a8f7af4-fff4-4b06-b0a6-6cf0b617f825 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:30:27.224] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 02:30:27.225] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.233328ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 4ee97b40-7c15-45bc-89f4-24417fdc975b | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 1 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 02:30:27.226] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 469.58µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 4ee97b40-7c15-45bc-89f4-24417fdc975b | rows: 2 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 1
[2026-04-02 02:30:27.226] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.559855ms | method: GET | path: /api/v1/roles/pages/1 | request_id: 4ee97b40-7c15-45bc-89f4-24417fdc975b | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:34:36.126] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 02:34:36.136] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 9.672554ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 4f086d33-32d2-4d7a-bc5e-bd7e391818c5 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 02:34:36.137] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.204967ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 4f086d33-32d2-4d7a-bc5e-bd7e391818c5 | rows: 8 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 02:34:36.138] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 11.992615ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 4f086d33-32d2-4d7a-bc5e-bd7e391818c5 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:34:42.236] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 02:34:42.238] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.533662ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 1b04a482-f87d-4553-bdf0-743fb28ee792 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 02:34:42.239] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 757.7µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 1b04a482-f87d-4553-bdf0-743fb28ee792 | rows: 8 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 02:34:42.239] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 3.120324ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 1b04a482-f87d-4553-bdf0-743fb28ee792 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:34:49.917] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 02:34:49.919] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.370494ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: ff93edcd-3f49-4ff3-9d60-408d91b438d6 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 02:34:49.919] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 532.322µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: ff93edcd-3f49-4ff3-9d60-408d91b438d6 | rows: 8 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 02:34:49.919] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.748193ms | method: GET | path: /api/v1/roles/pages/tree | request_id: ff93edcd-3f49-4ff3-9d60-408d91b438d6 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:51:39.304] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 55.754µs | method: OPTIONS | path: /api/v1/roles/pages/tree | request_id: adef0cb7-bc99-405d-aabc-1f3031d60cf3 | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:51:39.312] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 697.473µs | method: GET | path: /api/v1/roles/pages/tree | request_id: 77edd825-494b-4cce-8256-98abffdf0ce9 | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:51:40.167] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 706.331µs | method: GET | path: /api/v1/roles/pages/tree | request_id: fa8c7601-5975-4c09-87f3-181d568229ee | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:52:32.563] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 746.955µs | method: GET | path: /api/v1/roles/pages/tree | request_id: 5fd7b447-56c2-454d-84cf-65a90749f928 | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:52:40.194] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 671.909µs | method: GET | path: /api/v1/roles/pages/tree | request_id: ad6178b4-0884-4727-943e-f06e1a3d47a8 | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:52:54.405] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 610.003µs | method: GET | path: /api/v1/roles/pages/tree | request_id: 64396223-84d7-417c-b1c4-182d0c1363ea | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 02:52:55.218] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 530.134µs | method: GET | path: /api/v1/roles/pages/tree | request_id: e103d167-c95d-4194-993f-4b1a19dfd965 | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 03:03:11.466] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 642.863µs | method: GET | path: /api/v1/roles/pages/tree | request_id: 909241e6-d34b-4764-a1dd-0df2ab617b1f | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 03:03:12.146] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 737.698µs | method: GET | path: /api/v1/roles/pages/tree | request_id: 8f0e08e5-15bb-4781-99c2-472f01ee2ed3 | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 03:03:29.209] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 646.512µs | method: GET | path: /api/v1/roles/pages/tree | request_id: a5353e1f-9f9b-42ae-965b-bb327a2a4857 | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 03:03:49.987] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 46.948µs | method: OPTIONS | path: /api/v1/auth/login | request_id: fb89160f-7743-43c7-8a09-00338a61512b | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 03:03:49.994] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 318.798µs | method: POST | path: /api/v1/auth/login | request_id: b368b863-85b4-4e32-b0f9-b1d465ce4219 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 03:03:50.029] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 03:03:50.029] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 606.739µs | method: GET | path: /api/v1/auth/info | request_id: 63d305c0-742e-4db0-9c76-3f4d7c4630d3 | service: service-general | status: 200 | user_agent: node
[2026-04-02 03:03:57.419] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 03:03:57.431] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 11.604866ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 2cd92ec2-20e9-49dd-8eb5-6aeb7dd25463 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 03:03:57.432] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.166505ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 2cd92ec2-20e9-49dd-8eb5-6aeb7dd25463 | rows: 8 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 03:03:57.432] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 13.804976ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 2cd92ec2-20e9-49dd-8eb5-6aeb7dd25463 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 03:04:29.763] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 03:04:29.764] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 907.167µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 0be23e1e-0b36-4dfc-ba88-5aed75a1084a | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 03:04:29.765] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 322.308µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 0be23e1e-0b36-4dfc-ba88-5aed75a1084a | rows: 8 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 03:04:29.765] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.564199ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 0be23e1e-0b36-4dfc-ba88-5aed75a1084a | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 03:04:30.169] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 03:04:30.170] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 608.421µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 9ec5b8ef-6a85-4bfd-b9af-de9e4a73048f | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 03:04:30.170] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 600.64µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 9ec5b8ef-6a85-4bfd-b9af-de9e4a73048f | rows: 8 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 03:04:30.171] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.182634ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 9ec5b8ef-6a85-4bfd-b9af-de9e4a73048f | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 03:19:29.867] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 68.214µs | method: OPTIONS | path: /api/v1/roles/pages | query: filter= | request_id: 7ed0b5ea-6cb0-4fb6-b593-d71ccf40fb98 | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 03:19:29.875] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 03:19:29.886] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 11.275668ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: edb81824-e7f0-4bcd-a769-cc875a55924a | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 03:19:29.888] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.727754ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: edb81824-e7f0-4bcd-a769-cc875a55924a | rows: 8 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 03:19:29.888] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 14.053065ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: edb81824-e7f0-4bcd-a769-cc875a55924a | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 03:21:37.646] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 03:21:37.647] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.356381ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b4d014bb-3ab2-435a-8d1e-1ea146a03c7c | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 03:21:37.648] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 612.31µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b4d014bb-3ab2-435a-8d1e-1ea146a03c7c | rows: 8 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 03:21:37.648] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.953124ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: b4d014bb-3ab2-435a-8d1e-1ea146a03c7c | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:08:46.290] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 1.432602ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 4f836699-1009-4ca8-a72f-e720cebf3e87 | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:08:53.810] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 289.464µs | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 125a289a-315a-48ac-8c6d-e858b6c20ab4 | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:09:07.352] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 85.185µs | method: OPTIONS | path: /api/v1/roles/pages | request_id: 5f877455-c2b5-4453-9e23-79ba222c2561 | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:09:07.372] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 345.998µs | method: POST | path: /api/v1/roles/pages | request_id: 43d0a8ea-460f-490c-8ad2-0d3b6b4291a9 | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:11:58.753] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 500.286µs | method: GET | path: /api/v1/roles/pages/tree | request_id: 7876be11-12fa-45ff-9f6f-8db13d0a0646 | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:15:32.866] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.150.106 | latency: 899.904µs | method: GET | path: /api/v1/roles/pages | query: filter | request_id: c9f0fa5b-6ac3-494c-ac03-d2e0d1b7bc49 | service: service-general | status: 401 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-02 04:15:43.749] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.150.106 | latency: 487.462µs | method: POST | path: /api/v1/auth/login | request_id: a7975f24-d683-426a-a418-027414cb7da2 | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-02 04:15:47.956] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:15:47.972] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 15.471877ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b8a3d412-3bb7-4908-b2fc-15f1ff0f4fbf | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 04:15:47.973] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.526044ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b8a3d412-3bb7-4908-b2fc-15f1ff0f4fbf | rows: 8 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 04:15:47.974] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.150.106 | latency: 17.923716ms | method: GET | path: /api/v1/roles/pages | query: filter | request_id: b8a3d412-3bb7-4908-b2fc-15f1ff0f4fbf | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-02 04:16:27.635] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:16:27.636] [INFO ] Search request | 📍 rol_pages_handler.go:116 | environment: debug | filters: map[Name:Detail Tiket Coba] | ⚙️ service/internal/infrastructure/transport/http/handlers.(*RolPagesHandler).Search | limit: 10 | page: 1 | request_id: 9bf14398-69e5-4b7d-b841-222892de6c41 | service: service-general | sorts: []
[2026-04-02 04:16:27.639] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 2.490507ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 9bf14398-69e5-4b7d-b841-222892de6c41 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE Name = 'Detail Tiket Coba'
[2026-04-02 04:16:27.640] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 927.938µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 9bf14398-69e5-4b7d-b841-222892de6c41 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE Name = 'Detail Tiket Coba' LIMIT 10
[2026-04-02 04:16:27.640] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.150.106 | latency: 4.937897ms | method: GET | path: /api/v1/roles/pages/search | query: Name=Detail%20Tiket%20Coba | request_id: 9bf14398-69e5-4b7d-b841-222892de6c41 | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-02 04:16:36.420] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:16:36.420] [INFO ] Search request | 📍 rol_pages_handler.go:116 | environment: debug | filters: map[Name:Detail] | ⚙️ service/internal/infrastructure/transport/http/handlers.(*RolPagesHandler).Search | limit: 10 | page: 1 | request_id: 729f1115-adfd-4d3f-bcb0-88e9f2ef5a90 | service: service-general | sorts: []
[2026-04-02 04:16:36.423] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 3.13006ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 729f1115-adfd-4d3f-bcb0-88e9f2ef5a90 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE Name = 'Detail'
[2026-04-02 04:16:36.425] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.666912ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 729f1115-adfd-4d3f-bcb0-88e9f2ef5a90 | rows: 0 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE Name = 'Detail' LIMIT 10
[2026-04-02 04:16:36.425] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.150.106 | latency: 5.860252ms | method: GET | path: /api/v1/roles/pages/search | query: Name=Detail | request_id: 729f1115-adfd-4d3f-bcb0-88e9f2ef5a90 | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-02 04:24:10.242] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 814.981µs | method: POST | path: /api/v1/auth/login | request_id: 0560e478-9ae1-42a8-84c9-50a0777e9518 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:24:10.348] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:24:10.349] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 623.799µs | method: GET | path: /api/v1/auth/info | request_id: b3228d53-9c8a-4f19-8c69-a95749ab94fa | service: service-general | status: 200 | user_agent: node
[2026-04-02 04:24:15.385] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:24:15.394] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 8.787914ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 80f0570b-300c-44f8-ad66-843740fb202c | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 04:24:15.395] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 987.154µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 80f0570b-300c-44f8-ad66-843740fb202c | rows: 8 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 04:24:15.395] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 10.75424ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 80f0570b-300c-44f8-ad66-843740fb202c | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:24:25.394] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 22.94µs | method: OPTIONS | path: /api/v1/roles/pages/1 | request_id: 4d1c9db1-1305-42a8-a7e0-432a5c662dbe | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:24:25.426] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:24:25.428] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.863044ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 9bf0add4-ce99-4370-8375-4662fc02c16c | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 1 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 04:24:25.429] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 670.431µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 9bf0add4-ce99-4370-8375-4662fc02c16c | rows: 2 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 1
[2026-04-02 04:24:25.429] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 3.247702ms | method: GET | path: /api/v1/roles/pages/1 | request_id: 9bf0add4-ce99-4370-8375-4662fc02c16c | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:24:32.263] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:24:32.264] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 985.695µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 19cf77bf-5585-4d3b-9fe4-8cc76107d17d | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 1 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 04:24:32.265] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 533.09µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 19cf77bf-5585-4d3b-9fe4-8cc76107d17d | rows: 2 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 1
[2026-04-02 04:24:32.265] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.411805ms | method: GET | path: /api/v1/roles/pages/1 | request_id: 19cf77bf-5585-4d3b-9fe4-8cc76107d17d | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:24:35.659] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:24:35.661] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.565129ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 9c80f9af-5f5b-4adc-b09c-95ad54733ecd | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 1 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 04:24:35.662] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 737.896µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 9c80f9af-5f5b-4adc-b09c-95ad54733ecd | rows: 2 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 1
[2026-04-02 04:24:35.662] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 3.115621ms | method: GET | path: /api/v1/roles/pages/1 | request_id: 9c80f9af-5f5b-4adc-b09c-95ad54733ecd | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:25:17.857] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:25:17.881] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 23.321964ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 3084048d-c36d-4d4d-8dc4-3ebce17df61c | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 04:25:17.883] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.855283ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 3084048d-c36d-4d4d-8dc4-3ebce17df61c | rows: 8 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 04:25:17.883] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 26.161617ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 3084048d-c36d-4d4d-8dc4-3ebce17df61c | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:26:02.955] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 28.523µs | method: OPTIONS | path: /api/v1/roles/pages/4 | request_id: 69130791-5489-41e1-83d0-95dd1f3326df | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:26:02.964] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:26:02.965] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 925.648µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: d3f24f3f-6f2d-42ef-a17a-3b288e779aa5 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 4 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 04:26:02.965] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 301.8µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: d3f24f3f-6f2d-42ef-a17a-3b288e779aa5 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 4
[2026-04-02 04:26:02.965] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.1148ms | method: GET | path: /api/v1/roles/pages/4 | request_id: d3f24f3f-6f2d-42ef-a17a-3b288e779aa5 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:26:19.502] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 28.255µs | method: OPTIONS | path: /api/v1/roles/pages/3 | request_id: 190ac5d3-4239-4d15-bbbd-bd40d14b4b2c | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:26:19.510] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:26:19.511] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.156086ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 7159c26d-1f9f-47e7-a657-c47379d53646 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 3 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 04:26:19.512] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 486.327µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 7159c26d-1f9f-47e7-a657-c47379d53646 | rows: 0 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 3
[2026-04-02 04:26:19.512] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.41855ms | method: GET | path: /api/v1/roles/pages/3 | request_id: 7159c26d-1f9f-47e7-a657-c47379d53646 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:26:24.055] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:26:24.056] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.005553ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 4edbe7f3-027e-4b0c-a86a-a25ea2d834a4 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 3 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 04:26:24.059] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 3.312983ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 4edbe7f3-027e-4b0c-a86a-a25ea2d834a4 | rows: 1 | service: service-general | sql: UPDATE "role_access"."rol_pages" SET "name"='Index Coba',"icon"='list-check-line-duotone',"url"='/',"level"=1,"sort"=4,"parent"=NULL,"active"=false,"created_at"=NULL,"updated_at"='2026-04-02 04:26:24.056' WHERE "id" = 3
[2026-04-02 04:26:24.059] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 5.140071ms | method: PUT | path: /api/v1/roles/pages/3 | request_id: 4edbe7f3-027e-4b0c-a86a-a25ea2d834a4 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:26:24.128] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:26:24.129] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 729.808µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 51a61739-265e-401a-a799-738708ff3aaa | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 04:26:24.130] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 915.692µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 51a61739-265e-401a-a799-738708ff3aaa | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 04:26:24.130] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.418477ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 51a61739-265e-401a-a799-738708ff3aaa | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:26:25.939] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 19.318µs | method: OPTIONS | path: /api/v1/roles/pages/5 | request_id: bf79f0c3-a7f9-4438-952c-cd62d8ab4200 | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:26:25.948] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:26:25.950] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.091264ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 8d3da308-487f-403a-966d-d1f53b550dea | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 5 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 04:26:25.950] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 639.16µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 8d3da308-487f-403a-966d-d1f53b550dea | rows: 0 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 5
[2026-04-02 04:26:25.950] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.49174ms | method: GET | path: /api/v1/roles/pages/5 | request_id: 8d3da308-487f-403a-966d-d1f53b550dea | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:26:25.983] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:26:25.984] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 555.992µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 74835844-b764-4d76-808a-6a1a4aa92e32 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 04:26:25.985] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 887.173µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 74835844-b764-4d76-808a-6a1a4aa92e32 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 04:26:25.985] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.17874ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 74835844-b764-4d76-808a-6a1a4aa92e32 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:26:25.990] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:26:25.991] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 446.637µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 0eae353e-9682-4105-ad2a-e48bc4d3f7b0 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 04:26:25.991] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 404.613µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 0eae353e-9682-4105-ad2a-e48bc4d3f7b0 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 04:26:25.991] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 1.417953ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 0eae353e-9682-4105-ad2a-e48bc4d3f7b0 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:26:30.664] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:26:30.666] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 987.283µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: e9adec43-8387-42d3-bfed-c0ba2d02fdb3 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 4 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 04:26:30.666] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 495.474µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: e9adec43-8387-42d3-bfed-c0ba2d02fdb3 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 4
[2026-04-02 04:26:30.666] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.222436ms | method: GET | path: /api/v1/roles/pages/4 | request_id: e9adec43-8387-42d3-bfed-c0ba2d02fdb3 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:27:26.462] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:27:26.464] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.086836ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 9bef3c86-bf35-4b81-8b07-7c5e4ce14090 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 1 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 04:27:26.465] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 667.949µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 9bef3c86-bf35-4b81-8b07-7c5e4ce14090 | rows: 2 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 1
[2026-04-02 04:27:26.465] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.629354ms | method: GET | path: /api/v1/roles/pages/1 | request_id: 9bef3c86-bf35-4b81-8b07-7c5e4ce14090 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:27:31.763] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:27:31.764] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.237511ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: e99e1e2a-b22b-455f-a527-2a0ed11876c2 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 4 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 04:27:31.765] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 527.294µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: e99e1e2a-b22b-455f-a527-2a0ed11876c2 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 4
[2026-04-02 04:27:31.765] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.604066ms | method: GET | path: /api/v1/roles/pages/4 | request_id: e99e1e2a-b22b-455f-a527-2a0ed11876c2 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:27:40.491] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:27:40.493] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.038313ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 5b2257a3-fefd-4e0d-944c-614ec2c5d246 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 4 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 04:27:40.495] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 2.332136ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 5b2257a3-fefd-4e0d-944c-614ec2c5d246 | rows: 1 | service: service-general | sql: UPDATE "role_access"."rol_pages" SET "name"='E-Tiket',"icon"='users-group-rounded-line-duotone',"url"='/e-tiket',"level"=1,"sort"=3,"parent"=NULL,"active"=true,"created_at"=NULL,"updated_at"='2026-04-02 04:27:40.493' WHERE "id" = 4
[2026-04-02 04:27:40.495] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 4.24957ms | method: PUT | path: /api/v1/roles/pages/4 | request_id: 5b2257a3-fefd-4e0d-944c-614ec2c5d246 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:27:40.594] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:27:40.595] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.033456ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 188e32f9-76c1-468a-a9be-747c73fc2a64 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 04:27:40.596] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 752.508µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 188e32f9-76c1-468a-a9be-747c73fc2a64 | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 04:27:40.596] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.530992ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 188e32f9-76c1-468a-a9be-747c73fc2a64 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:27:45.629] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:27:45.630] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.025583ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: ab3b6180-7c81-4466-b46a-cee71c738862 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 5 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 04:27:45.631] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 419.457µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: ab3b6180-7c81-4466-b46a-cee71c738862 | rows: 0 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 5
[2026-04-02 04:27:45.631] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.181078ms | method: GET | path: /api/v1/roles/pages/5 | request_id: ab3b6180-7c81-4466-b46a-cee71c738862 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:27:45.658] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:27:45.658] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 523.317µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: bf9b3d86-2852-4e1b-990a-100f6f51debc | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 04:27:45.659] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 496.484µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: bf9b3d86-2852-4e1b-990a-100f6f51debc | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 04:27:45.659] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 1.599806ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: bf9b3d86-2852-4e1b-990a-100f6f51debc | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:27:45.674] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:27:45.675] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 442.508µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 1b2c8db5-e75a-47e0-af28-764c40a7895e | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 04:27:45.675] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 519.912µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 1b2c8db5-e75a-47e0-af28-764c40a7895e | rows: 7 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 04:27:45.675] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 1.588295ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 1b2c8db5-e75a-47e0-af28-764c40a7895e | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:27:54.556] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:27:54.558] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.207992ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 9e942603-f78b-4a94-93d8-9114d62c1370 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 5 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 04:27:54.558] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 383.938µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 9e942603-f78b-4a94-93d8-9114d62c1370 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 4 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 04:27:54.561] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 2.352013ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 9e942603-f78b-4a94-93d8-9114d62c1370 | rows: 1 | service: service-general | sql: UPDATE "role_access"."rol_pages" SET "name"='Detail Tiket',"icon"='users-group-rounded-line-duotone',"url"='/e-tiket/detail',"level"=2,"sort"=2,"parent"=4,"active"=false,"created_at"=NULL,"updated_at"='2026-04-02 04:27:54.559' WHERE "id" = 5
[2026-04-02 04:27:54.561] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 4.825075ms | method: PUT | path: /api/v1/roles/pages/5 | request_id: 9e942603-f78b-4a94-93d8-9114d62c1370 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:27:54.645] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:27:54.646] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 531.425µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 6dc8d830-2a27-4bab-b72b-9dadf349a0c9 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 04:27:54.646] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 332.497µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 6dc8d830-2a27-4bab-b72b-9dadf349a0c9 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 04:27:54.646] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 1.696716ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 6dc8d830-2a27-4bab-b72b-9dadf349a0c9 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:28:00.545] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:28:00.547] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 994.543µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b07e796e-5633-41d6-b1da-389c337b57ab | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 4 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 04:28:00.547] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 575.157µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b07e796e-5633-41d6-b1da-389c337b57ab | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 4
[2026-04-02 04:28:00.547] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.440985ms | method: GET | path: /api/v1/roles/pages/4 | request_id: b07e796e-5633-41d6-b1da-389c337b57ab | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 04:42:43.844] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 737.547µs | method: GET | path: /api/v1/roles/pages | query: filter=detail | request_id: 577b9764-7477-4c0b-984b-0a9ade51800f | service: service-general | status: 401 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-02 04:42:51.562] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 520.882µs | method: POST | path: /api/v1/auth/login | request_id: 898e299b-817b-4b8d-ae1a-3b16a5af93b6 | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-02 04:42:55.255] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 04:42:55.265] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 9.04703ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: f7f8063a-8187-47a6-b180-06bc6bb9883e | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 04:42:55.267] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.889597ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: f7f8063a-8187-47a6-b180-06bc6bb9883e | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 04:42:55.267] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 11.749211ms | method: GET | path: /api/v1/roles/pages | query: filter=detail | request_id: f7f8063a-8187-47a6-b180-06bc6bb9883e | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-02 05:56:30.549] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 1.508743ms | method: GET | path: /api/v1/roles/pages/1 | request_id: 1821cb3d-c18e-44dc-ba0d-2dbdbae756d7 | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 05:56:35.160] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 605.461µs | method: GET | path: /api/v1/roles/pages/1 | request_id: 783d9464-e2b4-495f-a1d3-e0953f196932 | service: service-general | status: 401 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 06:17:03.259] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 779.243µs | method: GET | path: /api/v1/roles/pages | query: filter=detail | request_id: 49cc76b1-0083-4d72-b478-19d7ab6f4794 | service: service-general | status: 401 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-02 06:17:08.203] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 418.591µs | method: POST | path: /api/v1/auth/login | request_id: c80ab819-aab0-484d-bb86-901e7eb8f1cc | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-02 06:17:12.396] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 06:17:12.406] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 9.979968ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: dc0de818-a061-42d8-935d-4f903717b541 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 06:17:12.407] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.124987ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: dc0de818-a061-42d8-935d-4f903717b541 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 06:17:12.408] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 11.895889ms | method: GET | path: /api/v1/roles/pages | query: filter=detail | request_id: dc0de818-a061-42d8-935d-4f903717b541 | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-02 06:50:13.387] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 06:50:13.409] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 21.642831ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: c1ebc899-462a-48c3-954c-3620861ec50a | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 06:50:13.416] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 6.564048ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: c1ebc899-462a-48c3-954c-3620861ec50a | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 06:50:13.416] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 30.335551ms | method: GET | path: /api/v1/roles/pages | query: filter | request_id: c1ebc899-462a-48c3-954c-3620861ec50a | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-02 06:53:32.547] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 50.405µs | method: OPTIONS | path: /api/v1/auth/login | request_id: f4fa4480-a049-46f0-953d-dc1f0bf77a7a | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 06:53:32.594] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 592.22µs | method: POST | path: /api/v1/auth/login | request_id: 309351df-dada-48cf-9e21-9b3a9720a5d1 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 06:53:32.651] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 06:53:32.651] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 691.62µs | method: GET | path: /api/v1/auth/info | request_id: dbb00187-ec6e-43d2-abda-23449c5f4d83 | service: service-general | status: 200 | user_agent: node
[2026-04-02 06:54:17.029] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 50.718µs | method: OPTIONS | path: /api/v1/roles/pages/tree | request_id: fcf35fe1-1d2b-43ab-a475-bcf4b0431a78 | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 06:54:17.037] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 06:54:17.038] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.27456ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 169cc1ea-1b70-456b-a141-88575e6a1494 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 06:54:17.040] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.652866ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 169cc1ea-1b70-456b-a141-88575e6a1494 | rows: 6 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 06:54:17.040] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 3.68089ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 169cc1ea-1b70-456b-a141-88575e6a1494 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 06:54:20.726] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 28.38µs | method: OPTIONS | path: /api/v1/roles/pages/1 | request_id: e6e0632d-0bc7-4658-b900-47a5addc9893 | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 06:54:20.735] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 06:54:20.738] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 2.026702ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: d9560706-c639-4732-ac4f-73632442a9cb | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 1 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 06:54:20.739] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.419988ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: d9560706-c639-4732-ac4f-73632442a9cb | rows: 2 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 1
[2026-04-02 06:54:20.739] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 4.264557ms | method: GET | path: /api/v1/roles/pages/1 | request_id: d9560706-c639-4732-ac4f-73632442a9cb | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 06:54:38.573] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 26.27µs | method: OPTIONS | path: /api/v1/roles/pages/2 | request_id: 61bb056a-7f63-4c7b-bb52-2624f4c2fc0d | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 06:54:38.583] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 06:54:38.584] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 975.517µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 93194ca1-1e68-4674-b86a-9fe0eaffd1a2 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 2 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 06:54:38.585] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 246.095µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 93194ca1-1e68-4674-b86a-9fe0eaffd1a2 | rows: 0 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 2
[2026-04-02 06:54:38.585] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.069431ms | method: GET | path: /api/v1/roles/pages/2 | request_id: 93194ca1-1e68-4674-b86a-9fe0eaffd1a2 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 06:54:41.858] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 06:54:41.867] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 7.871136ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 2f833dc7-a99c-458d-87b3-93c9d271457b | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 2 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 06:54:41.869] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.970653ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 2f833dc7-a99c-458d-87b3-93c9d271457b | rows: 1 | service: service-general | sql: UPDATE "role_access"."rol_pages" SET "name"='Login Page Coba',"icon"='layers-minimalistic-line-duotone',"url"='/login-page',"level"=1,"sort"=2,"parent"=NULL,"active"=false,"created_at"=NULL,"updated_at"='2026-04-02 06:54:41.867' WHERE "id" = 2
[2026-04-02 06:54:41.869] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 10.83887ms | method: PUT | path: /api/v1/roles/pages/2 | request_id: 2f833dc7-a99c-458d-87b3-93c9d271457b | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 06:54:41.950] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 06:54:41.951] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 727.742µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b0f1a505-5a5f-4891-9181-38bca4ff2ccf | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 06:54:41.952] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 580.449µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: b0f1a505-5a5f-4891-9181-38bca4ff2ccf | rows: 5 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 06:54:41.952] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.282668ms | method: GET | path: /api/v1/roles/pages/tree | request_id: b0f1a505-5a5f-4891-9181-38bca4ff2ccf | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:17:18.584] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 07:17:18.596] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 11.754368ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 3fdf1b85-4060-4950-847a-7ce377d21663 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:17:18.597] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.359269ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 3fdf1b85-4060-4950-847a-7ce377d21663 | rows: 5 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:17:18.597] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 14.248697ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 3fdf1b85-4060-4950-847a-7ce377d21663 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:17:19.312] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 07:17:19.313] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 809.238µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 7072f616-d987-45b8-a356-dbba923f4fb8 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:17:19.313] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 331.079µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 7072f616-d987-45b8-a356-dbba923f4fb8 | rows: 5 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:17:19.313] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 1.972651ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 7072f616-d987-45b8-a356-dbba923f4fb8 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:17:23.922] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 07:17:23.923] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.084016ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 656a66ea-4fb3-459a-b9fb-4b8c0302c347 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:17:23.924] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 404.531µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 656a66ea-4fb3-459a-b9fb-4b8c0302c347 | rows: 5 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:17:23.924] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.269191ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 656a66ea-4fb3-459a-b9fb-4b8c0302c347 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:17:24.263] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 07:17:24.279] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 15.703154ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: af8ecca7-8c7c-49b4-bb82-beaf1ce3432d | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:17:24.280] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 619.784µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: af8ecca7-8c7c-49b4-bb82-beaf1ce3432d | rows: 5 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:17:24.280] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 17.102881ms | method: GET | path: /api/v1/roles/pages/tree | request_id: af8ecca7-8c7c-49b4-bb82-beaf1ce3432d | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:18:13.055] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 07:18:13.056] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.034658ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 0f3fc8c9-e2dc-40a0-9e7b-3ac967a70905 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:18:13.057] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 397.858µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 0f3fc8c9-e2dc-40a0-9e7b-3ac967a70905 | rows: 5 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:18:13.057] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.205126ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 0f3fc8c9-e2dc-40a0-9e7b-3ac967a70905 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:18:33.167] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 07:18:33.169] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.610963ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 40657599-e1f2-417e-af44-f549b18ea2c1 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:18:33.170] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 441.027µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 40657599-e1f2-417e-af44-f549b18ea2c1 | rows: 5 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:18:33.170] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.983704ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 40657599-e1f2-417e-af44-f549b18ea2c1 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:18:33.808] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 07:18:33.809] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 676.464µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 61859564-4988-4ec8-83cd-45183c8dafcc | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:18:33.809] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 374.826µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 61859564-4988-4ec8-83cd-45183c8dafcc | rows: 5 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:18:33.809] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 1.931473ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 61859564-4988-4ec8-83cd-45183c8dafcc | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:19:06.943] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 07:19:06.944] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.4591ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 4240df0b-fa9d-4862-a7fd-ea01626551d1 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:19:06.945] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 643.042µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 4240df0b-fa9d-4862-a7fd-ea01626551d1 | rows: 5 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:19:06.945] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 3.423055ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 4240df0b-fa9d-4862-a7fd-ea01626551d1 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:19:27.960] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 07:19:27.962] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.407295ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 00450c1c-8727-4f86-b753-cd17a24e70fe | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:19:27.962] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 675.926µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 00450c1c-8727-4f86-b753-cd17a24e70fe | rows: 5 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:19:27.963] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.904354ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 00450c1c-8727-4f86-b753-cd17a24e70fe | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:19:30.525] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 07:19:30.526] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 774.552µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 4f0117b9-78d2-4913-993e-f82a8b6d8335 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:19:30.527] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 386.694µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 4f0117b9-78d2-4913-993e-f82a8b6d8335 | rows: 5 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:19:30.527] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 1.877303ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 4f0117b9-78d2-4913-993e-f82a8b6d8335 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:19:33.983] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 07:19:33.984] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.372219ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 1ded9243-072f-4d7d-b589-73d05c65bef5 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:19:33.985] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 520.813µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 1ded9243-072f-4d7d-b589-73d05c65bef5 | rows: 5 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:19:33.985] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.688454ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 1ded9243-072f-4d7d-b589-73d05c65bef5 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:19:37.423] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 07:19:37.425] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.263391ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: abe5eb94-fa97-48c7-a2f8-0c1273abe4a5 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:19:37.425] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 457.702µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: abe5eb94-fa97-48c7-a2f8-0c1273abe4a5 | rows: 5 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:19:37.425] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.464028ms | method: GET | path: /api/v1/roles/pages/tree | request_id: abe5eb94-fa97-48c7-a2f8-0c1273abe4a5 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:19:47.036] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 07:19:47.038] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.071273ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 80c4c899-00d4-4075-bcd5-846a9fc6d3cf | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:19:47.038] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 568.804µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 80c4c899-00d4-4075-bcd5-846a9fc6d3cf | rows: 5 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:19:47.038] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.410097ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 80c4c899-00d4-4075-bcd5-846a9fc6d3cf | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:20:04.922] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 34.593µs | method: OPTIONS | path: /api/v1/roles/pages/9 | request_id: 03a017d0-b839-4c03-a699-619eb4c3d2a2 | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:20:05.518] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 07:20:05.520] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.838459ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: e10e4475-6e21-4737-88c3-4ce41a586cb4 | rows: 0 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 9
[2026-04-02 07:20:05.522] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 2.0138ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: e10e4475-6e21-4737-88c3-4ce41a586cb4 | rows: 1 | service: service-general | sql: DELETE FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 9
[2026-04-02 07:20:05.522] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 4.636196ms | method: DELETE | path: /api/v1/roles/pages/9 | request_id: e10e4475-6e21-4737-88c3-4ce41a586cb4 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:20:05.637] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 07:20:05.638] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 572.401µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: e8397653-5da6-4350-bc75-ff0c25f21337 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:20:05.639] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 602.188µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: e8397653-5da6-4350-bc75-ff0c25f21337 | rows: 4 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:20:05.639] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.155517ms | method: GET | path: /api/v1/roles/pages/tree | request_id: e8397653-5da6-4350-bc75-ff0c25f21337 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:20:36.376] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 07:20:36.379] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 2.636908ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 3de1a826-e793-46a5-bad0-ce3dc2a3fcbe | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 1 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 07:20:36.380] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 412.524µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 3de1a826-e793-46a5-bad0-ce3dc2a3fcbe | rows: 2 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 1
[2026-04-02 07:20:36.380] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 3.93356ms | method: GET | path: /api/v1/roles/pages/1 | request_id: 3de1a826-e793-46a5-bad0-ce3dc2a3fcbe | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:20:39.153] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 25.581µs | method: OPTIONS | path: /api/v1/roles/pages/4 | request_id: 906863da-f551-442f-965c-87c1608b9cfc | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:20:39.161] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 07:20:39.163] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.11455ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 69ef839d-4acf-4fb1-8fc4-5ec07d7f6852 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 4 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 07:20:39.163] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 496.808µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 69ef839d-4acf-4fb1-8fc4-5ec07d7f6852 | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 4
[2026-04-02 07:20:39.163] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.302601ms | method: GET | path: /api/v1/roles/pages/4 | request_id: 69ef839d-4acf-4fb1-8fc4-5ec07d7f6852 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:22:26.021] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 07:22:26.031] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 10.161869ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 1d11c479-44ad-4394-87ce-7955c306325d | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:22:26.034] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 2.554482ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 1d11c479-44ad-4394-87ce-7955c306325d | rows: 4 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:22:26.034] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 13.637831ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 1d11c479-44ad-4394-87ce-7955c306325d | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:24:02.672] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 07:24:02.673] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 730.376µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 569c9059-4647-46c6-814a-11bfddadbe2f | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:24:02.673] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 304.025µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 569c9059-4647-46c6-814a-11bfddadbe2f | rows: 4 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:24:02.673] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.035062ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 569c9059-4647-46c6-814a-11bfddadbe2f | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:24:44.180] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 07:24:44.181] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.110545ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 7dbe7309-45ca-450f-972d-72442809084d | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:24:44.182] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 606.178µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 7dbe7309-45ca-450f-972d-72442809084d | rows: 4 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:24:44.182] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.604581ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 7dbe7309-45ca-450f-972d-72442809084d | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:33:08.865] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 64.762µs | method: OPTIONS | path: /api/v1/roles/pages/6 | request_id: dbf02b28-72b0-4b2c-aa33-9f48dedfdcae | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:33:08.872] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 07:33:08.882] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 9.934332ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 2a8c76bf-e631-4243-8548-b5facb2a61cd | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 6 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 07:33:08.884] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.397955ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 2a8c76bf-e631-4243-8548-b5facb2a61cd | rows: 0 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 6
[2026-04-02 07:33:08.884] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 12.642486ms | method: GET | path: /api/v1/roles/pages/6 | request_id: 2a8c76bf-e631-4243-8548-b5facb2a61cd | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:33:08.922] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 44.61µs | method: OPTIONS | path: /api/v1/roles/pages | query: filter= | request_id: e8d94acc-6ee5-46a8-96ca-870564523d30 | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:33:08.927] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 48.76µs | method: OPTIONS | path: /api/v1/roles/pages | query: filter= | request_id: 27f1154d-9b35-4cda-841c-64ce68b9fa87 | service: service-general | status: 204 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:33:08.929] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 07:33:08.930] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.218487ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 9820f5ab-471b-4d32-8e92-8e50d8f5adf6 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:33:08.932] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.116761ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: 9820f5ab-471b-4d32-8e92-8e50d8f5adf6 | rows: 4 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 07:33:08.932] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 3.039581ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: 9820f5ab-471b-4d32-8e92-8e50d8f5adf6 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:33:08.949] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 07:33:08.949] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 608.781µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: f814c4de-60e2-42b5-b1f6-135dc44c0880 | rows: 1 | service: service-general | sql: SELECT count(*) FROM "role_access"."rol_pages" WHERE active = true
[2026-04-02 07:33:08.950] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 342.929µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: f814c4de-60e2-42b5-b1f6-135dc44c0880 | rows: 4 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE active = true LIMIT 10
[2026-04-02 07:33:08.950] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 1.755352ms | method: GET | path: /api/v1/roles/pages | query: filter= | request_id: f814c4de-60e2-42b5-b1f6-135dc44c0880 | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
[2026-04-02 07:33:22.528] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-02 07:33:22.529] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 1.234361ms | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: dfbc99c5-05a8-4225-a4b8-d584dcdee5be | rows: 1 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE "rol_pages"."id" = 1 ORDER BY "rol_pages"."id" LIMIT 1
[2026-04-02 07:33:22.530] [DEBUG] Database query executed | 📍 database.go:169 | duration_ms: 333.648µs | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Trace | request_id: dfbc99c5-05a8-4225-a4b8-d584dcdee5be | rows: 2 | service: service-general | sql: SELECT * FROM "role_access"."rol_pages" WHERE parent = 1
[2026-04-02 07:33:22.530] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 172.15.150.231 | latency: 2.426518ms | method: GET | path: /api/v1/roles/pages/1 | request_id: dfbc99c5-05a8-4225-a4b8-d584dcdee5be | service: service-general | status: 200 | user_agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/146.0.0.0 Safari/537.36
-341
View File
@@ -1,341 +0,0 @@
[2026-04-03 14:03:54.584] [INFO ] Application starting | 📍 main.go:62 | environment: debug | ⚙️ main.main | log_level: debug | service: service-general
[2026-04-03 14:03:54.585] [DEBUG] Config loaded | cache_enabled: true | 📍 main.go:77 | database_count: 3 | environment: debug | ⚙️ main.main | server_mode: debug | service: service-general
[2026-04-03 14:03:54.585] [INFO ] Initializing database service with GORM as primary abstraction... | 📍 database.go:187 | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 14:03:54.585] [INFO ] replacing callback `gorm:create` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-03 14:03:54.585] [INFO ] replacing callback `gorm:update` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-03 14:03:54.608] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 14:03:54.608] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 14:03:54.622] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 14:03:54.622] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 14:03:54.631] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 14:03:54.631] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 14:03:54.631] [INFO ] Found migration files to execute | 📍 database.go:527 | count: 3 | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).runSQLMigrationsForDB | service: service-general
[2026-04-03 14:03:54.632] [WARNI] Database migration completed with issues | 📍 main.go:93 | environment: debug | ❌ ERROR: sql migration failed for default: failed to ensure migration table: failed to create migrations table: ERROR: no schema has been selected to create in (SQLSTATE 3F000) | ⚙️ main.main | service: service-general
[2026-04-03 14:03:54.636] [INFO ] Cache initialized | 📍 main.go:118 | environment: debug | ⚙️ main.main | host: redis | port: 6379 | service: service-general
[2026-04-03 14:03:54.637] [INFO ] Creating authentication providers | auth_type: hybrid | 📍 provider.go:69 | environment: debug | fallback_to: jwt | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | keycloak_enabled: true | keycloak_issuer: https://auth.rssa.top/realms/sandbox | service: service-general | static_tokens_len: 4
[2026-04-03 14:03:54.637] [INFO ] Keycloak provider added for hybrid | 📍 provider.go:97 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | service: service-general
[2026-04-03 14:03:54.637] [INFO ] REST API running | 📍 main.go:184 | environment: debug | ⚙️ main.main.func1 | port: 8094 | service: service-general
[2026-04-03 14:03:54.637] [INFO ] Registered RolPermission gRPC service | 📍 server.go:39 | environment: debug | ⚙️ service/internal/infrastructure/transport/grpc/servers.NewGRPCServer | service: service-general
[2026-04-03 14:03:54.637] [INFO ] Application started successfully | 📍 main.go:246 | environment: debug | ⚙️ main.main | service: service-general
[2026-04-03 14:03:54.638] [INFO ] gRPC Server running | 📍 main.go:212 | environment: debug | ⚙️ main.main.func2 | port: 8095 | service: service-general
[2026-04-03 15:19:31.719] [INFO ] Application starting | 📍 main.go:62 | environment: debug | ⚙️ main.main | log_level: debug | service: service-general
[2026-04-03 15:19:31.719] [DEBUG] Config loaded | cache_enabled: true | 📍 main.go:77 | database_count: 3 | environment: debug | ⚙️ main.main | server_mode: debug | service: service-general
[2026-04-03 15:19:31.720] [INFO ] Initializing database service with GORM as primary abstraction... | 📍 database.go:187 | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 15:19:31.735] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 15:19:31.735] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 15:19:31.735] [INFO ] replacing callback `gorm:create` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-03 15:19:31.736] [INFO ] replacing callback `gorm:update` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-03 15:19:31.758] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 15:19:31.758] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 15:19:31.766] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 15:19:31.766] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 15:19:31.766] [INFO ] Found migration files to execute | 📍 database.go:527 | count: 3 | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).runSQLMigrationsForDB | service: service-general
[2026-04-03 15:19:31.768] [WARNI] Database migration completed with issues | 📍 main.go:93 | environment: debug | ❌ ERROR: sql migration failed for default: failed to ensure migration table: failed to create migrations table: ERROR: no schema has been selected to create in (SQLSTATE 3F000) | ⚙️ main.main | service: service-general
[2026-04-03 15:19:31.773] [INFO ] Cache initialized | 📍 main.go:118 | environment: debug | ⚙️ main.main | host: redis | port: 6379 | service: service-general
[2026-04-03 15:19:31.774] [INFO ] Creating authentication providers | auth_type: hybrid | 📍 provider.go:69 | environment: debug | fallback_to: jwt | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | keycloak_enabled: true | keycloak_issuer: https://auth.rssa.top/realms/sandbox | service: service-general | static_tokens_len: 4
[2026-04-03 15:19:31.774] [INFO ] Keycloak provider added for hybrid | 📍 provider.go:97 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | service: service-general
[2026-04-03 15:19:31.775] [INFO ] Registered RolPermission gRPC service | 📍 server.go:39 | environment: debug | ⚙️ service/internal/infrastructure/transport/grpc/servers.NewGRPCServer | service: service-general
[2026-04-03 15:19:31.775] [INFO ] Application started successfully | 📍 main.go:246 | environment: debug | ⚙️ main.main | service: service-general
[2026-04-03 15:19:31.776] [INFO ] gRPC Server running | 📍 main.go:212 | environment: debug | ⚙️ main.main.func2 | port: 8095 | service: service-general
[2026-04-03 15:19:31.776] [INFO ] REST API running | 📍 main.go:184 | environment: debug | ⚙️ main.main.func1 | port: 8094 | service: service-general
[2026-04-03 22:07:54.608] [INFO ] Application starting | 📍 main.go:62 | environment: debug | ⚙️ main.main | log_level: debug | service: service-general
[2026-04-03 22:07:54.609] [DEBUG] Config loaded | cache_enabled: true | 📍 main.go:77 | database_count: 3 | environment: debug | ⚙️ main.main | server_mode: debug | service: service-general
[2026-04-03 22:07:54.609] [INFO ] Initializing database service with GORM as primary abstraction... | 📍 database.go:187 | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 22:07:54.625] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 22:07:54.625] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 22:07:54.633] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 22:07:54.633] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 22:07:54.634] [INFO ] replacing callback `gorm:create` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-03 22:07:54.634] [INFO ] replacing callback `gorm:update` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-03 22:07:54.657] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 22:07:54.657] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 22:07:54.657] [INFO ] Found migration files to execute | 📍 database.go:527 | count: 3 | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).runSQLMigrationsForDB | service: service-general
[2026-04-03 22:07:54.659] [DEBUG] Migrations table already exists | 📍 database.go:1366 | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).ensureMigrationTable | service: service-general
[2026-04-03 22:07:54.699] [WARNI] Database migration completed with issues | 📍 main.go:93 | environment: debug | ❌ ERROR: sql migration failed for simrs: migration failed at file internal/infrastructure/database/sql/00001_role_pages.sql: failed to execute SQL command: -- Trigger untuk update updated_at
CREATE OR REPLACE FUNCTION update_updated_at_column()
RETURNS TRIGGER AS $
BEGIN
NEW.updated_at = CURRENT_TIMESTAMP, error: ERROR: syntax error at or near "$" (SQLSTATE 42601) | ⚙️ main.main | service: service-general
[2026-04-03 22:07:54.702] [INFO ] Cache initialized | 📍 main.go:118 | environment: debug | ⚙️ main.main | host: redis | port: 6379 | service: service-general
[2026-04-03 22:07:54.702] [INFO ] Creating authentication providers | auth_type: hybrid | 📍 provider.go:69 | environment: debug | fallback_to: jwt | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | keycloak_enabled: true | keycloak_issuer: https://auth.rssa.top/realms/sandbox | service: service-general | static_tokens_len: 4
[2026-04-03 22:07:54.703] [INFO ] Keycloak provider added for hybrid | 📍 provider.go:97 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | service: service-general
[2026-04-03 22:07:54.703] [INFO ] Registered RolPermission gRPC service | 📍 server.go:39 | environment: debug | ⚙️ service/internal/infrastructure/transport/grpc/servers.NewGRPCServer | service: service-general
[2026-04-03 22:07:54.703] [INFO ] REST API running | 📍 main.go:184 | environment: debug | ⚙️ main.main.func1 | port: 8094 | service: service-general
[2026-04-03 22:07:54.703] [INFO ] Application started successfully | 📍 main.go:246 | environment: debug | ⚙️ main.main | service: service-general
[2026-04-03 22:07:54.703] [INFO ] gRPC Server running | 📍 main.go:212 | environment: debug | ⚙️ main.main.func2 | port: 8095 | service: service-general
[2026-04-03 22:09:18.017] [INFO ] Application starting | 📍 main.go:62 | environment: debug | ⚙️ main.main | log_level: debug | service: service-general
[2026-04-03 22:09:18.017] [DEBUG] Config loaded | cache_enabled: true | 📍 main.go:77 | database_count: 3 | environment: debug | ⚙️ main.main | server_mode: debug | service: service-general
[2026-04-03 22:09:18.017] [INFO ] Initializing database service with GORM as primary abstraction... | 📍 database.go:187 | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 22:09:18.017] [INFO ] replacing callback `gorm:create` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-03 22:09:18.017] [INFO ] replacing callback `gorm:update` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-03 22:09:18.038] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 22:09:18.038] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 22:09:18.049] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 22:09:18.049] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 22:09:18.057] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 22:09:18.057] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 22:09:18.057] [INFO ] Found migration files to execute | 📍 database.go:527 | count: 3 | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).runSQLMigrationsForDB | service: service-general
[2026-04-03 22:09:18.059] [DEBUG] Migrations table already exists | 📍 database.go:1366 | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).ensureMigrationTable | service: service-general
[2026-04-03 22:09:18.081] [WARNI] Database migration completed with issues | 📍 main.go:93 | environment: debug | ❌ ERROR: sql migration failed for simrs: migration failed at file internal/infrastructure/database/sql/00001_role_pages.sql: failed to execute SQL command: -- Trigger untuk update updated_at
CREATE OR REPLACE FUNCTION update_updated_at_column()
RETURNS TRIGGER AS $
BEGIN
NEW.updated_at = CURRENT_TIMESTAMP, error: ERROR: syntax error at or near "$" (SQLSTATE 42601) | ⚙️ main.main | service: service-general
[2026-04-03 22:09:18.084] [INFO ] Cache initialized | 📍 main.go:118 | environment: debug | ⚙️ main.main | host: redis | port: 6379 | service: service-general
[2026-04-03 22:09:18.084] [INFO ] Creating authentication providers | auth_type: hybrid | 📍 provider.go:69 | environment: debug | fallback_to: jwt | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | keycloak_enabled: true | keycloak_issuer: https://auth.rssa.top/realms/sandbox | service: service-general | static_tokens_len: 4
[2026-04-03 22:09:18.085] [INFO ] Keycloak provider added for hybrid | 📍 provider.go:97 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | service: service-general
[2026-04-03 22:09:18.085] [INFO ] Registered RolPermission gRPC service | 📍 server.go:39 | environment: debug | ⚙️ service/internal/infrastructure/transport/grpc/servers.NewGRPCServer | service: service-general
[2026-04-03 22:09:18.085] [INFO ] Application started successfully | 📍 main.go:246 | environment: debug | ⚙️ main.main | service: service-general
[2026-04-03 22:09:18.085] [INFO ] REST API running | 📍 main.go:184 | environment: debug | ⚙️ main.main.func1 | port: 8094 | service: service-general
[2026-04-03 22:09:18.085] [INFO ] gRPC Server running | 📍 main.go:212 | environment: debug | ⚙️ main.main.func2 | port: 8095 | service: service-general
[2026-04-03 22:26:18.781] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 1.576273ms | method: GET | path: /health | request_id: 125ea2d9-9a40-47f2-9995-9cebd10b3f41 | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 22:28:06.795] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 1.168906ms | method: GET | path: /api/v1/roles/pages | query: filter | request_id: 42b80e64-273f-4909-ad1c-f685b6651775 | service: service-general | status: 401 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 22:28:11.437] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 1.397646ms | method: POST | path: /api/v1/auth/login | request_id: 033e727b-1f3f-4203-8249-4c38fde8231f | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 22:28:13.738] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-03 22:28:13.751] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 13.914107ms | method: GET | path: /api/v1/roles/pages | query: filter | request_id: c878dc03-fea2-457c-a6ce-646eda0016ea | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 22:30:59.086] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-03 22:30:59.086] [DEBUG] Cache hit for Role Pages Search | 📍 service.go:97 | environment: debug | ⚙️ service/internal/master/role/pages.(*service).Search | key: role_pages_search:0e43c0356c7b0edb8709d9e3a9ded96ebe4e2bf019fec58ab78fa4d402ccb287 | service: service-general
[2026-04-03 22:30:59.086] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 1.121127ms | method: GET | path: /api/v1/roles/pages | query: filter | request_id: 56a18575-7448-4d01-b4a1-faa9998a2256 | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 22:31:06.550] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-03 22:31:06.550] [INFO ] Search request | 📍 rol_pages_handler.go:116 | environment: debug | filters: map[Name:Coba] | ⚙️ service/internal/infrastructure/transport/http/handlers.(*RolPagesHandler).Search | limit: 10 | page: 1 | request_id: affbd782-3ec9-41aa-bba8-3df74b336f8c | service: service-general | sorts: []
[2026-04-03 22:31:06.554] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 4.564387ms | method: GET | path: /api/v1/roles/pages/search | query: Name=Coba | request_id: affbd782-3ec9-41aa-bba8-3df74b336f8c | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 23:07:07.915] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-03 23:07:07.915] [INFO ] Search request | 📍 rol_pages_handler.go:116 | environment: debug | filters: map[Name:Coba] | ⚙️ service/internal/infrastructure/transport/http/handlers.(*RolPagesHandler).Search | limit: 10 | page: 1 | request_id: ee42e26e-a8ac-4b7e-b9ea-bc683b80ef52 | service: service-general | sorts: []
[2026-04-03 23:07:07.928] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 14.549086ms | method: GET | path: /api/v1/roles/pages/search | query: Name=Coba | request_id: ee42e26e-a8ac-4b7e-b9ea-bc683b80ef52 | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 23:10:45.680] [INFO ] Application starting | 📍 main.go:62 | environment: debug | ⚙️ main.main | log_level: debug | service: service-general
[2026-04-03 23:10:45.680] [DEBUG] Config loaded | cache_enabled: true | 📍 main.go:77 | database_count: 3 | environment: debug | ⚙️ main.main | server_mode: debug | service: service-general
[2026-04-03 23:10:45.680] [INFO ] Initializing database service with GORM as primary abstraction... | 📍 database.go:187 | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:10:45.690] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 23:10:45.690] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:10:45.698] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 23:10:45.698] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:10:45.698] [INFO ] replacing callback `gorm:create` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-03 23:10:45.698] [INFO ] replacing callback `gorm:update` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-03 23:10:45.718] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 23:10:45.718] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:10:45.718] [INFO ] Found migration files to execute | 📍 database.go:527 | count: 3 | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).runSQLMigrationsForDB | service: service-general
[2026-04-03 23:10:45.720] [DEBUG] Migrations table already exists | 📍 database.go:1366 | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).ensureMigrationTable | service: service-general
[2026-04-03 23:10:45.745] [WARNI] Database migration completed with issues | 📍 main.go:93 | environment: debug | ❌ ERROR: sql migration failed for simrs: migration failed at file internal/infrastructure/database/sql/00001_role_pages.sql: failed to execute SQL command: -- Trigger untuk update updated_at
CREATE OR REPLACE FUNCTION update_updated_at_column()
RETURNS TRIGGER AS $
BEGIN
NEW.updated_at = CURRENT_TIMESTAMP, error: ERROR: syntax error at or near "$" (SQLSTATE 42601) | ⚙️ main.main | service: service-general
[2026-04-03 23:10:45.747] [INFO ] Cache initialized | 📍 main.go:118 | environment: debug | ⚙️ main.main | host: redis | port: 6379 | service: service-general
[2026-04-03 23:10:45.748] [INFO ] Creating authentication providers | auth_type: hybrid | 📍 provider.go:69 | environment: debug | fallback_to: jwt | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | keycloak_enabled: true | keycloak_issuer: https://auth.rssa.top/realms/sandbox | service: service-general | static_tokens_len: 4
[2026-04-03 23:10:45.748] [INFO ] Keycloak provider added for hybrid | 📍 provider.go:97 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | service: service-general
[2026-04-03 23:10:45.748] [INFO ] Registered RolPermission gRPC service | 📍 server.go:39 | environment: debug | ⚙️ service/internal/infrastructure/transport/grpc/servers.NewGRPCServer | service: service-general
[2026-04-03 23:10:45.748] [INFO ] REST API running | 📍 main.go:184 | environment: debug | ⚙️ main.main.func1 | port: 8094 | service: service-general
[2026-04-03 23:10:45.749] [INFO ] Application started successfully | 📍 main.go:246 | environment: debug | ⚙️ main.main | service: service-general
[2026-04-03 23:10:45.749] [INFO ] gRPC Server running | 📍 main.go:212 | environment: debug | ⚙️ main.main.func2 | port: 8095 | service: service-general
[2026-04-03 23:11:10.404] [INFO ] Application starting | 📍 main.go:62 | environment: debug | ⚙️ main.main | log_level: debug | service: service-general
[2026-04-03 23:11:10.404] [DEBUG] Config loaded | cache_enabled: true | 📍 main.go:77 | database_count: 3 | environment: debug | ⚙️ main.main | server_mode: debug | service: service-general
[2026-04-03 23:11:10.404] [INFO ] Initializing database service with GORM as primary abstraction... | 📍 database.go:187 | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:11:10.414] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 23:11:10.414] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:11:10.414] [INFO ] replacing callback `gorm:create` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-03 23:11:10.414] [INFO ] replacing callback `gorm:update` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-03 23:11:10.434] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 23:11:10.434] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:11:10.442] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 23:11:10.442] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:11:10.442] [INFO ] Found migration files to execute | 📍 database.go:527 | count: 3 | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).runSQLMigrationsForDB | service: service-general
[2026-04-03 23:11:10.443] [WARNI] Database migration completed with issues | 📍 main.go:93 | environment: debug | ❌ ERROR: sql migration failed for farmasi: failed to ensure migration table: failed to create migrations table: mssql: Incorrect syntax near 'Migrations'. | ⚙️ main.main | service: service-general
[2026-04-03 23:11:10.446] [INFO ] Cache initialized | 📍 main.go:118 | environment: debug | ⚙️ main.main | host: redis | port: 6379 | service: service-general
[2026-04-03 23:11:10.446] [INFO ] Creating authentication providers | auth_type: hybrid | 📍 provider.go:69 | environment: debug | fallback_to: jwt | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | keycloak_enabled: true | keycloak_issuer: https://auth.rssa.top/realms/sandbox | service: service-general | static_tokens_len: 4
[2026-04-03 23:11:10.446] [INFO ] Keycloak provider added for hybrid | 📍 provider.go:97 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | service: service-general
[2026-04-03 23:11:10.447] [INFO ] Registered RolPermission gRPC service | 📍 server.go:39 | environment: debug | ⚙️ service/internal/infrastructure/transport/grpc/servers.NewGRPCServer | service: service-general
[2026-04-03 23:11:10.447] [INFO ] REST API running | 📍 main.go:184 | environment: debug | ⚙️ main.main.func1 | port: 8094 | service: service-general
[2026-04-03 23:11:10.447] [INFO ] Application started successfully | 📍 main.go:246 | environment: debug | ⚙️ main.main | service: service-general
[2026-04-03 23:11:10.447] [INFO ] gRPC Server running | 📍 main.go:212 | environment: debug | ⚙️ main.main.func2 | port: 8095 | service: service-general
[2026-04-03 23:11:14.488] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-03 23:11:14.488] [INFO ] Search request | 📍 rol_pages_handler.go:116 | environment: debug | filters: map[name:Coba] | ⚙️ service/internal/infrastructure/transport/http/handlers.(*RolPagesHandler).Search | limit: 10 | page: 1 | request_id: e19e878c-99b6-4ecd-99d4-e2d0fcd965d0 | service: service-general | sorts: []
[2026-04-03 23:11:14.490] [ERROR] HTTP Request | 📍 middleware.go:173 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 2.297603ms | method: GET | path: /api/v1/roles/pages/search | query: name=Coba | request_id: e19e878c-99b6-4ecd-99d4-e2d0fcd965d0 | service: service-general | status: 500 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 23:14:31.609] [INFO ] Application starting | 📍 main.go:62 | environment: debug | ⚙️ main.main | log_level: debug | service: service-general
[2026-04-03 23:14:31.610] [DEBUG] Config loaded | cache_enabled: true | 📍 main.go:77 | database_count: 3 | environment: debug | ⚙️ main.main | server_mode: debug | service: service-general
[2026-04-03 23:14:31.610] [INFO ] Initializing database service with GORM as primary abstraction... | 📍 database.go:187 | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:14:31.619] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 23:14:31.619] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:14:31.627] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 23:14:31.627] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:14:31.628] [INFO ] replacing callback `gorm:create` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-03 23:14:31.628] [INFO ] replacing callback `gorm:update` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-03 23:14:31.647] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 23:14:31.648] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:14:31.648] [INFO ] Found migration files to execute | 📍 database.go:527 | count: 3 | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).runSQLMigrationsForDB | service: service-general
[2026-04-03 23:14:31.649] [DEBUG] Migrations table already exists | 📍 database.go:1366 | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).ensureMigrationTable | service: service-general
[2026-04-03 23:14:31.674] [WARNI] Database migration completed with issues | 📍 main.go:93 | environment: debug | ❌ ERROR: sql migration failed for simrs: migration failed at file internal/infrastructure/database/sql/00001_role_pages.sql: failed to execute SQL command: -- Trigger untuk update updated_at
CREATE OR REPLACE FUNCTION update_updated_at_column()
RETURNS TRIGGER AS $
BEGIN
NEW.updated_at = CURRENT_TIMESTAMP, error: ERROR: syntax error at or near "$" (SQLSTATE 42601) | ⚙️ main.main | service: service-general
[2026-04-03 23:14:31.676] [INFO ] Cache initialized | 📍 main.go:118 | environment: debug | ⚙️ main.main | host: redis | port: 6379 | service: service-general
[2026-04-03 23:14:31.676] [INFO ] Creating authentication providers | auth_type: hybrid | 📍 provider.go:69 | environment: debug | fallback_to: jwt | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | keycloak_enabled: true | keycloak_issuer: https://auth.rssa.top/realms/sandbox | service: service-general | static_tokens_len: 4
[2026-04-03 23:14:31.677] [INFO ] Keycloak provider added for hybrid | 📍 provider.go:97 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | service: service-general
[2026-04-03 23:14:31.677] [INFO ] REST API running | 📍 main.go:184 | environment: debug | ⚙️ main.main.func1 | port: 8094 | service: service-general
[2026-04-03 23:14:31.677] [INFO ] Registered RolPermission gRPC service | 📍 server.go:39 | environment: debug | ⚙️ service/internal/infrastructure/transport/grpc/servers.NewGRPCServer | service: service-general
[2026-04-03 23:14:31.677] [INFO ] Application started successfully | 📍 main.go:246 | environment: debug | ⚙️ main.main | service: service-general
[2026-04-03 23:14:31.677] [INFO ] gRPC Server running | 📍 main.go:212 | environment: debug | ⚙️ main.main.func2 | port: 8095 | service: service-general
[2026-04-03 23:14:32.296] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-03 23:14:32.296] [INFO ] Search request | 📍 rol_pages_handler.go:116 | environment: debug | filters: map[name:Coba] | ⚙️ service/internal/infrastructure/transport/http/handlers.(*RolPagesHandler).Search | limit: 10 | page: 1 | request_id: e83d9bdc-84ea-4046-8410-289359e15363 | service: service-general | sorts: []
[2026-04-03 23:14:32.302] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 7.195202ms | method: GET | path: /api/v1/roles/pages/search | query: name=Coba | request_id: e83d9bdc-84ea-4046-8410-289359e15363 | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 23:14:40.717] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-03 23:14:40.717] [INFO ] Search request | 📍 rol_pages_handler.go:116 | environment: debug | filters: map[name:page] | ⚙️ service/internal/infrastructure/transport/http/handlers.(*RolPagesHandler).Search | limit: 10 | page: 1 | request_id: ece63bbb-78c0-47d6-b770-5906e97a9fba | service: service-general | sorts: []
[2026-04-03 23:14:40.720] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 3.935696ms | method: GET | path: /api/v1/roles/pages/search | query: name=page | request_id: ece63bbb-78c0-47d6-b770-5906e97a9fba | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 23:14:48.823] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-03 23:14:48.824] [INFO ] Search request | 📍 rol_pages_handler.go:116 | environment: debug | filters: map[name:login] | ⚙️ service/internal/infrastructure/transport/http/handlers.(*RolPagesHandler).Search | limit: 10 | page: 1 | request_id: 9655c15e-9931-41c9-a81d-c81dcddba65f | service: service-general | sorts: []
[2026-04-03 23:14:48.826] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 2.575486ms | method: GET | path: /api/v1/roles/pages/search | query: name=login | request_id: 9655c15e-9931-41c9-a81d-c81dcddba65f | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 23:15:01.600] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-03 23:15:01.600] [INFO ] Search request | 📍 rol_pages_handler.go:116 | environment: debug | filters: map[level:2 name:login] | ⚙️ service/internal/infrastructure/transport/http/handlers.(*RolPagesHandler).Search | limit: 10 | page: 1 | request_id: 8e87ff2c-dcd9-46fc-a673-9aab5fc53ebc | service: service-general | sorts: []
[2026-04-03 23:15:01.602] [ERROR] HTTP Request | 📍 middleware.go:173 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 2.157553ms | method: GET | path: /api/v1/roles/pages/search | query: name=login&level=2 | request_id: 8e87ff2c-dcd9-46fc-a673-9aab5fc53ebc | service: service-general | status: 500 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 23:16:42.015] [INFO ] Application starting | 📍 main.go:62 | environment: debug | ⚙️ main.main | log_level: debug | service: service-general
[2026-04-03 23:16:42.016] [DEBUG] Config loaded | cache_enabled: true | 📍 main.go:77 | database_count: 3 | environment: debug | ⚙️ main.main | server_mode: debug | service: service-general
[2026-04-03 23:16:42.016] [INFO ] Initializing database service with GORM as primary abstraction... | 📍 database.go:187 | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:16:42.016] [INFO ] replacing callback `gorm:create` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-03 23:16:42.016] [INFO ] replacing callback `gorm:update` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-03 23:16:42.036] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 23:16:42.036] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:16:42.045] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 23:16:42.045] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:16:42.052] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 23:16:42.052] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:16:42.052] [INFO ] Found migration files to execute | 📍 database.go:527 | count: 3 | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).runSQLMigrationsForDB | service: service-general
[2026-04-03 23:16:42.054] [WARNI] Database migration completed with issues | 📍 main.go:93 | environment: debug | ❌ ERROR: sql migration failed for farmasi: failed to ensure migration table: failed to create migrations table: mssql: Incorrect syntax near 'Migrations'. | ⚙️ main.main | service: service-general
[2026-04-03 23:16:42.056] [INFO ] Cache initialized | 📍 main.go:118 | environment: debug | ⚙️ main.main | host: redis | port: 6379 | service: service-general
[2026-04-03 23:16:42.057] [INFO ] Creating authentication providers | auth_type: hybrid | 📍 provider.go:69 | environment: debug | fallback_to: jwt | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | keycloak_enabled: true | keycloak_issuer: https://auth.rssa.top/realms/sandbox | service: service-general | static_tokens_len: 4
[2026-04-03 23:16:42.057] [INFO ] Keycloak provider added for hybrid | 📍 provider.go:97 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | service: service-general
[2026-04-03 23:16:42.057] [INFO ] Registered RolPermission gRPC service | 📍 server.go:39 | environment: debug | ⚙️ service/internal/infrastructure/transport/grpc/servers.NewGRPCServer | service: service-general
[2026-04-03 23:16:42.057] [INFO ] Application started successfully | 📍 main.go:246 | environment: debug | ⚙️ main.main | service: service-general
[2026-04-03 23:16:42.057] [INFO ] gRPC Server running | 📍 main.go:212 | environment: debug | ⚙️ main.main.func2 | port: 8095 | service: service-general
[2026-04-03 23:16:42.058] [INFO ] REST API running | 📍 main.go:184 | environment: debug | ⚙️ main.main.func1 | port: 8094 | service: service-general
[2026-04-03 23:16:51.834] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-03 23:16:51.835] [INFO ] Search request | 📍 rol_pages_handler.go:118 | environment: debug | filters: map[level:2 name:login] | ⚙️ service/internal/infrastructure/transport/http/handlers.(*RolPagesHandler).Search | limit: 10 | page: 1 | request_id: bca3e2a1-37a0-4919-8688-a9f5bb5830ed | service: service-general | sorts: []
[2026-04-03 23:16:51.841] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 7.611136ms | method: GET | path: /api/v1/roles/pages/search | query: name=login&level=2 | request_id: bca3e2a1-37a0-4919-8688-a9f5bb5830ed | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 23:16:58.081] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-03 23:16:58.081] [INFO ] Search request | 📍 rol_pages_handler.go:118 | environment: debug | filters: map[level:2] | ⚙️ service/internal/infrastructure/transport/http/handlers.(*RolPagesHandler).Search | limit: 10 | page: 1 | request_id: 9c82d926-13f0-4371-9f36-65c378e6e397 | service: service-general | sorts: []
[2026-04-03 23:16:58.085] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 4.119287ms | method: GET | path: /api/v1/roles/pages/search | query: level=2 | request_id: 9c82d926-13f0-4371-9f36-65c378e6e397 | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 23:17:06.317] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-03 23:17:06.318] [INFO ] Search request | 📍 rol_pages_handler.go:118 | environment: debug | filters: map[level:1] | ⚙️ service/internal/infrastructure/transport/http/handlers.(*RolPagesHandler).Search | limit: 10 | page: 1 | request_id: 1154c825-b5e0-4f14-9d2a-abcc273224de | service: service-general | sorts: []
[2026-04-03 23:17:06.320] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 2.856662ms | method: GET | path: /api/v1/roles/pages/search | query: level=1 | request_id: 1154c825-b5e0-4f14-9d2a-abcc273224de | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 23:17:12.891] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-03 23:17:12.891] [INFO ] Search request | 📍 rol_pages_handler.go:118 | environment: debug | filters: map[level:3] | ⚙️ service/internal/infrastructure/transport/http/handlers.(*RolPagesHandler).Search | limit: 10 | page: 1 | request_id: 14487cd0-f3c1-4d89-85f2-75abf485eb2f | service: service-general | sorts: []
[2026-04-03 23:17:12.893] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 2.249283ms | method: GET | path: /api/v1/roles/pages/search | query: level=3 | request_id: 14487cd0-f3c1-4d89-85f2-75abf485eb2f | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 23:17:26.749] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-03 23:17:26.750] [INFO ] Search request | 📍 rol_pages_handler.go:118 | environment: debug | filters: map[level:3 name:login] | ⚙️ service/internal/infrastructure/transport/http/handlers.(*RolPagesHandler).Search | limit: 10 | page: 1 | request_id: 23200ba6-0f3f-4a83-9c3b-b9e160d9103a | service: service-general | sorts: []
[2026-04-03 23:17:26.813] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 64.078466ms | method: GET | path: /api/v1/roles/pages/search | query: name=login&level=3 | request_id: 23200ba6-0f3f-4a83-9c3b-b9e160d9103a | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 23:17:32.140] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-03 23:17:32.140] [INFO ] Search request | 📍 rol_pages_handler.go:118 | environment: debug | filters: map[level:3 name:login] | ⚙️ service/internal/infrastructure/transport/http/handlers.(*RolPagesHandler).Search | limit: 10 | page: 1 | request_id: 555c81b4-a606-49de-9e5a-40c0327856f7 | service: service-general | sorts: []
[2026-04-03 23:17:32.141] [DEBUG] Cache hit for Role Pages Search | 📍 service.go:97 | environment: debug | ⚙️ service/internal/master/role/pages.(*service).Search | key: role_pages_search:cec284b3278175080179d3a0641ae06982edc994059e5803fcdaf9a6dd4c5531 | service: service-general
[2026-04-03 23:17:32.141] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 851.559µs | method: GET | path: /api/v1/roles/pages/search | query: name=login&level=3 | request_id: 555c81b4-a606-49de-9e5a-40c0327856f7 | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 23:17:35.748] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-03 23:17:35.748] [INFO ] Search request | 📍 rol_pages_handler.go:118 | environment: debug | filters: map[name:login] | ⚙️ service/internal/infrastructure/transport/http/handlers.(*RolPagesHandler).Search | limit: 10 | page: 1 | request_id: 3dc3f149-5677-4734-91a7-27593ac9863f | service: service-general | sorts: []
[2026-04-03 23:17:35.748] [DEBUG] Cache hit for Role Pages Search | 📍 service.go:97 | environment: debug | ⚙️ service/internal/master/role/pages.(*service).Search | key: role_pages_search:98e87cb9ba7d3f5f1614ea7e7ae5d8c52713d6bb7cf60779409eceb4ea5eb56c | service: service-general
[2026-04-03 23:17:35.748] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 715.236µs | method: GET | path: /api/v1/roles/pages/search | query: name=login | request_id: 3dc3f149-5677-4734-91a7-27593ac9863f | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 23:19:27.613] [INFO ] Application starting | 📍 main.go:62 | environment: debug | ⚙️ main.main | log_level: debug | service: service-general
[2026-04-03 23:19:27.614] [DEBUG] Config loaded | cache_enabled: true | 📍 main.go:77 | database_count: 3 | environment: debug | ⚙️ main.main | server_mode: debug | service: service-general
[2026-04-03 23:19:27.614] [INFO ] Initializing database service with GORM as primary abstraction... | 📍 database.go:187 | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:19:27.623] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 23:19:27.624] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:19:27.631] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 23:19:27.631] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:19:27.631] [INFO ] replacing callback `gorm:create` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-03 23:19:27.631] [INFO ] replacing callback `gorm:update` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-03 23:19:27.653] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 23:19:27.653] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:19:27.653] [INFO ] Found migration files to execute | 📍 database.go:527 | count: 3 | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).runSQLMigrationsForDB | service: service-general
[2026-04-03 23:19:27.654] [DEBUG] Migrations table already exists | 📍 database.go:1366 | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).ensureMigrationTable | service: service-general
[2026-04-03 23:19:27.685] [WARNI] Database migration completed with issues | 📍 main.go:93 | environment: debug | ❌ ERROR: sql migration failed for simrs: migration failed at file internal/infrastructure/database/sql/00001_role_pages.sql: failed to execute SQL command: -- Trigger untuk update updated_at
CREATE OR REPLACE FUNCTION update_updated_at_column()
RETURNS TRIGGER AS $
BEGIN
NEW.updated_at = CURRENT_TIMESTAMP, error: ERROR: syntax error at or near "$" (SQLSTATE 42601) | ⚙️ main.main | service: service-general
[2026-04-03 23:19:27.687] [INFO ] Cache initialized | 📍 main.go:118 | environment: debug | ⚙️ main.main | host: redis | port: 6379 | service: service-general
[2026-04-03 23:19:27.687] [INFO ] Creating authentication providers | auth_type: hybrid | 📍 provider.go:69 | environment: debug | fallback_to: jwt | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | keycloak_enabled: true | keycloak_issuer: https://auth.rssa.top/realms/sandbox | service: service-general | static_tokens_len: 4
[2026-04-03 23:19:27.687] [INFO ] Keycloak provider added for hybrid | 📍 provider.go:97 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | service: service-general
[2026-04-03 23:19:27.688] [INFO ] Registered RolPermission gRPC service | 📍 server.go:39 | environment: debug | ⚙️ service/internal/infrastructure/transport/grpc/servers.NewGRPCServer | service: service-general
[2026-04-03 23:19:27.688] [INFO ] Application started successfully | 📍 main.go:246 | environment: debug | ⚙️ main.main | service: service-general
[2026-04-03 23:19:27.688] [INFO ] gRPC Server running | 📍 main.go:212 | environment: debug | ⚙️ main.main.func2 | port: 8095 | service: service-general
[2026-04-03 23:19:27.688] [INFO ] REST API running | 📍 main.go:184 | environment: debug | ⚙️ main.main.func1 | port: 8094 | service: service-general
[2026-04-03 23:30:02.382] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 1.150719ms | method: GET | path: /api/v1/roles/pages/search | query: name=login | request_id: a6576fbd-9d25-40fa-81ea-abdcbdb85686 | service: service-general | status: 401 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 23:43:30.269] [INFO ] Application starting | 📍 main.go:62 | environment: debug | ⚙️ main.main | log_level: debug | service: service-general
[2026-04-03 23:43:30.269] [DEBUG] Config loaded | cache_enabled: true | 📍 main.go:77 | database_count: 3 | environment: debug | ⚙️ main.main | server_mode: debug | service: service-general
[2026-04-03 23:43:30.270] [INFO ] Initializing database service with GORM as primary abstraction... | 📍 database.go:187 | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:43:30.279] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 23:43:30.279] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:43:30.286] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 23:43:30.287] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:43:30.287] [INFO ] replacing callback `gorm:create` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-03 23:43:30.287] [INFO ] replacing callback `gorm:update` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-03 23:43:30.303] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 23:43:30.303] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:43:30.303] [INFO ] Found migration files to execute | 📍 database.go:527 | count: 3 | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).runSQLMigrationsForDB | service: service-general
[2026-04-03 23:43:30.304] [DEBUG] Migrations table already exists | 📍 database.go:1366 | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).ensureMigrationTable | service: service-general
[2026-04-03 23:43:30.330] [WARNI] Database migration completed with issues | 📍 main.go:93 | environment: debug | ❌ ERROR: sql migration failed for simrs: migration failed at file internal/infrastructure/database/sql/00001_role_pages.sql: failed to execute SQL command: -- Trigger untuk update updated_at
CREATE OR REPLACE FUNCTION update_updated_at_column()
RETURNS TRIGGER AS $
BEGIN
NEW.updated_at = CURRENT_TIMESTAMP, error: ERROR: syntax error at or near "$" (SQLSTATE 42601) | ⚙️ main.main | service: service-general
[2026-04-03 23:43:30.332] [INFO ] Cache initialized | 📍 main.go:118 | environment: debug | ⚙️ main.main | host: redis | port: 6379 | service: service-general
[2026-04-03 23:43:30.333] [INFO ] Creating authentication providers | auth_type: hybrid | 📍 provider.go:69 | environment: debug | fallback_to: jwt | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | keycloak_enabled: true | keycloak_issuer: https://auth.rssa.top/realms/sandbox | service: service-general | static_tokens_len: 4
[2026-04-03 23:43:30.333] [INFO ] Keycloak provider added for hybrid | 📍 provider.go:97 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | service: service-general
[2026-04-03 23:43:30.334] [INFO ] Registered RolPermission gRPC service | 📍 server.go:39 | environment: debug | ⚙️ service/internal/infrastructure/transport/grpc/servers.NewGRPCServer | service: service-general
[2026-04-03 23:43:30.334] [INFO ] Application started successfully | 📍 main.go:246 | environment: debug | ⚙️ main.main | service: service-general
[2026-04-03 23:43:30.334] [INFO ] REST API running | 📍 main.go:184 | environment: debug | ⚙️ main.main.func1 | port: 8094 | service: service-general
[2026-04-03 23:43:30.334] [INFO ] gRPC Server running | 📍 main.go:212 | environment: debug | ⚙️ main.main.func2 | port: 8095 | service: service-general
[2026-04-03 23:43:32.781] [INFO ] Application starting | 📍 main.go:62 | environment: debug | ⚙️ main.main | log_level: debug | service: service-general
[2026-04-03 23:43:32.781] [DEBUG] Config loaded | cache_enabled: true | 📍 main.go:77 | database_count: 3 | environment: debug | ⚙️ main.main | server_mode: debug | service: service-general
[2026-04-03 23:43:32.782] [INFO ] Initializing database service with GORM as primary abstraction... | 📍 database.go:187 | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:43:32.790] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 23:43:32.790] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:43:32.798] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 23:43:32.798] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:43:32.798] [INFO ] replacing callback `gorm:create` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-03 23:43:32.798] [INFO ] replacing callback `gorm:update` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-03 23:43:32.819] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-03 23:43:32.819] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-03 23:43:32.819] [INFO ] Found migration files to execute | 📍 database.go:527 | count: 3 | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).runSQLMigrationsForDB | service: service-general
[2026-04-03 23:43:32.820] [DEBUG] Migrations table already exists | 📍 database.go:1366 | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).ensureMigrationTable | service: service-general
[2026-04-03 23:43:32.848] [WARNI] Database migration completed with issues | 📍 main.go:93 | environment: debug | ❌ ERROR: sql migration failed for simrs: migration failed at file internal/infrastructure/database/sql/00001_role_pages.sql: failed to execute SQL command: -- Trigger untuk update updated_at
CREATE OR REPLACE FUNCTION update_updated_at_column()
RETURNS TRIGGER AS $
BEGIN
NEW.updated_at = CURRENT_TIMESTAMP, error: ERROR: syntax error at or near "$" (SQLSTATE 42601) | ⚙️ main.main | service: service-general
[2026-04-03 23:43:32.850] [INFO ] Cache initialized | 📍 main.go:118 | environment: debug | ⚙️ main.main | host: redis | port: 6379 | service: service-general
[2026-04-03 23:43:32.850] [INFO ] Creating authentication providers | auth_type: hybrid | 📍 provider.go:69 | environment: debug | fallback_to: jwt | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | keycloak_enabled: true | keycloak_issuer: https://auth.rssa.top/realms/sandbox | service: service-general | static_tokens_len: 4
[2026-04-03 23:43:32.850] [INFO ] Keycloak provider added for hybrid | 📍 provider.go:97 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | service: service-general
[2026-04-03 23:43:32.851] [INFO ] Registered RolPermission gRPC service | 📍 server.go:39 | environment: debug | ⚙️ service/internal/infrastructure/transport/grpc/servers.NewGRPCServer | service: service-general
[2026-04-03 23:43:32.851] [INFO ] REST API running | 📍 main.go:184 | environment: debug | ⚙️ main.main.func1 | port: 8094 | service: service-general
[2026-04-03 23:43:32.851] [INFO ] Application started successfully | 📍 main.go:246 | environment: debug | ⚙️ main.main | service: service-general
[2026-04-03 23:43:32.852] [INFO ] gRPC Server running | 📍 main.go:212 | environment: debug | ⚙️ main.main.func2 | port: 8095 | service: service-general
[2026-04-03 23:43:44.037] [WARNI] HTTP Request | 📍 middleware.go:175 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 960.489µs | method: GET | path: /api/v1/roles/pages/search | query: name=login | request_id: 2a7157a5-35ce-49e7-aef2-654aa363d543 | service: service-general | status: 401 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 23:43:47.123] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 971.881µs | method: POST | path: /api/v1/auth/login | request_id: 02477feb-4a2f-4edd-aefe-def347cd7f51 | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 23:43:49.365] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-03 23:43:49.365] [INFO ] Search request | 📍 rol_pages_handler.go:118 | environment: debug | filters: map[name:login] | ⚙️ service/internal/infrastructure/transport/http/handlers.(*RolPagesHandler).Search | limit: 10 | page: 1 | request_id: f692856c-9baa-4d7d-9ca7-8dbe054b678d | service: service-general | sorts: []
[2026-04-03 23:43:49.371] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 6.746188ms | method: GET | path: /api/v1/roles/pages/search | query: name=login | request_id: f692856c-9baa-4d7d-9ca7-8dbe054b678d | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 23:44:40.792] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-03 23:44:40.795] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 3.001336ms | method: GET | path: /api/v1/roles/pages | query: filter | request_id: 89b52283-2428-493b-88b1-25679e8b7d74 | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 23:44:43.406] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-03 23:44:43.409] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 3.488125ms | method: GET | path: /api/v1/roles/pages/tree | request_id: 7562e51e-8611-4583-9761-605e9712b0ea | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-03 23:44:59.492] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-03 23:44:59.495] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 3.45836ms | method: GET | path: /api/v1/roles/pages/6 | request_id: b381228e-c8af-4503-829f-dd057066fc34 | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
-85
View File
@@ -1,85 +0,0 @@
[2026-04-04 00:02:15.668] [INFO ] Application starting | 📍 main.go:62 | environment: debug | ⚙️ main.main | log_level: debug | service: service-general
[2026-04-04 00:02:15.668] [DEBUG] Config loaded | cache_enabled: true | 📍 main.go:77 | database_count: 3 | environment: debug | ⚙️ main.main | server_mode: debug | service: service-general
[2026-04-04 00:02:15.668] [INFO ] Initializing database service with GORM as primary abstraction... | 📍 database.go:187 | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-04 00:02:15.678] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-04 00:02:15.678] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-04 00:02:15.686] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-04 00:02:15.686] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-04 00:02:15.686] [INFO ] replacing callback `gorm:create` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-04 00:02:15.686] [INFO ] replacing callback `gorm:update` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-04 00:02:15.706] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-04 00:02:15.706] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-04 00:02:15.706] [INFO ] Found migration files to execute | 📍 database.go:527 | count: 3 | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).runSQLMigrationsForDB | service: service-general
[2026-04-04 00:02:15.707] [DEBUG] Migrations table already exists | 📍 database.go:1366 | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).ensureMigrationTable | service: service-general
[2026-04-04 00:02:15.733] [WARNI] Database migration completed with issues | 📍 main.go:93 | environment: debug | ❌ ERROR: sql migration failed for simrs: migration failed at file internal/infrastructure/database/sql/00001_role_pages.sql: failed to execute SQL command: -- Trigger untuk update updated_at
CREATE OR REPLACE FUNCTION update_updated_at_column()
RETURNS TRIGGER AS $
BEGIN
NEW.updated_at = CURRENT_TIMESTAMP, error: ERROR: syntax error at or near "$" (SQLSTATE 42601) | ⚙️ main.main | service: service-general
[2026-04-04 00:02:15.736] [INFO ] Cache initialized | 📍 main.go:118 | environment: debug | ⚙️ main.main | host: redis | port: 6379 | service: service-general
[2026-04-04 00:02:15.736] [INFO ] Creating authentication providers | auth_type: hybrid | 📍 provider.go:69 | environment: debug | fallback_to: jwt | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | keycloak_enabled: true | keycloak_issuer: https://auth.rssa.top/realms/sandbox | service: service-general | static_tokens_len: 4
[2026-04-04 00:02:15.737] [INFO ] Keycloak provider added for hybrid | 📍 provider.go:97 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | service: service-general
[2026-04-04 00:02:15.737] [INFO ] REST API running | 📍 main.go:184 | environment: debug | ⚙️ main.main.func1 | port: 8094 | service: service-general
[2026-04-04 00:02:15.737] [INFO ] Registered RolPermission gRPC service | 📍 server.go:39 | environment: debug | ⚙️ service/internal/infrastructure/transport/grpc/servers.NewGRPCServer | service: service-general
[2026-04-04 00:02:15.737] [INFO ] Application started successfully | 📍 main.go:246 | environment: debug | ⚙️ main.main | service: service-general
[2026-04-04 00:02:15.737] [INFO ] gRPC Server running | 📍 main.go:212 | environment: debug | ⚙️ main.main.func2 | port: 8095 | service: service-general
[2026-04-04 00:02:19.486] [INFO ] Application starting | 📍 main.go:62 | environment: debug | ⚙️ main.main | log_level: debug | service: service-general
[2026-04-04 00:02:19.486] [DEBUG] Config loaded | cache_enabled: true | 📍 main.go:77 | database_count: 3 | environment: debug | ⚙️ main.main | server_mode: debug | service: service-general
[2026-04-04 00:02:19.486] [INFO ] Initializing database service with GORM as primary abstraction... | 📍 database.go:187 | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-04 00:02:19.494] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-04 00:02:19.494] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-04 00:02:19.501] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-04 00:02:19.501] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-04 00:02:19.502] [INFO ] replacing callback `gorm:create` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-04 00:02:19.502] [INFO ] replacing callback `gorm:update` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-04 00:02:19.524] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-04 00:02:19.524] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-04 00:02:19.524] [INFO ] Found migration files to execute | 📍 database.go:527 | count: 3 | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).runSQLMigrationsForDB | service: service-general
[2026-04-04 00:02:19.525] [DEBUG] Migrations table already exists | 📍 database.go:1366 | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).ensureMigrationTable | service: service-general
[2026-04-04 00:02:19.548] [WARNI] Database migration completed with issues | 📍 main.go:93 | environment: debug | ❌ ERROR: sql migration failed for simrs: migration failed at file internal/infrastructure/database/sql/00001_role_pages.sql: failed to execute SQL command: -- Trigger untuk update updated_at
CREATE OR REPLACE FUNCTION update_updated_at_column()
RETURNS TRIGGER AS $
BEGIN
NEW.updated_at = CURRENT_TIMESTAMP, error: ERROR: syntax error at or near "$" (SQLSTATE 42601) | ⚙️ main.main | service: service-general
[2026-04-04 00:02:19.550] [INFO ] Cache initialized | 📍 main.go:118 | environment: debug | ⚙️ main.main | host: redis | port: 6379 | service: service-general
[2026-04-04 00:02:19.551] [INFO ] Creating authentication providers | auth_type: hybrid | 📍 provider.go:69 | environment: debug | fallback_to: jwt | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | keycloak_enabled: true | keycloak_issuer: https://auth.rssa.top/realms/sandbox | service: service-general | static_tokens_len: 4
[2026-04-04 00:02:19.551] [INFO ] Keycloak provider added for hybrid | 📍 provider.go:97 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | service: service-general
[2026-04-04 00:02:19.551] [INFO ] Registered RolPermission gRPC service | 📍 server.go:39 | environment: debug | ⚙️ service/internal/infrastructure/transport/grpc/servers.NewGRPCServer | service: service-general
[2026-04-04 00:02:19.551] [INFO ] REST API running | 📍 main.go:184 | environment: debug | ⚙️ main.main.func1 | port: 8094 | service: service-general
[2026-04-04 00:02:19.552] [INFO ] Application started successfully | 📍 main.go:246 | environment: debug | ⚙️ main.main | service: service-general
[2026-04-04 00:02:19.552] [INFO ] gRPC Server running | 📍 main.go:212 | environment: debug | ⚙️ main.main.func2 | port: 8095 | service: service-general
[2026-04-04 00:02:21.322] [INFO ] Application starting | 📍 main.go:62 | environment: debug | ⚙️ main.main | log_level: debug | service: service-general
[2026-04-04 00:02:21.322] [DEBUG] Config loaded | cache_enabled: true | 📍 main.go:77 | database_count: 3 | environment: debug | ⚙️ main.main | server_mode: debug | service: service-general
[2026-04-04 00:02:21.322] [INFO ] Initializing database service with GORM as primary abstraction... | 📍 database.go:187 | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-04 00:02:21.332] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-04 00:02:21.332] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-04 00:02:21.339] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-04 00:02:21.339] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-04 00:02:21.340] [INFO ] replacing callback `gorm:create` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-04 00:02:21.340] [INFO ] replacing callback `gorm:update` from /app/internal/infrastructure/database/database.go:453
| 📍 database.go:134 | environment: debug | ⚙️ service/internal/infrastructure/database.(*gormLoggerAdapter).Info | service: service-general
[2026-04-04 00:02:21.359] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:379 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-04 00:02:21.359] [INFO ] Successfully connected to database | 📍 database.go:198 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-04 00:02:21.360] [INFO ] Found migration files to execute | 📍 database.go:527 | count: 3 | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).runSQLMigrationsForDB | service: service-general
[2026-04-04 00:02:21.361] [DEBUG] Migrations table already exists | 📍 database.go:1366 | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).ensureMigrationTable | service: service-general
[2026-04-04 00:02:21.385] [WARNI] Database migration completed with issues | 📍 main.go:93 | environment: debug | ❌ ERROR: sql migration failed for simrs: migration failed at file internal/infrastructure/database/sql/00001_role_pages.sql: failed to execute SQL command: -- Trigger untuk update updated_at
CREATE OR REPLACE FUNCTION update_updated_at_column()
RETURNS TRIGGER AS $
BEGIN
NEW.updated_at = CURRENT_TIMESTAMP, error: ERROR: syntax error at or near "$" (SQLSTATE 42601) | ⚙️ main.main | service: service-general
[2026-04-04 00:02:21.388] [INFO ] Cache initialized | 📍 main.go:118 | environment: debug | ⚙️ main.main | host: redis | port: 6379 | service: service-general
[2026-04-04 00:02:21.388] [INFO ] Creating authentication providers | auth_type: hybrid | 📍 provider.go:69 | environment: debug | fallback_to: jwt | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | keycloak_enabled: true | keycloak_issuer: https://auth.rssa.top/realms/sandbox | service: service-general | static_tokens_len: 4
[2026-04-04 00:02:21.388] [INFO ] Keycloak provider added for hybrid | 📍 provider.go:97 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | service: service-general
[2026-04-04 00:02:21.389] [INFO ] REST API running | 📍 main.go:184 | environment: debug | ⚙️ main.main.func1 | port: 8094 | service: service-general
[2026-04-04 00:02:21.389] [INFO ] Registered RolPermission gRPC service | 📍 server.go:39 | environment: debug | ⚙️ service/internal/infrastructure/transport/grpc/servers.NewGRPCServer | service: service-general
[2026-04-04 00:02:21.389] [INFO ] Application started successfully | 📍 main.go:246 | environment: debug | ⚙️ main.main | service: service-general
[2026-04-04 00:02:21.389] [INFO ] gRPC Server running | 📍 main.go:212 | environment: debug | ⚙️ main.main.func2 | port: 8095 | service: service-general
[2026-04-04 00:02:28.051] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-04 00:02:28.057] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 7.283691ms | method: GET | path: /api/v1/roles/pages/6 | request_id: 8ad6636c-463c-41ee-a5a9-91c4ee5c5554 | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
[2026-04-04 00:02:32.726] [WARNI] Unexpected signing method | alg: HS256 | 📍 provider.go:239 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*KeycloakAuthProvider).ValidateToken.func1 | service: service-general
[2026-04-04 00:02:32.727] [INFO ] HTTP Request | 📍 middleware.go:177 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/servers.NewHTTPServer.LoggingMiddleware.func3 | ip: 10.10.123.84 | latency: 559.139µs | method: GET | path: /api/v1/auth/info | request_id: 08bd12d1-bcfb-40b7-b102-10b05ed882a7 | service: service-general | status: 200 | user_agent: Apidog/1.0.0 (https://apidog.com)
File diff suppressed because it is too large Load Diff
+12
View File
@@ -0,0 +1,12 @@
[2026-04-17 11:40:08.681] [DEBUG] [IMAGING STUDY REPO] RIS Query Generated | args: [12044596 2026-03-11] | 📍 repository.go:150 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*repository).GetNextImagingStudy | query: SELECT nofoto AS `accession_number`, modality AS `modality` FROM `periksa` WHERE (`noregister` = ? AND DATE(daftar) = ?) LIMIT 1 | service: service-general
[2026-04-17 11:40:08.686] [INFO ] [IMAGING STUDY WORKER] 🔄 Memproses Dokumen | 📍 service.go:79 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 12044596 | service: service-general | source_id: f376aa7c-3897-4dc1-8d1b-e673e85e9722
[2026-04-17 11:40:08.686] [WARNI] [IMAGING STUDY WORKER] ⏭️ Skip Dokumen: Accession Number kosong (Data RIS tidak ditemukan) | 📍 service.go:86 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 12044596 | service: service-general | source_id: f376aa7c-3897-4dc1-8d1b-e673e85e9722
[2026-04-17 15:00:08.854] [DEBUG] [IMAGING STUDY REPO] RIS Query Generated | args: [12062109 2026-04-17] | 📍 repository.go:150 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*repository).GetNextImagingStudy | query: SELECT nofoto AS `accession_number`, modality AS `modality` FROM `periksa` WHERE (`noregister` = ? AND DATE(daftar) = ?) LIMIT 1 | service: service-general
[2026-04-17 15:00:08.856] [INFO ] [IMAGING STUDY WORKER] 🔄 Memproses Dokumen | 📍 service.go:79 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 12062109 | service: service-general | source_id: 33850e3a-bda2-45e8-902e-478ec4c7d367
[2026-04-17 15:00:08.857] [DEBUG] [IMAGING STUDY WORKER] 📡 Mengirim Request ke API Part 3 | 📍 service.go:99 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | payload: map[accession_number:FNK-SEN26-021403 encounter_id:63ba9121-2917-4c52-8f99-57e203ba6912 organization_id: patient_id:P02087533671 procedure_code:DX service_request_id:d0174d72-6e0f-44b6-ad27-5807e65bb1bd started:2026-04-17T15:00:08Z status:available] | service: service-general | url: http://service-satusehat:8096/api/v1/satusehat/imagingstudy
[2026-04-17 15:00:08.880] [WARNI] [IMAGING STUDY WORKER] Menerima status 401 Unauthorized, mencoba refresh token... | 📍 service.go:200 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).sendToInternalAPI | service: service-general | source_id: 33850e3a-bda2-45e8-902e-478ec4c7d367
[2026-04-17 15:00:08.881] [INFO ] [WORKER AUTH] Melakukan refresh token... | 📍 auth.go:93 | environment: debug | ⚙️ service/internal/worker.(*Manager).refresh | service: service-general | url: http://service-satusehat:8096/api/v1/auth/refresh
[2026-04-17 15:00:08.884] [INFO ] [WORKER AUTH] Berhasil me-refresh token. | 📍 auth.go:127 | environment: debug | ⚙️ service/internal/worker.(*Manager).refresh | service: service-general
[2026-04-17 15:00:08.884] [INFO ] [IMAGING STUDY WORKER] Token berhasil di-refresh, mencoba ulang request... | 📍 service.go:208 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).sendToInternalAPI | service: service-general | source_id: 33850e3a-bda2-45e8-902e-478ec4c7d367
[2026-04-17 15:00:09.264] [INFO ] [IMAGING STUDY WORKER] ✅ Sukses mengirim data Imaging Study | 📍 service.go:248 | environment: debug | fhir_id: 12e8b96e-e498-48e1-a648-64292bb3c05b | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).sendToInternalAPI | service: service-general | source_id: 33850e3a-bda2-45e8-902e-478ec4c7d367
[2026-04-17 15:00:09.265] [ERROR] [IMAGING STUDY WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:155 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_imagingstudy" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | service: service-general
+81
View File
@@ -0,0 +1,81 @@
[2026-04-20 01:52:31.064] [INFO ] Application starting | 📍 main.go:64 | environment: debug | ⚙️ main.main | log_level: debug | service: service-general
[2026-04-20 01:52:31.064] [DEBUG] Config loaded | cache_enabled: true | 📍 main.go:79 | database_count: 5 | environment: debug | ⚙️ main.main | server_mode: debug | service: service-general
[2026-04-20 01:52:31.064] [INFO ] Minio Object Storage client initialized | 📍 main.go:91 | environment: debug | ⚙️ main.main | service: service-general
[2026-04-20 01:52:31.064] [INFO ] Initializing database service with GORM as primary abstraction... | 📍 database.go:192 | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-20 01:52:31.081] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:384 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-20 01:52:31.081] [INFO ] Successfully connected to database | 📍 database.go:203 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-20 01:52:31.092] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:384 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-20 01:52:31.092] [INFO ] Successfully connected to database | 📍 database.go:203 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-20 01:52:31.099] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:384 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-20 01:52:31.099] [INFO ] Successfully connected to database | 📍 database.go:203 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-20 01:52:31.106] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:384 | db_name: satudata | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-20 01:52:31.106] [INFO ] Successfully connected to database | 📍 database.go:203 | db_name: satudata | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-20 01:52:31.108] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:384 | db_name: ris | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-20 01:52:31.109] [INFO ] Successfully connected to database | 📍 database.go:203 | db_name: ris | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-20 01:52:31.112] [INFO ] Cache initialized | 📍 main.go:124 | environment: debug | ⚙️ main.main | host: redis | port: 6379 | service: service-general
[2026-04-20 01:52:31.112] [INFO ] Creating authentication providers | auth_type: hybrid | 📍 provider.go:69 | environment: debug | fallback_to: jwt | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | keycloak_enabled: true | keycloak_issuer: https://auth.rssa.top/realms/Dev | service: service-general | static_tokens_len: 4
[2026-04-20 01:52:31.113] [INFO ] Keycloak provider added for hybrid | 📍 provider.go:97 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | service: service-general
[2026-04-20 01:52:31.113] [INFO ] REST API running | 📍 main.go:184 | environment: debug | ⚙️ main.main.func1 | port: 8098 | service: service-general
[2026-04-20 01:52:31.113] [INFO ] Application started successfully | 📍 main.go:257 | environment: debug | ⚙️ main.main | service: service-general
[2026-04-20 01:52:31.113] [INFO ] gRPC Server running | 📍 main.go:211 | environment: debug | ⚙️ main.main.func2 | port: 8099 | service: service-general
[2026-04-20 01:52:31.113] [INFO ] Starting background workers... | 📍 worker.go:40 | environment: debug | ⚙️ service/internal/worker.(*Manager).Start | service: service-general
[2026-04-20 01:52:31.114] [INFO ] [WORKER AUTH] Melakukan login untuk mendapatkan token awal... | 📍 auth.go:37 | environment: debug | ⚙️ service/internal/worker.(*Manager).login | service: service-general | url: http://service-satusehat:8096/api/v1/auth/login
[2026-04-20 01:52:31.140] [INFO ] [WORKER AUTH] Berhasil mendapatkan token awal. | 📍 auth.go:69 | environment: debug | ⚙️ service/internal/worker.(*Manager).login | service: service-general
[2026-04-20 01:52:31.140] [WARNI] SATUSEHAT_ORGANIZATION_ID is not set in environment variables | 📍 worker.go:53 | environment: debug | ⚙️ service/internal/worker.(*Manager).Start | service: service-general
[2026-04-20 01:52:33.141] [INFO ] [ImagingStudy WORKER] Started | 📍 worker.go:240 | environment: debug | ⚙️ service/internal/worker.(*Manager).Start.func2.1 | service: service-general
[2026-04-20 01:52:33.141] [INFO ] [IMAGING STUDY WORKER] Memulai proses sinkronisasi API... | 📍 service.go:53 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | service: service-general
[2026-04-20 01:52:33.141] [INFO ] [IMAGING STUDY WORKER] Melanjutkan proses dari | 📍 service.go:56 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | last_created_at: 2026-04-17 12:31:30 +0000 UTC | service: service-general
[2026-04-20 01:52:33.673] [DEBUG] [IMAGING STUDY REPO] RIS Query Generated | args: [11577383 2026-04-18] | 📍 repository.go:150 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*repository).GetNextImagingStudy | query: SELECT nofoto AS `accession_number`, modality AS `modality` FROM `periksa` WHERE (`noregister` = ? AND DATE(daftar) = ?) LIMIT 1 | service: service-general
[2026-04-20 01:52:33.674] [INFO ] [IMAGING STUDY WORKER] 🔄 Memproses Dokumen | 📍 service.go:79 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 11577383 | service: service-general | source_id: ef8fe0c3-f46e-40a9-9461-279d170288b5
[2026-04-20 01:52:33.674] [WARNI] [IMAGING STUDY WORKER] ⏭️ Skip Dokumen: Accession Number kosong (Data RIS tidak ditemukan) | 📍 service.go:86 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 11577383 | service: service-general | source_id: ef8fe0c3-f46e-40a9-9461-279d170288b5
[2026-04-20 11:00:05.440] [DEBUG] [IMAGING STUDY REPO] RIS Query Generated | args: [12027417 2026-03-04] | 📍 repository.go:150 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*repository).GetNextImagingStudy | query: SELECT nofoto AS `accession_number`, modality AS `modality` FROM `periksa` WHERE (`noregister` = ? AND DATE(daftar) = ?) LIMIT 1 | service: service-general
[2026-04-20 11:00:05.443] [INFO ] [IMAGING STUDY WORKER] 🔄 Memproses Dokumen | 📍 service.go:79 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 12027417 | service: service-general | source_id: 870be895-7cfd-4b16-b8e3-54c05cf5a5a7
[2026-04-20 11:00:05.443] [WARNI] [IMAGING STUDY WORKER] ⏭️ Skip Dokumen: Accession Number kosong (Data RIS tidak ditemukan) | 📍 service.go:86 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 12027417 | service: service-general | source_id: 870be895-7cfd-4b16-b8e3-54c05cf5a5a7
[2026-04-20 11:00:20.729] [DEBUG] [IMAGING STUDY REPO] RIS Query Generated | args: [12009665 2026-03-17] | 📍 repository.go:150 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*repository).GetNextImagingStudy | query: SELECT nofoto AS `accession_number`, modality AS `modality` FROM `periksa` WHERE (`noregister` = ? AND DATE(daftar) = ?) LIMIT 1 | service: service-general
[2026-04-20 11:00:20.730] [INFO ] [IMAGING STUDY WORKER] 🔄 Memproses Dokumen | 📍 service.go:79 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 12009665 | service: service-general | source_id: 8848e1f5-458b-4cd8-aa14-ca001fe51992
[2026-04-20 11:00:20.730] [WARNI] [IMAGING STUDY WORKER] ⏭️ Skip Dokumen: Accession Number kosong (Data RIS tidak ditemukan) | 📍 service.go:86 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 12009665 | service: service-general | source_id: 8848e1f5-458b-4cd8-aa14-ca001fe51992
[2026-04-20 11:10:07.956] [DEBUG] [IMAGING STUDY REPO] RIS Query Generated | args: [12013167 2026-03-16] | 📍 repository.go:150 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*repository).GetNextImagingStudy | query: SELECT nofoto AS `accession_number`, modality AS `modality` FROM `periksa` WHERE (`noregister` = ? AND DATE(daftar) = ?) LIMIT 1 | service: service-general
[2026-04-20 11:10:07.959] [INFO ] [IMAGING STUDY WORKER] 🔄 Memproses Dokumen | 📍 service.go:79 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 12013167 | service: service-general | source_id: 53bb6883-84b6-46aa-9272-e85b51c0ac65
[2026-04-20 11:10:07.959] [WARNI] [IMAGING STUDY WORKER] ⏭️ Skip Dokumen: Accession Number kosong (Data RIS tidak ditemukan) | 📍 service.go:86 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 12013167 | service: service-general | source_id: 53bb6883-84b6-46aa-9272-e85b51c0ac65
[2026-04-20 11:10:08.288] [DEBUG] [IMAGING STUDY REPO] RIS Query Generated | args: [11111534 2026-03-16] | 📍 repository.go:150 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*repository).GetNextImagingStudy | query: SELECT nofoto AS `accession_number`, modality AS `modality` FROM `periksa` WHERE (`noregister` = ? AND DATE(daftar) = ?) LIMIT 1 | service: service-general
[2026-04-20 11:10:08.289] [INFO ] [IMAGING STUDY WORKER] 🔄 Memproses Dokumen | 📍 service.go:79 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 11111534 | service: service-general | source_id: 0aaaf8f1-b795-48a5-887d-c3a9f715b619
[2026-04-20 11:10:08.290] [WARNI] [IMAGING STUDY WORKER] ⏭️ Skip Dokumen: Accession Number kosong (Data RIS tidak ditemukan) | 📍 service.go:86 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 11111534 | service: service-general | source_id: 0aaaf8f1-b795-48a5-887d-c3a9f715b619
[2026-04-20 11:10:08.694] [DEBUG] [IMAGING STUDY REPO] RIS Query Generated | args: [11610098 2026-04-13] | 📍 repository.go:150 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*repository).GetNextImagingStudy | query: SELECT nofoto AS `accession_number`, modality AS `modality` FROM `periksa` WHERE (`noregister` = ? AND DATE(daftar) = ?) LIMIT 1 | service: service-general
[2026-04-20 11:10:08.695] [INFO ] [IMAGING STUDY WORKER] 🔄 Memproses Dokumen | 📍 service.go:79 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 11610098 | service: service-general | source_id: 69db1f4e-664b-48c9-a189-0c510aaae730
[2026-04-20 11:10:08.695] [WARNI] [IMAGING STUDY WORKER] ⏭️ Skip Dokumen: Accession Number kosong (Data RIS tidak ditemukan) | 📍 service.go:86 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 11610098 | service: service-general | source_id: 69db1f4e-664b-48c9-a189-0c510aaae730
[2026-04-20 11:20:05.961] [DEBUG] [IMAGING STUDY REPO] RIS Query Generated | args: [12027948 2026-03-16] | 📍 repository.go:150 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*repository).GetNextImagingStudy | query: SELECT nofoto AS `accession_number`, modality AS `modality` FROM `periksa` WHERE (`noregister` = ? AND DATE(daftar) = ?) LIMIT 1 | service: service-general
[2026-04-20 11:20:05.963] [INFO ] [IMAGING STUDY WORKER] 🔄 Memproses Dokumen | 📍 service.go:79 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 12027948 | service: service-general | source_id: e7b1a067-7d99-4087-b15e-7ed9cdd81eac
[2026-04-20 11:20:05.963] [WARNI] [IMAGING STUDY WORKER] ⏭️ Skip Dokumen: Accession Number kosong (Data RIS tidak ditemukan) | 📍 service.go:86 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 12027948 | service: service-general | source_id: e7b1a067-7d99-4087-b15e-7ed9cdd81eac
[2026-04-20 11:20:06.299] [DEBUG] [IMAGING STUDY REPO] RIS Query Generated | args: [11435190 2026-03-26] | 📍 repository.go:150 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*repository).GetNextImagingStudy | query: SELECT nofoto AS `accession_number`, modality AS `modality` FROM `periksa` WHERE (`noregister` = ? AND DATE(daftar) = ?) LIMIT 1 | service: service-general
[2026-04-20 11:20:06.300] [INFO ] [IMAGING STUDY WORKER] 🔄 Memproses Dokumen | 📍 service.go:79 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 11435190 | service: service-general | source_id: 601d8ad3-f7ad-4899-b948-292a6b2ac65f
[2026-04-20 11:20:06.300] [WARNI] [IMAGING STUDY WORKER] ⏭️ Skip Dokumen: Accession Number kosong (Data RIS tidak ditemukan) | 📍 service.go:86 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 11435190 | service: service-general | source_id: 601d8ad3-f7ad-4899-b948-292a6b2ac65f
[2026-04-20 11:30:03.695] [DEBUG] [IMAGING STUDY REPO] RIS Query Generated | args: [12071060 2026-04-20] | 📍 repository.go:150 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*repository).GetNextImagingStudy | query: SELECT nofoto AS `accession_number`, modality AS `modality` FROM `periksa` WHERE (`noregister` = ? AND DATE(daftar) = ?) LIMIT 1 | service: service-general
[2026-04-20 11:30:03.697] [INFO ] [IMAGING STUDY WORKER] 🔄 Memproses Dokumen | 📍 service.go:79 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 12071060 | service: service-general | source_id: 75968e8f-cd6d-485c-97d9-6b7c695aff8f
[2026-04-20 11:30:03.697] [WARNI] [IMAGING STUDY WORKER] ⏭️ Skip Dokumen: Accession Number kosong (Data RIS tidak ditemukan) | 📍 service.go:86 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 12071060 | service: service-general | source_id: 75968e8f-cd6d-485c-97d9-6b7c695aff8f
[2026-04-20 12:50:10.323] [DEBUG] [IMAGING STUDY REPO] RIS Query Generated | args: [11590852 2026-04-20] | 📍 repository.go:150 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*repository).GetNextImagingStudy | query: SELECT nofoto AS `accession_number`, modality AS `modality` FROM `periksa` WHERE (`noregister` = ? AND DATE(daftar) = ?) LIMIT 1 | service: service-general
[2026-04-20 12:50:10.325] [INFO ] [IMAGING STUDY WORKER] 🔄 Memproses Dokumen | 📍 service.go:79 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 11590852 | service: service-general | source_id: d779e15f-c393-4619-9bc1-959b1a26ceca
[2026-04-20 12:50:10.325] [WARNI] [IMAGING STUDY WORKER] ⏭️ Skip Dokumen: Accession Number kosong (Data RIS tidak ditemukan) | 📍 service.go:86 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 11590852 | service: service-general | source_id: d779e15f-c393-4619-9bc1-959b1a26ceca
[2026-04-20 12:50:10.338] [DEBUG] [IMAGING STUDY REPO] RIS Query Generated | args: [12011900 2026-04-20] | 📍 repository.go:150 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*repository).GetNextImagingStudy | query: SELECT nofoto AS `accession_number`, modality AS `modality` FROM `periksa` WHERE (`noregister` = ? AND DATE(daftar) = ?) LIMIT 1 | service: service-general
[2026-04-20 12:50:10.339] [INFO ] [IMAGING STUDY WORKER] 🔄 Memproses Dokumen | 📍 service.go:79 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 12011900 | service: service-general | source_id: c0e7d29a-53fa-44fa-a8f9-03e6885e7caa
[2026-04-20 12:50:10.339] [DEBUG] [IMAGING STUDY WORKER] 📡 Mengirim Request ke API Part 3 | 📍 service.go:99 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | payload: map[accession_number:CTS-SEN26-003388 encounter_id:609dd194-a51c-4491-b322-dfa14192f264 organization_id: patient_id:P02409915122 procedure_code:CT service_request_id:d9d64b95-6d68-47be-b63e-bb441b725e7c started:2026-04-20T12:50:10Z status:available] | service: service-general | url: http://service-satusehat:8096/api/v1/satusehat/imagingstudy
[2026-04-20 12:50:10.349] [WARNI] [IMAGING STUDY WORKER] Menerima status 401 Unauthorized, mencoba refresh token... | 📍 service.go:200 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).sendToInternalAPI | service: service-general | source_id: c0e7d29a-53fa-44fa-a8f9-03e6885e7caa
[2026-04-20 12:50:10.349] [INFO ] [WORKER AUTH] Melakukan refresh token... | 📍 auth.go:93 | environment: debug | ⚙️ service/internal/worker.(*Manager).refresh | service: service-general | url: http://service-satusehat:8096/api/v1/auth/refresh
[2026-04-20 12:50:10.351] [INFO ] [WORKER AUTH] Berhasil me-refresh token. | 📍 auth.go:127 | environment: debug | ⚙️ service/internal/worker.(*Manager).refresh | service: service-general
[2026-04-20 12:50:10.351] [INFO ] [IMAGING STUDY WORKER] Token berhasil di-refresh, mencoba ulang request... | 📍 service.go:208 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).sendToInternalAPI | service: service-general | source_id: c0e7d29a-53fa-44fa-a8f9-03e6885e7caa
[2026-04-20 12:50:10.748] [INFO ] [IMAGING STUDY WORKER] ✅ Sukses mengirim data Imaging Study | 📍 service.go:248 | environment: debug | fhir_id: 45297649-892d-424d-a61d-ce3e50fb1310 | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).sendToInternalAPI | service: service-general | source_id: c0e7d29a-53fa-44fa-a8f9-03e6885e7caa
[2026-04-20 12:50:10.751] [ERROR] [IMAGING STUDY WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:155 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_imagingstudy" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | service: service-general
[2026-04-20 12:50:11.859] [DEBUG] [IMAGING STUDY REPO] RIS Query Generated | args: [12075511 2026-04-20] | 📍 repository.go:150 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*repository).GetNextImagingStudy | query: SELECT nofoto AS `accession_number`, modality AS `modality` FROM `periksa` WHERE (`noregister` = ? AND DATE(daftar) = ?) LIMIT 1 | service: service-general
[2026-04-20 12:50:11.860] [INFO ] [IMAGING STUDY WORKER] 🔄 Memproses Dokumen | 📍 service.go:79 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 12075511 | service: service-general | source_id: 70b29431-487b-488a-bdc5-7897973fe2b4
[2026-04-20 12:50:11.860] [WARNI] [IMAGING STUDY WORKER] ⏭️ Skip Dokumen: Accession Number kosong (Data RIS tidak ditemukan) | 📍 service.go:86 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 12075511 | service: service-general | source_id: 70b29431-487b-488a-bdc5-7897973fe2b4
[2026-04-20 12:50:17.245] [DEBUG] [IMAGING STUDY REPO] RIS Query Generated | args: [12073697 2026-04-20] | 📍 repository.go:150 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*repository).GetNextImagingStudy | query: SELECT nofoto AS `accession_number`, modality AS `modality` FROM `periksa` WHERE (`noregister` = ? AND DATE(daftar) = ?) LIMIT 1 | service: service-general
[2026-04-20 12:50:17.246] [INFO ] [IMAGING STUDY WORKER] 🔄 Memproses Dokumen | 📍 service.go:79 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 12073697 | service: service-general | source_id: 81d70364-0959-4ee5-baa1-2e57d5c18213
[2026-04-20 12:50:17.246] [WARNI] [IMAGING STUDY WORKER] ⏭️ Skip Dokumen: Accession Number kosong (Data RIS tidak ditemukan) | 📍 service.go:86 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 12073697 | service: service-general | source_id: 81d70364-0959-4ee5-baa1-2e57d5c18213
[2026-04-20 15:00:13.879] [DEBUG] [IMAGING STUDY REPO] RIS Query Generated | args: [12029972 2026-04-20] | 📍 repository.go:150 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*repository).GetNextImagingStudy | query: SELECT nofoto AS `accession_number`, modality AS `modality` FROM `periksa` WHERE (`noregister` = ? AND DATE(daftar) = ?) LIMIT 1 | service: service-general
[2026-04-20 15:00:13.881] [INFO ] [IMAGING STUDY WORKER] 🔄 Memproses Dokumen | 📍 service.go:79 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | no_mr: 12029972 | service: service-general | source_id: a013adc3-f5c6-4821-930f-c4eeaa7155f1
[2026-04-20 15:00:13.881] [DEBUG] [IMAGING STUDY WORKER] 📡 Mengirim Request ke API Part 3 | 📍 service.go:99 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | payload: map[accession_number:FNK-SEN26-021881 encounter_id:a6c5d68d-3034-48da-8b43-52356ce85ee3 organization_id: patient_id:P01130726485 procedure_code:OT service_request_id:4a2bc22c-d6a3-4257-860a-77ffc328c3d2 started:2026-04-20T15:00:13Z status:available] | service: service-general | url: http://service-satusehat:8096/api/v1/satusehat/imagingstudy
[2026-04-20 15:00:13.884] [WARNI] [IMAGING STUDY WORKER] Menerima status 401 Unauthorized, mencoba refresh token... | 📍 service.go:200 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).sendToInternalAPI | service: service-general | source_id: a013adc3-f5c6-4821-930f-c4eeaa7155f1
[2026-04-20 15:00:13.884] [INFO ] [WORKER AUTH] Melakukan refresh token... | 📍 auth.go:93 | environment: debug | ⚙️ service/internal/worker.(*Manager).refresh | service: service-general | url: http://service-satusehat:8096/api/v1/auth/refresh
[2026-04-20 15:00:13.885] [INFO ] [WORKER AUTH] Berhasil me-refresh token. | 📍 auth.go:127 | environment: debug | ⚙️ service/internal/worker.(*Manager).refresh | service: service-general
[2026-04-20 15:00:13.885] [INFO ] [IMAGING STUDY WORKER] Token berhasil di-refresh, mencoba ulang request... | 📍 service.go:208 | environment: debug | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).sendToInternalAPI | service: service-general | source_id: a013adc3-f5c6-4821-930f-c4eeaa7155f1
[2026-04-20 15:00:14.228] [INFO ] [IMAGING STUDY WORKER] ✅ Sukses mengirim data Imaging Study | 📍 service.go:248 | environment: debug | fhir_id: 2e463f73-cb81-4ac8-be99-1a3a2b6eb3d7 | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).sendToInternalAPI | service: service-general | source_id: a013adc3-f5c6-4821-930f-c4eeaa7155f1
[2026-04-20 15:00:14.228] [ERROR] [IMAGING STUDY WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:155 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_imagingstudy" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/imagingstudy.(*worker).Run | service: service-general
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+902
View File
@@ -0,0 +1,902 @@
[2026-04-26 07:46:52.840] [INFO ] Application starting | 📍 main.go:64 | environment: debug | ⚙️ main.main | log_level: debug | service: service-general
[2026-04-26 07:46:52.840] [DEBUG] Config loaded | cache_enabled: true | 📍 main.go:79 | database_count: 5 | environment: debug | ⚙️ main.main | server_mode: debug | service: service-general
[2026-04-26 07:46:52.840] [INFO ] Minio Object Storage client initialized | 📍 main.go:91 | environment: debug | ⚙️ main.main | service: service-general
[2026-04-26 07:46:52.840] [INFO ] Initializing database service with GORM as primary abstraction... | 📍 database.go:192 | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-26 07:46:52.849] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:384 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-26 07:46:52.849] [INFO ] Successfully connected to database | 📍 database.go:203 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-26 07:46:52.857] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:384 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-26 07:46:52.857] [INFO ] Successfully connected to database | 📍 database.go:203 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-26 07:46:52.863] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:384 | db_name: satudata | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-26 07:46:52.864] [INFO ] Successfully connected to database | 📍 database.go:203 | db_name: satudata | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-26 07:46:52.865] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:384 | db_name: ris | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-26 07:46:52.865] [INFO ] Successfully connected to database | 📍 database.go:203 | db_name: ris | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-26 07:46:52.886] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:384 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-26 07:46:52.886] [INFO ] Successfully connected to database | 📍 database.go:203 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-26 07:46:52.889] [INFO ] Cache initialized | 📍 main.go:124 | environment: debug | ⚙️ main.main | host: redis | port: 6379 | service: service-general
[2026-04-26 07:46:52.890] [INFO ] Creating authentication providers | auth_type: hybrid | 📍 provider.go:69 | environment: debug | fallback_to: jwt | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | keycloak_enabled: true | keycloak_issuer: https://auth.rssa.top/realms/Dev | service: service-general | static_tokens_len: 4
[2026-04-26 07:46:52.890] [INFO ] Keycloak provider added for hybrid | 📍 provider.go:97 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | service: service-general
[2026-04-26 07:46:52.890] [INFO ] REST API running | 📍 main.go:184 | environment: debug | ⚙️ main.main.func1 | port: 8098 | service: service-general
[2026-04-26 07:46:52.890] [INFO ] Application started successfully | 📍 main.go:257 | environment: debug | ⚙️ main.main | service: service-general
[2026-04-26 07:46:52.891] [INFO ] gRPC Server running | 📍 main.go:211 | environment: debug | ⚙️ main.main.func2 | port: 8099 | service: service-general
[2026-04-26 07:46:52.891] [INFO ] Starting background workers... | 📍 worker.go:40 | environment: debug | ⚙️ service/internal/worker.(*Manager).Start | service: service-general
[2026-04-26 07:46:52.891] [INFO ] [WORKER AUTH] Melakukan login untuk mendapatkan token awal... | 📍 auth.go:37 | environment: debug | ⚙️ service/internal/worker.(*Manager).login | service: service-general | url: http://service-satusehat:8096/api/v1/auth/login
[2026-04-26 07:46:52.894] [INFO ] [WORKER AUTH] Berhasil mendapatkan token awal. | 📍 auth.go:69 | environment: debug | ⚙️ service/internal/worker.(*Manager).login | service: service-general
[2026-04-26 07:46:52.894] [INFO ] [Medication (Master) WORKER] Started | 📍 worker.go:269 | environment: debug | ⚙️ service/internal/worker.(*Manager).Start.func2.1 | service: service-general
[2026-04-26 07:46:52.894] [INFO ] [MEDICATION WORKER] Memulai proses sinkronisasi API... | 📍 service.go:55 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:46:52.894] [INFO ] [MEDICATION WORKER] Melanjutkan proses dari | 📍 service.go:63 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | last_id: 3384184 | service: service-general
[2026-04-26 07:46:52.898] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384185 | kode_kfa: | service: service-general
[2026-04-26 07:46:52.898] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384185 | service: service-general
[2026-04-26 07:46:52.899] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384186 | kode_kfa: 93012990 | service: service-general
[2026-04-26 07:46:52.899] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93012990 | service: service-general | status: 404
[2026-04-26 07:46:53.080] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: e5d36d3d-01f3-446b-b558-5c86712e1873 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384186 | service: service-general
[2026-04-26 07:46:53.080] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:46:55.083] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384187 | kode_kfa: 93005416 | service: service-general
[2026-04-26 07:46:55.083] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93005416 | service: service-general | status: 404
[2026-04-26 07:46:55.289] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: 4a6549a1-e4c2-4165-8e5a-7a9cd068a522 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384187 | service: service-general
[2026-04-26 07:46:55.290] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:46:57.293] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384188 | kode_kfa: | service: service-general
[2026-04-26 07:46:57.293] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384188 | service: service-general
[2026-04-26 07:46:57.293] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384189 | kode_kfa: | service: service-general
[2026-04-26 07:46:57.293] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384189 | service: service-general
[2026-04-26 07:46:57.294] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384190 | kode_kfa: 93009674 | service: service-general
[2026-04-26 07:46:57.295] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93009674 | service: service-general | status: 404
[2026-04-26 07:46:57.491] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: 49e2481c-d370-4367-b070-d2c652b1c325 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384190 | service: service-general
[2026-04-26 07:46:57.492] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:46:59.494] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384191 | kode_kfa: 93001406 | service: service-general
[2026-04-26 07:46:59.495] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93001406 | service: service-general | status: 404
[2026-04-26 07:46:59.703] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: 7c1a7315-d8f4-4e55-8890-f0772e99115c | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384191 | service: service-general
[2026-04-26 07:46:59.704] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:47:01.706] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384192 | kode_kfa: 93001406 | service: service-general
[2026-04-26 07:47:01.707] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93001406 | service: service-general | status: 404
[2026-04-26 07:47:01.872] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: 16ea6748-d1a2-4b46-acdf-3d0e84e4ab6f | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384192 | service: service-general
[2026-04-26 07:47:01.873] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:47:03.875] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384193 | kode_kfa: 93010191 | service: service-general
[2026-04-26 07:47:03.876] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93010191 | service: service-general | status: 404
[2026-04-26 07:47:04.074] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: ddf97d42-c953-45d9-b763-e7072665ac84 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384193 | service: service-general
[2026-04-26 07:47:04.074] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:47:06.076] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384194 | kode_kfa: 93000471 | service: service-general
[2026-04-26 07:47:06.077] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93000471 | service: service-general | status: 404
[2026-04-26 07:47:06.276] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: 3da3d066-ca09-4fc6-8e83-5bde3c8a1d76 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384194 | service: service-general
[2026-04-26 07:47:06.276] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:47:08.278] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384195 | kode_kfa: 93001421 | service: service-general
[2026-04-26 07:47:08.279] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93001421 | service: service-general | status: 404
[2026-04-26 07:47:08.467] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: 2bfef15f-2c1a-4c0a-a598-34f229139556 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384195 | service: service-general
[2026-04-26 07:47:08.467] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:47:10.469] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384196 | kode_kfa: 93022332 | service: service-general
[2026-04-26 07:47:10.470] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93022332 | service: service-general | status: 404
[2026-04-26 07:47:10.760] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: e9b94407-a524-4d0f-8efb-5e13080d4e2e | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384196 | service: service-general
[2026-04-26 07:47:10.761] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:47:12.762] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384197 | kode_kfa: 93020730 | service: service-general
[2026-04-26 07:47:12.762] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93020730 | service: service-general | status: 404
[2026-04-26 07:47:12.954] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: c6799b62-8777-488f-8931-dc1c820adebc | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384197 | service: service-general
[2026-04-26 07:47:12.955] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:47:14.957] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384198 | kode_kfa: 93004897 | service: service-general
[2026-04-26 07:47:14.957] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93004897 | service: service-general | status: 404
[2026-04-26 07:47:15.148] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: d1ab6618-d278-4c28-b9fd-129ad4345c07 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384198 | service: service-general
[2026-04-26 07:47:15.148] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:47:17.150] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384199 | kode_kfa: | service: service-general
[2026-04-26 07:47:17.150] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384199 | service: service-general
[2026-04-26 07:47:17.150] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384200 | kode_kfa: 93001406 | service: service-general
[2026-04-26 07:47:17.151] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93001406 | service: service-general | status: 404
[2026-04-26 07:47:17.354] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: a876cd27-65ca-4e78-82e3-7b47455119dc | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384200 | service: service-general
[2026-04-26 07:47:17.355] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:47:19.356] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384201 | kode_kfa: | service: service-general
[2026-04-26 07:47:19.357] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384201 | service: service-general
[2026-04-26 07:47:19.357] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384202 | kode_kfa: | service: service-general
[2026-04-26 07:47:19.357] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384202 | service: service-general
[2026-04-26 07:47:19.358] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384203 | kode_kfa: | service: service-general
[2026-04-26 07:47:19.358] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384203 | service: service-general
[2026-04-26 07:47:19.358] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384204 | kode_kfa: | service: service-general
[2026-04-26 07:47:19.358] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384204 | service: service-general
[2026-04-26 07:47:19.359] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384205 | kode_kfa: | service: service-general
[2026-04-26 07:47:19.359] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384205 | service: service-general
[2026-04-26 07:47:19.359] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384206 | kode_kfa: | service: service-general
[2026-04-26 07:47:19.359] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384206 | service: service-general
[2026-04-26 07:47:19.359] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384207 | kode_kfa: | service: service-general
[2026-04-26 07:47:19.359] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384207 | service: service-general
[2026-04-26 07:47:19.360] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384208 | kode_kfa: 93021415 | service: service-general
[2026-04-26 07:47:19.360] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93021415 | service: service-general | status: 404
[2026-04-26 07:47:19.595] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: f6b0c2b1-ac58-4639-83bd-633cc30ffa74 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384208 | service: service-general
[2026-04-26 07:47:19.596] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:47:21.598] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384209 | kode_kfa: | service: service-general
[2026-04-26 07:47:21.598] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384209 | service: service-general
[2026-04-26 07:47:21.598] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384210 | kode_kfa: | service: service-general
[2026-04-26 07:47:21.598] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384210 | service: service-general
[2026-04-26 07:47:21.599] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384211 | kode_kfa: | service: service-general
[2026-04-26 07:47:21.599] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384211 | service: service-general
[2026-04-26 07:47:21.599] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384212 | kode_kfa: | service: service-general
[2026-04-26 07:47:21.599] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384212 | service: service-general
[2026-04-26 07:47:21.600] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384213 | kode_kfa: | service: service-general
[2026-04-26 07:47:21.600] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384213 | service: service-general
[2026-04-26 07:47:21.600] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384214 | kode_kfa: | service: service-general
[2026-04-26 07:47:21.600] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384214 | service: service-general
[2026-04-26 07:47:21.601] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384215 | kode_kfa: 93001406 | service: service-general
[2026-04-26 07:47:21.601] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93001406 | service: service-general | status: 404
[2026-04-26 07:47:21.800] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: 7d2ecbe4-5553-404b-a732-7d15b7cf9355 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384215 | service: service-general
[2026-04-26 07:47:21.801] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:47:23.803] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384216 | kode_kfa: | service: service-general
[2026-04-26 07:47:23.803] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384216 | service: service-general
[2026-04-26 07:47:23.803] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384217 | kode_kfa: | service: service-general
[2026-04-26 07:47:23.803] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384217 | service: service-general
[2026-04-26 07:47:23.804] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384218 | kode_kfa: | service: service-general
[2026-04-26 07:47:23.804] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384218 | service: service-general
[2026-04-26 07:47:23.804] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384219 | kode_kfa: | service: service-general
[2026-04-26 07:47:23.804] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384219 | service: service-general
[2026-04-26 07:47:23.804] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384220 | kode_kfa: | service: service-general
[2026-04-26 07:47:23.804] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384220 | service: service-general
[2026-04-26 07:47:23.805] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384221 | kode_kfa: | service: service-general
[2026-04-26 07:47:23.805] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384221 | service: service-general
[2026-04-26 07:47:23.805] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384222 | kode_kfa: | service: service-general
[2026-04-26 07:47:23.805] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384222 | service: service-general
[2026-04-26 07:47:23.806] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384223 | kode_kfa: | service: service-general
[2026-04-26 07:47:23.806] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384223 | service: service-general
[2026-04-26 07:47:23.806] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384224 | kode_kfa: | service: service-general
[2026-04-26 07:47:23.806] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384224 | service: service-general
[2026-04-26 07:47:23.806] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384225 | kode_kfa: | service: service-general
[2026-04-26 07:47:23.807] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384225 | service: service-general
[2026-04-26 07:47:23.807] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384226 | kode_kfa: | service: service-general
[2026-04-26 07:47:23.807] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384226 | service: service-general
[2026-04-26 07:47:23.807] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384227 | kode_kfa: | service: service-general
[2026-04-26 07:47:23.807] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384227 | service: service-general
[2026-04-26 07:47:23.808] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384228 | kode_kfa: | service: service-general
[2026-04-26 07:47:23.808] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384228 | service: service-general
[2026-04-26 07:47:23.808] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384229 | kode_kfa: | service: service-general
[2026-04-26 07:47:23.808] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384229 | service: service-general
[2026-04-26 07:47:23.808] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384230 | kode_kfa: 93001406 | service: service-general
[2026-04-26 07:47:23.809] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93001406 | service: service-general | status: 404
[2026-04-26 07:47:24.001] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: f8d15006-08aa-4fcd-9f25-8921cef87860 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384230 | service: service-general
[2026-04-26 07:47:24.002] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:47:26.004] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384231 | kode_kfa: | service: service-general
[2026-04-26 07:47:26.004] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384231 | service: service-general
[2026-04-26 07:47:26.004] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384232 | kode_kfa: | service: service-general
[2026-04-26 07:47:26.004] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384232 | service: service-general
[2026-04-26 07:47:26.005] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384233 | kode_kfa: | service: service-general
[2026-04-26 07:47:26.005] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384233 | service: service-general
[2026-04-26 07:47:26.005] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384234 | kode_kfa: | service: service-general
[2026-04-26 07:47:26.005] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384234 | service: service-general
[2026-04-26 07:47:26.005] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384235 | kode_kfa: | service: service-general
[2026-04-26 07:47:26.006] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384235 | service: service-general
[2026-04-26 07:47:26.006] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384236 | kode_kfa: | service: service-general
[2026-04-26 07:47:26.006] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384236 | service: service-general
[2026-04-26 07:47:26.006] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384237 | kode_kfa: | service: service-general
[2026-04-26 07:47:26.006] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384237 | service: service-general
[2026-04-26 07:47:26.006] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384238 | kode_kfa: | service: service-general
[2026-04-26 07:47:26.007] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384238 | service: service-general
[2026-04-26 07:47:26.007] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384239 | kode_kfa: 93001406 | service: service-general
[2026-04-26 07:47:26.007] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93001406 | service: service-general | status: 404
[2026-04-26 07:47:26.200] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: f8f506fb-0c8c-493e-8e2a-8401a064458f | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384239 | service: service-general
[2026-04-26 07:47:26.201] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:47:28.204] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384240 | kode_kfa: | service: service-general
[2026-04-26 07:47:28.204] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384240 | service: service-general
[2026-04-26 07:47:28.204] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384241 | kode_kfa: | service: service-general
[2026-04-26 07:47:28.204] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384241 | service: service-general
[2026-04-26 07:47:28.205] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384242 | kode_kfa: | service: service-general
[2026-04-26 07:47:28.205] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384242 | service: service-general
[2026-04-26 07:47:28.205] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384243 | kode_kfa: | service: service-general
[2026-04-26 07:47:28.205] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384243 | service: service-general
[2026-04-26 07:47:28.206] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384244 | kode_kfa: | service: service-general
[2026-04-26 07:47:28.206] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384244 | service: service-general
[2026-04-26 07:47:28.206] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384245 | kode_kfa: | service: service-general
[2026-04-26 07:47:28.206] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384245 | service: service-general
[2026-04-26 07:47:28.206] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384246 | kode_kfa: | service: service-general
[2026-04-26 07:47:28.206] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384246 | service: service-general
[2026-04-26 07:47:28.207] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384247 | kode_kfa: | service: service-general
[2026-04-26 07:47:28.207] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384247 | service: service-general
[2026-04-26 07:47:28.207] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384248 | kode_kfa: | service: service-general
[2026-04-26 07:47:28.207] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384248 | service: service-general
[2026-04-26 07:47:28.208] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384249 | kode_kfa: | service: service-general
[2026-04-26 07:47:28.208] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384249 | service: service-general
[2026-04-26 07:47:28.208] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384250 | kode_kfa: | service: service-general
[2026-04-26 07:47:28.208] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384250 | service: service-general
[2026-04-26 07:47:28.208] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384251 | kode_kfa: | service: service-general
[2026-04-26 07:47:28.208] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384251 | service: service-general
[2026-04-26 07:47:28.209] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384252 | kode_kfa: | service: service-general
[2026-04-26 07:47:28.209] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384252 | service: service-general
[2026-04-26 07:47:28.209] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384253 | kode_kfa: 93001406 | service: service-general
[2026-04-26 07:47:28.210] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93001406 | service: service-general | status: 404
[2026-04-26 07:47:28.427] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: 993f2410-5a24-4bdc-aa77-0c740630d043 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384253 | service: service-general
[2026-04-26 07:47:28.428] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:47:30.429] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384254 | kode_kfa: | service: service-general
[2026-04-26 07:47:30.430] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384254 | service: service-general
[2026-04-26 07:47:30.430] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384255 | kode_kfa: | service: service-general
[2026-04-26 07:47:30.430] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384255 | service: service-general
[2026-04-26 07:47:30.431] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384256 | kode_kfa: | service: service-general
[2026-04-26 07:47:30.431] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384256 | service: service-general
[2026-04-26 07:47:30.431] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384257 | kode_kfa: | service: service-general
[2026-04-26 07:47:30.431] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384257 | service: service-general
[2026-04-26 07:47:30.431] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384258 | kode_kfa: 93004897 | service: service-general
[2026-04-26 07:47:30.432] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93004897 | service: service-general | status: 404
[2026-04-26 07:47:30.618] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: 5153d58a-a487-4201-b198-b3db83d47568 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384258 | service: service-general
[2026-04-26 07:47:30.618] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:47:32.621] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384259 | kode_kfa: | service: service-general
[2026-04-26 07:47:32.621] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384259 | service: service-general
[2026-04-26 07:47:32.621] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384260 | kode_kfa: 93010920 | service: service-general
[2026-04-26 07:47:32.622] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93010920 | service: service-general | status: 404
[2026-04-26 07:47:32.818] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: 28a28511-a1e1-4c75-aba1-97b67ab0bb39 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384260 | service: service-general
[2026-04-26 07:47:32.819] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:47:34.821] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384261 | kode_kfa: 93002280 | service: service-general
[2026-04-26 07:47:34.822] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93002280 | service: service-general | status: 404
[2026-04-26 07:47:35.027] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: f29fa145-5199-408b-9512-8184d5dbfa1e | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384261 | service: service-general
[2026-04-26 07:47:35.028] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:47:37.031] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384262 | kode_kfa: | service: service-general
[2026-04-26 07:47:37.031] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384262 | service: service-general
[2026-04-26 07:47:37.031] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384263 | kode_kfa: 93007279 | service: service-general
[2026-04-26 07:47:37.032] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93007279 | service: service-general | status: 404
[2026-04-26 07:47:37.196] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: 2a621669-e2d0-444c-bd2c-4a77a65be14b | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384263 | service: service-general
[2026-04-26 07:47:37.196] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:47:39.198] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384264 | kode_kfa: | service: service-general
[2026-04-26 07:47:39.199] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384264 | service: service-general
[2026-04-26 07:47:39.199] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384265 | kode_kfa: 93001406 | service: service-general
[2026-04-26 07:47:39.200] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93001406 | service: service-general | status: 404
[2026-04-26 07:47:39.404] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: 9d61147e-0edf-43ca-b93e-f9b6e546e173 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384265 | service: service-general
[2026-04-26 07:47:39.405] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:47:41.408] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384266 | kode_kfa: | service: service-general
[2026-04-26 07:47:41.408] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384266 | service: service-general
[2026-04-26 07:47:41.408] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384267 | kode_kfa: | service: service-general
[2026-04-26 07:47:41.408] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384267 | service: service-general
[2026-04-26 07:47:41.409] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384268 | kode_kfa: | service: service-general
[2026-04-26 07:47:41.409] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384268 | service: service-general
[2026-04-26 07:47:41.409] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384269 | kode_kfa: | service: service-general
[2026-04-26 07:47:41.410] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384269 | service: service-general
[2026-04-26 07:47:41.410] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384270 | kode_kfa: | service: service-general
[2026-04-26 07:47:41.410] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384270 | service: service-general
[2026-04-26 07:47:41.410] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384271 | kode_kfa: | service: service-general
[2026-04-26 07:47:41.410] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384271 | service: service-general
[2026-04-26 07:47:41.411] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384272 | kode_kfa: | service: service-general
[2026-04-26 07:47:41.411] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384272 | service: service-general
[2026-04-26 07:47:41.411] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384273 | kode_kfa: | service: service-general
[2026-04-26 07:47:41.411] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384273 | service: service-general
[2026-04-26 07:47:41.412] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384274 | kode_kfa: | service: service-general
[2026-04-26 07:47:41.412] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384274 | service: service-general
[2026-04-26 07:47:41.412] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384275 | kode_kfa: | service: service-general
[2026-04-26 07:47:41.412] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384275 | service: service-general
[2026-04-26 07:47:41.412] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384276 | kode_kfa: | service: service-general
[2026-04-26 07:47:41.412] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384276 | service: service-general
[2026-04-26 07:47:41.413] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384277 | kode_kfa: 93001406 | service: service-general
[2026-04-26 07:47:41.414] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93001406 | service: service-general | status: 404
[2026-04-26 07:47:41.603] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: 84ce68b9-cbd9-4cdb-bc48-81c3068f2d9b | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384277 | service: service-general
[2026-04-26 07:47:41.604] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:47:43.606] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384278 | kode_kfa: | service: service-general
[2026-04-26 07:47:43.606] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384278 | service: service-general
[2026-04-26 07:47:43.606] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384279 | kode_kfa: | service: service-general
[2026-04-26 07:47:43.606] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384279 | service: service-general
[2026-04-26 07:47:43.607] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384280 | kode_kfa: | service: service-general
[2026-04-26 07:47:43.607] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384280 | service: service-general
[2026-04-26 07:47:43.607] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384281 | kode_kfa: | service: service-general
[2026-04-26 07:47:43.607] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384281 | service: service-general
[2026-04-26 07:47:43.607] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384282 | kode_kfa: | service: service-general
[2026-04-26 07:47:43.607] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384282 | service: service-general
[2026-04-26 07:47:43.608] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384283 | kode_kfa: | service: service-general
[2026-04-26 07:47:43.608] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384283 | service: service-general
[2026-04-26 07:47:43.608] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384284 | kode_kfa: | service: service-general
[2026-04-26 07:47:43.608] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384284 | service: service-general
[2026-04-26 07:47:43.608] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384285 | kode_kfa: | service: service-general
[2026-04-26 07:47:43.609] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384285 | service: service-general
[2026-04-26 07:47:43.609] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384286 | kode_kfa: | service: service-general
[2026-04-26 07:47:43.609] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384286 | service: service-general
[2026-04-26 07:47:43.609] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384287 | kode_kfa: | service: service-general
[2026-04-26 07:47:43.609] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384287 | service: service-general
[2026-04-26 07:47:43.609] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384288 | kode_kfa: | service: service-general
[2026-04-26 07:47:43.610] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384288 | service: service-general
[2026-04-26 07:47:43.610] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384289 | kode_kfa: 93001720 | service: service-general
[2026-04-26 07:47:43.610] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93001720 | service: service-general | status: 404
[2026-04-26 07:47:43.770] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: 1d946f71-a050-444d-b97b-ffac87af3bec | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384289 | service: service-general
[2026-04-26 07:47:43.770] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:47:45.772] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384290 | kode_kfa: | service: service-general
[2026-04-26 07:47:45.772] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384290 | service: service-general
[2026-04-26 07:47:45.773] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384291 | kode_kfa: 93004342 | service: service-general
[2026-04-26 07:47:45.774] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93004342 | service: service-general | status: 404
[2026-04-26 07:47:45.955] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: 629ae24f-f117-4adb-8122-5033739f9a77 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384291 | service: service-general
[2026-04-26 07:47:45.956] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:47:47.958] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384292 | kode_kfa: | service: service-general
[2026-04-26 07:47:47.958] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384292 | service: service-general
[2026-04-26 07:47:47.958] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384293 | kode_kfa: | service: service-general
[2026-04-26 07:47:47.958] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384293 | service: service-general
[2026-04-26 07:47:47.959] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384294 | kode_kfa: | service: service-general
[2026-04-26 07:47:47.959] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384294 | service: service-general
[2026-04-26 07:47:47.959] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384295 | kode_kfa: | service: service-general
[2026-04-26 07:47:47.959] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384295 | service: service-general
[2026-04-26 07:47:47.960] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384296 | kode_kfa: | service: service-general
[2026-04-26 07:47:47.960] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384296 | service: service-general
[2026-04-26 07:47:47.960] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384297 | kode_kfa: | service: service-general
[2026-04-26 07:47:47.960] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384297 | service: service-general
[2026-04-26 07:47:47.960] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384298 | kode_kfa: 93007279 | service: service-general
[2026-04-26 07:47:47.961] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:213 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93007279 | service: service-general | status: 404
[2026-04-26 07:47:48.136] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:184 | environment: debug | fhir_id: e6b9a50c-1d23-4fdb-ada0-c79e605cc545 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384298 | service: service-general
[2026-04-26 07:47:48.136] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:105 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:57:43.295] [INFO ] Application starting | 📍 main.go:64 | environment: debug | ⚙️ main.main | log_level: debug | service: service-general
[2026-04-26 07:57:43.295] [DEBUG] Config loaded | cache_enabled: true | 📍 main.go:79 | database_count: 5 | environment: debug | ⚙️ main.main | server_mode: debug | service: service-general
[2026-04-26 07:57:43.295] [INFO ] Minio Object Storage client initialized | 📍 main.go:91 | environment: debug | ⚙️ main.main | service: service-general
[2026-04-26 07:57:43.296] [INFO ] Initializing database service with GORM as primary abstraction... | 📍 database.go:192 | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-26 07:57:43.318] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:384 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-26 07:57:43.319] [INFO ] Successfully connected to database | 📍 database.go:203 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-26 07:57:43.327] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:384 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-26 07:57:43.327] [INFO ] Successfully connected to database | 📍 database.go:203 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-26 07:57:43.336] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:384 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-26 07:57:43.336] [INFO ] Successfully connected to database | 📍 database.go:203 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-26 07:57:43.343] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:384 | db_name: satudata | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-26 07:57:43.343] [INFO ] Successfully connected to database | 📍 database.go:203 | db_name: satudata | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-26 07:57:43.345] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:384 | db_name: ris | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-26 07:57:43.345] [INFO ] Successfully connected to database | 📍 database.go:203 | db_name: ris | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-26 07:57:43.348] [INFO ] Cache initialized | 📍 main.go:124 | environment: debug | ⚙️ main.main | host: redis | port: 6379 | service: service-general
[2026-04-26 07:57:43.349] [INFO ] Creating authentication providers | auth_type: hybrid | 📍 provider.go:69 | environment: debug | fallback_to: jwt | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | keycloak_enabled: true | keycloak_issuer: https://auth.rssa.top/realms/Dev | service: service-general | static_tokens_len: 4
[2026-04-26 07:57:43.349] [INFO ] Keycloak provider added for hybrid | 📍 provider.go:97 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | service: service-general
[2026-04-26 07:57:43.349] [INFO ] REST API running | 📍 main.go:184 | environment: debug | ⚙️ main.main.func1 | port: 8098 | service: service-general
[2026-04-26 07:57:43.349] [INFO ] Application started successfully | 📍 main.go:257 | environment: debug | ⚙️ main.main | service: service-general
[2026-04-26 07:57:43.349] [INFO ] gRPC Server running | 📍 main.go:211 | environment: debug | ⚙️ main.main.func2 | port: 8099 | service: service-general
[2026-04-26 07:57:43.350] [INFO ] Starting background workers... | 📍 worker.go:40 | environment: debug | ⚙️ service/internal/worker.(*Manager).Start | service: service-general
[2026-04-26 07:57:43.350] [INFO ] [WORKER AUTH] Melakukan login untuk mendapatkan token awal... | 📍 auth.go:37 | environment: debug | ⚙️ service/internal/worker.(*Manager).login | service: service-general | url: http://service-satusehat:8096/api/v1/auth/login
[2026-04-26 07:57:43.353] [INFO ] [WORKER AUTH] Berhasil mendapatkan token awal. | 📍 auth.go:69 | environment: debug | ⚙️ service/internal/worker.(*Manager).login | service: service-general
[2026-04-26 07:57:43.353] [INFO ] [Medication (Master) WORKER] Started | 📍 worker.go:269 | environment: debug | ⚙️ service/internal/worker.(*Manager).Start.func2.1 | service: service-general
[2026-04-26 07:57:43.353] [INFO ] [MEDICATION WORKER] Memulai proses sinkronisasi API... | 📍 service.go:55 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:57:43.353] [INFO ] [MEDICATION WORKER] Melanjutkan proses dari | 📍 service.go:63 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | last_id: 3384298 | service: service-general
[2026-04-26 07:57:43.357] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384299 | kode_kfa: 93001720 | service: service-general
[2026-04-26 07:57:43.358] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93001720 | service: service-general | status: 404
[2026-04-26 07:57:43.641] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: a14e9b01-5043-45a0-8d8a-bda67707d30c | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384299 | service: service-general
[2026-04-26 07:57:43.641] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384299 | request_payload: map[kfa_code:93001720 manufacturer_id:100026555 medication_id:3384299 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93001720","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"a14e9b01-5043-45a0-8d8a-bda67707d30c","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384299"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:57:43.604078+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDI2MzYwNDA3ODAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:57:43.642] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:57:45.644] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384300 | kode_kfa: 93019872 | service: service-general
[2026-04-26 07:57:45.645] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93019872 | service: service-general | status: 404
[2026-04-26 07:57:45.879] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: add6ad7d-e32e-4840-a565-49c9bba605b9 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384300 | service: service-general
[2026-04-26 07:57:45.879] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384300 | request_payload: map[kfa_code:93019872 manufacturer_id:100026555 medication_id:3384300 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93019872","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"add6ad7d-e32e-4840-a565-49c9bba605b9","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384300"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:57:45.842646+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDI2NTg0MjY0NjAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:57:45.880] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:57:47.882] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384301 | kode_kfa: | service: service-general
[2026-04-26 07:57:47.882] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384301 | service: service-general
[2026-04-26 07:57:47.883] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384302 | kode_kfa: | service: service-general
[2026-04-26 07:57:47.883] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384302 | service: service-general
[2026-04-26 07:57:47.883] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384303 | kode_kfa: | service: service-general
[2026-04-26 07:57:47.883] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384303 | service: service-general
[2026-04-26 07:57:47.884] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384304 | kode_kfa: 93000777 | service: service-general
[2026-04-26 07:57:47.884] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93000777 | service: service-general | status: 404
[2026-04-26 07:57:48.066] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 50d251d8-7208-419d-a8bc-84ad979f17d8 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384304 | service: service-general
[2026-04-26 07:57:48.067] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384304 | request_payload: map[kfa_code:93000777 manufacturer_id:100026555 medication_id:3384304 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93000777","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"50d251d8-7208-419d-a8bc-84ad979f17d8","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384304"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:57:48.030933+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDI2ODAzMDkzMzAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:57:48.067] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:57:50.069] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384305 | kode_kfa: 93009092 | service: service-general
[2026-04-26 07:57:50.070] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93009092 | service: service-general | status: 404
[2026-04-26 07:57:50.284] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: e8001b64-b90f-41cc-95e2-5efda731c504 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384305 | service: service-general
[2026-04-26 07:57:50.285] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384305 | request_payload: map[kfa_code:93009092 manufacturer_id:100026555 medication_id:3384305 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93009092","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"e8001b64-b90f-41cc-95e2-5efda731c504","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384305"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:57:50.244336+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDI3MDI0NDMzNjAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:57:50.285] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:57:52.287] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384306 | kode_kfa: | service: service-general
[2026-04-26 07:57:52.287] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384306 | service: service-general
[2026-04-26 07:57:52.287] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384307 | kode_kfa: | service: service-general
[2026-04-26 07:57:52.287] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384307 | service: service-general
[2026-04-26 07:57:52.288] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384308 | kode_kfa: 93002977 | service: service-general
[2026-04-26 07:57:52.289] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93002977 | service: service-general | status: 404
[2026-04-26 07:57:52.476] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 4d33f376-1437-4874-9573-924d1c02fefa | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384308 | service: service-general
[2026-04-26 07:57:52.476] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384308 | request_payload: map[kfa_code:93002977 manufacturer_id:100026555 medication_id:3384308 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93002977","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"4d33f376-1437-4874-9573-924d1c02fefa","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384308"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:57:52.436718+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDI3MjQzNjcxODAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:57:52.477] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:57:54.478] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384309 | kode_kfa: | service: service-general
[2026-04-26 07:57:54.479] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384309 | service: service-general
[2026-04-26 07:57:54.479] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384310 | kode_kfa: 93020730 | service: service-general
[2026-04-26 07:57:54.480] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93020730 | service: service-general | status: 404
[2026-04-26 07:57:54.662] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 0a19db00-a042-4acb-8a8f-35485e1b2aad | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384310 | service: service-general
[2026-04-26 07:57:54.662] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384310 | request_payload: map[kfa_code:93020730 manufacturer_id:100026555 medication_id:3384310 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93020730","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"0a19db00-a042-4acb-8a8f-35485e1b2aad","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384310"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:57:54.626427+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDI3NDYyNjQyNzAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:57:54.663] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:57:56.666] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384311 | kode_kfa: 93000777 | service: service-general
[2026-04-26 07:57:56.667] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93000777 | service: service-general | status: 404
[2026-04-26 07:57:56.835] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 38621f80-ae46-46ac-8f62-4bc7b66c2776 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384311 | service: service-general
[2026-04-26 07:57:56.836] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384311 | request_payload: map[kfa_code:93000777 manufacturer_id:100026555 medication_id:3384311 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93000777","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"38621f80-ae46-46ac-8f62-4bc7b66c2776","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384311"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:57:56.798569+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDI3Njc5ODU2OTAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:57:56.836] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:57:58.839] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384312 | kode_kfa: | service: service-general
[2026-04-26 07:57:58.839] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384312 | service: service-general
[2026-04-26 07:57:58.839] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384313 | kode_kfa: | service: service-general
[2026-04-26 07:57:58.839] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384313 | service: service-general
[2026-04-26 07:57:58.840] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384314 | kode_kfa: 93004342 | service: service-general
[2026-04-26 07:57:58.841] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93004342 | service: service-general | status: 404
[2026-04-26 07:57:59.034] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 5d978686-2e70-4ed3-825a-e7ed18f400e8 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384314 | service: service-general
[2026-04-26 07:57:59.034] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384314 | request_payload: map[kfa_code:93004342 manufacturer_id:100026555 medication_id:3384314 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93004342","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"5d978686-2e70-4ed3-825a-e7ed18f400e8","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384314"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:57:58.995428+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDI3ODk5NTQyODAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:57:59.034] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:01.037] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384315 | kode_kfa: 93020730 | service: service-general
[2026-04-26 07:58:01.037] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93020730 | service: service-general | status: 404
[2026-04-26 07:58:01.232] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 7d5ef2c5-5079-43e5-b0ce-5284f51006fe | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384315 | service: service-general
[2026-04-26 07:58:01.232] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384315 | request_payload: map[kfa_code:93020730 manufacturer_id:100026555 medication_id:3384315 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93020730","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"7d5ef2c5-5079-43e5-b0ce-5284f51006fe","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384315"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:01.192166+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDI4MTE5MjE2NjAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:01.232] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:03.234] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384316 | kode_kfa: 93021255 | service: service-general
[2026-04-26 07:58:03.235] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93021255 | service: service-general | status: 404
[2026-04-26 07:58:03.438] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: d789fe64-cf62-41ac-bbb6-227c23d90650 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384316 | service: service-general
[2026-04-26 07:58:03.438] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384316 | request_payload: map[kfa_code:93021255 manufacturer_id:100026555 medication_id:3384316 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93021255","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"d789fe64-cf62-41ac-bbb6-227c23d90650","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384316"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:03.402278+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDI4MzQwMjI3ODAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:03.439] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:05.442] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384317 | kode_kfa: 93001422 | service: service-general
[2026-04-26 07:58:05.443] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93001422 | service: service-general | status: 404
[2026-04-26 07:58:05.648] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: a1b6f81e-a194-4b23-bd84-9cf249d8a40d | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384317 | service: service-general
[2026-04-26 07:58:05.648] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384317 | request_payload: map[kfa_code:93001422 manufacturer_id:100026555 medication_id:3384317 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93001422","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"a1b6f81e-a194-4b23-bd84-9cf249d8a40d","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384317"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:05.608430+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDI4NTYwODQzMDAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:05.648] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:07.650] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384318 | kode_kfa: | service: service-general
[2026-04-26 07:58:07.650] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384318 | service: service-general
[2026-04-26 07:58:07.650] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384319 | kode_kfa: | service: service-general
[2026-04-26 07:58:07.650] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384319 | service: service-general
[2026-04-26 07:58:07.650] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384320 | kode_kfa: | service: service-general
[2026-04-26 07:58:07.651] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384320 | service: service-general
[2026-04-26 07:58:07.651] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384321 | kode_kfa: 93000797 | service: service-general
[2026-04-26 07:58:07.652] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93000797 | service: service-general | status: 404
[2026-04-26 07:58:07.848] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: f56e3cce-7bfc-479a-8bb0-c2a5e35ff956 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384321 | service: service-general
[2026-04-26 07:58:07.849] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384321 | request_payload: map[kfa_code:93000797 manufacturer_id:100026555 medication_id:3384321 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93000797","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"f56e3cce-7bfc-479a-8bb0-c2a5e35ff956","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384321"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:07.807128+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDI4NzgwNzEyODAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:07.849] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:09.851] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384322 | kode_kfa: | service: service-general
[2026-04-26 07:58:09.852] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384322 | service: service-general
[2026-04-26 07:58:09.852] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384323 | kode_kfa: | service: service-general
[2026-04-26 07:58:09.852] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384323 | service: service-general
[2026-04-26 07:58:09.853] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384324 | kode_kfa: | service: service-general
[2026-04-26 07:58:09.853] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384324 | service: service-general
[2026-04-26 07:58:09.853] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384325 | kode_kfa: 93000777 | service: service-general
[2026-04-26 07:58:09.854] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93000777 | service: service-general | status: 404
[2026-04-26 07:58:10.040] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 919c9238-965c-40aa-81ae-7374d178475e | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384325 | service: service-general
[2026-04-26 07:58:10.040] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384325 | request_payload: map[kfa_code:93000777 manufacturer_id:100026555 medication_id:3384325 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93000777","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"919c9238-965c-40aa-81ae-7374d178475e","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384325"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:10.003171+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDI5MDAwMzE3MTAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:10.041] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:12.043] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384326 | kode_kfa: | service: service-general
[2026-04-26 07:58:12.044] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384326 | service: service-general
[2026-04-26 07:58:12.044] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384327 | kode_kfa: | service: service-general
[2026-04-26 07:58:12.044] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384327 | service: service-general
[2026-04-26 07:58:12.044] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384328 | kode_kfa: | service: service-general
[2026-04-26 07:58:12.044] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384328 | service: service-general
[2026-04-26 07:58:12.045] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384329 | kode_kfa: | service: service-general
[2026-04-26 07:58:12.045] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384329 | service: service-general
[2026-04-26 07:58:12.045] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384330 | kode_kfa: 93001182 | service: service-general
[2026-04-26 07:58:12.046] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93001182 | service: service-general | status: 404
[2026-04-26 07:58:12.223] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 14b64e7b-fdd4-4e95-9152-54ba88fb1f02 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384330 | service: service-general
[2026-04-26 07:58:12.223] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384330 | request_payload: map[kfa_code:93001182 manufacturer_id:100026555 medication_id:3384330 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93001182","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"14b64e7b-fdd4-4e95-9152-54ba88fb1f02","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384330"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:12.187345+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDI5MjE4NzM0NTAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:12.224] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:14.227] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384331 | kode_kfa: 93002919 | service: service-general
[2026-04-26 07:58:14.228] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93002919 | service: service-general | status: 404
[2026-04-26 07:58:14.413] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: a73228ae-6021-41ca-9edd-61fdd21647d4 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384331 | service: service-general
[2026-04-26 07:58:14.413] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384331 | request_payload: map[kfa_code:93002919 manufacturer_id:100026555 medication_id:3384331 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93002919","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"a73228ae-6021-41ca-9edd-61fdd21647d4","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384331"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:14.373986+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDI5NDM3Mzk4NjAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:14.414] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:16.416] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384332 | kode_kfa: | service: service-general
[2026-04-26 07:58:16.416] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384332 | service: service-general
[2026-04-26 07:58:16.416] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384333 | kode_kfa: 93021401 | service: service-general
[2026-04-26 07:58:16.417] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93021401 | service: service-general | status: 404
[2026-04-26 07:58:16.622] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: f9d36faa-e97f-4cb9-a189-1c5c45598ea1 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384333 | service: service-general
[2026-04-26 07:58:16.622] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384333 | request_payload: map[kfa_code:93021401 manufacturer_id:100026555 medication_id:3384333 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93021401","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"f9d36faa-e97f-4cb9-a189-1c5c45598ea1","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384333"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:16.582128+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDI5NjU4MjEyODAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:16.623] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:18.625] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384334 | kode_kfa: 93000797 | service: service-general
[2026-04-26 07:58:18.625] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93000797 | service: service-general | status: 404
[2026-04-26 07:58:18.788] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: fa39f375-2a60-4782-bec4-1919c178795e | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384334 | service: service-general
[2026-04-26 07:58:18.788] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384334 | request_payload: map[kfa_code:93000797 manufacturer_id:100026555 medication_id:3384334 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93000797","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"fa39f375-2a60-4782-bec4-1919c178795e","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384334"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:18.748658+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDI5ODc0ODY1ODAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:18.789] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:20.792] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384335 | kode_kfa: 93000541 | service: service-general
[2026-04-26 07:58:20.792] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93000541 | service: service-general | status: 404
[2026-04-26 07:58:21.020] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 10691f24-78ea-45bf-9419-0300e2a24320 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384335 | service: service-general
[2026-04-26 07:58:21.020] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384335 | request_payload: map[kfa_code:93000541 manufacturer_id:100026555 medication_id:3384335 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93000541","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"10691f24-78ea-45bf-9419-0300e2a24320","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384335"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:20.975671+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDMwMDk3NTY3MTAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:21.020] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:23.023] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384336 | kode_kfa: 93001468 | service: service-general
[2026-04-26 07:58:23.024] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93001468 | service: service-general | status: 404
[2026-04-26 07:58:23.235] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 528649f6-0654-40f9-b310-806a35e0f3bf | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384336 | service: service-general
[2026-04-26 07:58:23.235] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384336 | request_payload: map[kfa_code:93001468 manufacturer_id:100026555 medication_id:3384336 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93001468","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"528649f6-0654-40f9-b310-806a35e0f3bf","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384336"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:23.201058+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDMwMzIwMTA1ODAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:23.236] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:25.239] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384337 | kode_kfa: | service: service-general
[2026-04-26 07:58:25.239] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384337 | service: service-general
[2026-04-26 07:58:25.239] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384338 | kode_kfa: | service: service-general
[2026-04-26 07:58:25.239] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384338 | service: service-general
[2026-04-26 07:58:25.239] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384339 | kode_kfa: | service: service-general
[2026-04-26 07:58:25.239] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384339 | service: service-general
[2026-04-26 07:58:25.240] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384340 | kode_kfa: 93000797 | service: service-general
[2026-04-26 07:58:25.241] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93000797 | service: service-general | status: 404
[2026-04-26 07:58:25.443] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: e738cad7-8ff5-4d96-b01a-01117847bfd8 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384340 | service: service-general
[2026-04-26 07:58:25.444] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384340 | request_payload: map[kfa_code:93000797 manufacturer_id:100026555 medication_id:3384340 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93000797","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"e738cad7-8ff5-4d96-b01a-01117847bfd8","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384340"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:25.405219+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDMwNTQwNTIxOTAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:25.444] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:27.447] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384341 | kode_kfa: | service: service-general
[2026-04-26 07:58:27.447] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384341 | service: service-general
[2026-04-26 07:58:27.447] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384342 | kode_kfa: | service: service-general
[2026-04-26 07:58:27.447] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384342 | service: service-general
[2026-04-26 07:58:27.447] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384343 | kode_kfa: 93008848 | service: service-general
[2026-04-26 07:58:27.448] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93008848 | service: service-general | status: 404
[2026-04-26 07:58:27.647] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 7b628d79-28fa-4ee1-ad1b-94760b6be2f0 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384343 | service: service-general
[2026-04-26 07:58:27.648] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384343 | request_payload: map[kfa_code:93008848 manufacturer_id:100026555 medication_id:3384343 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93008848","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"7b628d79-28fa-4ee1-ad1b-94760b6be2f0","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384343"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:27.613243+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDMwNzYxMzI0MzAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:27.648] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:29.650] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384344 | kode_kfa: | service: service-general
[2026-04-26 07:58:29.650] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384344 | service: service-general
[2026-04-26 07:58:29.650] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384345 | kode_kfa: | service: service-general
[2026-04-26 07:58:29.650] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384345 | service: service-general
[2026-04-26 07:58:29.651] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384346 | kode_kfa: | service: service-general
[2026-04-26 07:58:29.651] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384346 | service: service-general
[2026-04-26 07:58:29.651] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384347 | kode_kfa: | service: service-general
[2026-04-26 07:58:29.651] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384347 | service: service-general
[2026-04-26 07:58:29.651] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384348 | kode_kfa: | service: service-general
[2026-04-26 07:58:29.651] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384348 | service: service-general
[2026-04-26 07:58:29.652] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384349 | kode_kfa: 93007279 | service: service-general
[2026-04-26 07:58:29.652] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93007279 | service: service-general | status: 404
[2026-04-26 07:58:29.843] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 2abd44ab-3465-4b77-aa8f-6bf0f3459fb4 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384349 | service: service-general
[2026-04-26 07:58:29.843] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384349 | request_payload: map[kfa_code:93007279 manufacturer_id:100026555 medication_id:3384349 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93007279","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"2abd44ab-3465-4b77-aa8f-6bf0f3459fb4","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384349"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:29.805921+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDMwOTgwNTkyMTAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:29.843] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:31.845] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384350 | kode_kfa: | service: service-general
[2026-04-26 07:58:31.845] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384350 | service: service-general
[2026-04-26 07:58:31.846] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384351 | kode_kfa: | service: service-general
[2026-04-26 07:58:31.846] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384351 | service: service-general
[2026-04-26 07:58:31.846] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384352 | kode_kfa: | service: service-general
[2026-04-26 07:58:31.846] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384352 | service: service-general
[2026-04-26 07:58:31.846] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384353 | kode_kfa: | service: service-general
[2026-04-26 07:58:31.846] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384353 | service: service-general
[2026-04-26 07:58:31.847] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384354 | kode_kfa: 93019872 | service: service-general
[2026-04-26 07:58:31.848] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93019872 | service: service-general | status: 404
[2026-04-26 07:58:32.080] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: a361bb0e-5764-4ad6-b0a1-6ea402a8170b | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384354 | service: service-general
[2026-04-26 07:58:32.080] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384354 | request_payload: map[kfa_code:93019872 manufacturer_id:100026555 medication_id:3384354 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93019872","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"a361bb0e-5764-4ad6-b0a1-6ea402a8170b","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384354"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:32.041671+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDMxMjA0MTY3MTAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:32.081] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:34.083] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384355 | kode_kfa: 93001228 | service: service-general
[2026-04-26 07:58:34.084] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93001228 | service: service-general | status: 404
[2026-04-26 07:58:34.278] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 50c35eca-5cdb-4f26-97d8-0f1a16f812f4 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384355 | service: service-general
[2026-04-26 07:58:34.278] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384355 | request_payload: map[kfa_code:93001228 manufacturer_id:100026555 medication_id:3384355 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93001228","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"50c35eca-5cdb-4f26-97d8-0f1a16f812f4","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384355"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:34.242483+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDMxNDI0MjQ4MzAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:34.278] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:36.280] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384356 | kode_kfa: | service: service-general
[2026-04-26 07:58:36.280] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384356 | service: service-general
[2026-04-26 07:58:36.281] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384357 | kode_kfa: | service: service-general
[2026-04-26 07:58:36.281] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384357 | service: service-general
[2026-04-26 07:58:36.281] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384358 | kode_kfa: 93001228 | service: service-general
[2026-04-26 07:58:36.282] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93001228 | service: service-general | status: 404
[2026-04-26 07:58:36.486] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: f33107bf-e1d1-49f9-9d49-58e0ae4919af | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384358 | service: service-general
[2026-04-26 07:58:36.486] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384358 | request_payload: map[kfa_code:93001228 manufacturer_id:100026555 medication_id:3384358 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93001228","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"f33107bf-e1d1-49f9-9d49-58e0ae4919af","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384358"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:36.446566+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDMxNjQ0NjU2NjAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:36.487] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:38.489] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384359 | kode_kfa: | service: service-general
[2026-04-26 07:58:38.489] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384359 | service: service-general
[2026-04-26 07:58:38.489] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384360 | kode_kfa: | service: service-general
[2026-04-26 07:58:38.489] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384360 | service: service-general
[2026-04-26 07:58:38.490] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384361 | kode_kfa: 93003145 | service: service-general
[2026-04-26 07:58:38.492] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93003145 | service: service-general | status: 404
[2026-04-26 07:58:38.718] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 413056a4-450e-4eb7-942e-752aeea608fd | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384361 | service: service-general
[2026-04-26 07:58:38.718] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384361 | request_payload: map[kfa_code:93003145 manufacturer_id:100026555 medication_id:3384361 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93003145","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"413056a4-450e-4eb7-942e-752aeea608fd","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384361"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:38.675886+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDMxODY3NTg4NjAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:38.719] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:40.722] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384362 | kode_kfa: | service: service-general
[2026-04-26 07:58:40.722] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384362 | service: service-general
[2026-04-26 07:58:40.723] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384363 | kode_kfa: 93004458 | service: service-general
[2026-04-26 07:58:40.724] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93004458 | service: service-general | status: 404
[2026-04-26 07:58:40.911] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: a6dbe25e-0c99-41ab-85d4-468c10adff68 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384363 | service: service-general
[2026-04-26 07:58:40.911] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384363 | request_payload: map[kfa_code:93004458 manufacturer_id:100026555 medication_id:3384363 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93004458","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"a6dbe25e-0c99-41ab-85d4-468c10adff68","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384363"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:40.875181+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDMyMDg3NTE4MTAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:40.912] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:42.914] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384364 | kode_kfa: | service: service-general
[2026-04-26 07:58:42.915] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384364 | service: service-general
[2026-04-26 07:58:42.915] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384365 | kode_kfa: | service: service-general
[2026-04-26 07:58:42.915] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384365 | service: service-general
[2026-04-26 07:58:42.915] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384366 | kode_kfa: | service: service-general
[2026-04-26 07:58:42.915] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384366 | service: service-general
[2026-04-26 07:58:42.916] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384367 | kode_kfa: | service: service-general
[2026-04-26 07:58:42.916] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384367 | service: service-general
[2026-04-26 07:58:42.917] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384368 | kode_kfa: | service: service-general
[2026-04-26 07:58:42.917] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384368 | service: service-general
[2026-04-26 07:58:42.917] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384369 | kode_kfa: | service: service-general
[2026-04-26 07:58:42.917] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384369 | service: service-general
[2026-04-26 07:58:42.917] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384370 | kode_kfa: | service: service-general
[2026-04-26 07:58:42.917] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384370 | service: service-general
[2026-04-26 07:58:42.918] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384371 | kode_kfa: | service: service-general
[2026-04-26 07:58:42.918] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384371 | service: service-general
[2026-04-26 07:58:42.918] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384372 | kode_kfa: | service: service-general
[2026-04-26 07:58:42.918] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384372 | service: service-general
[2026-04-26 07:58:42.919] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384373 | kode_kfa: | service: service-general
[2026-04-26 07:58:42.919] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384373 | service: service-general
[2026-04-26 07:58:42.919] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384374 | kode_kfa: | service: service-general
[2026-04-26 07:58:42.919] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384374 | service: service-general
[2026-04-26 07:58:42.920] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384375 | kode_kfa: 93001047 | service: service-general
[2026-04-26 07:58:42.920] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93001047 | service: service-general | status: 404
[2026-04-26 07:58:43.109] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: ec7b064e-5f3c-4d90-9776-0ec61d34833c | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384375 | service: service-general
[2026-04-26 07:58:43.109] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384375 | request_payload: map[kfa_code:93001047 manufacturer_id:100026555 medication_id:3384375 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93001047","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"ec7b064e-5f3c-4d90-9776-0ec61d34833c","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384375"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:43.074286+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDMyMzA3NDI4NjAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:43.110] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:45.111] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384376 | kode_kfa: | service: service-general
[2026-04-26 07:58:45.111] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384376 | service: service-general
[2026-04-26 07:58:45.112] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384377 | kode_kfa: | service: service-general
[2026-04-26 07:58:45.112] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384377 | service: service-general
[2026-04-26 07:58:45.112] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384378 | kode_kfa: | service: service-general
[2026-04-26 07:58:45.113] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384378 | service: service-general
[2026-04-26 07:58:45.113] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384379 | kode_kfa: 93001406 | service: service-general
[2026-04-26 07:58:45.114] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93001406 | service: service-general | status: 404
[2026-04-26 07:58:45.318] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 0495eb25-d3dd-4c31-b9bc-dbfa770a2152 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384379 | service: service-general
[2026-04-26 07:58:45.318] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384379 | request_payload: map[kfa_code:93001406 manufacturer_id:100026555 medication_id:3384379 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93001406","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"0495eb25-d3dd-4c31-b9bc-dbfa770a2152","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384379"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:45.280963+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDMyNTI4MDk2MzAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:45.321] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:47.323] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384380 | kode_kfa: 93000705 | service: service-general
[2026-04-26 07:58:47.323] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93000705 | service: service-general | status: 404
[2026-04-26 07:58:47.528] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: b4abceee-6535-4839-b463-76df18f51a22 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384380 | service: service-general
[2026-04-26 07:58:47.528] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384380 | request_payload: map[kfa_code:93000705 manufacturer_id:100026555 medication_id:3384380 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93000705","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"b4abceee-6535-4839-b463-76df18f51a22","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384380"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:47.491017+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDMyNzQ5MTAxNzAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:47.528] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:49.530] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384381 | kode_kfa: | service: service-general
[2026-04-26 07:58:49.530] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384381 | service: service-general
[2026-04-26 07:58:49.530] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384382 | kode_kfa: | service: service-general
[2026-04-26 07:58:49.530] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384382 | service: service-general
[2026-04-26 07:58:49.531] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384383 | kode_kfa: 93000797 | service: service-general
[2026-04-26 07:58:49.531] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93000797 | service: service-general | status: 404
[2026-04-26 07:58:49.695] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 10989bab-0c22-4231-a676-8e41a0f60021 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384383 | service: service-general
[2026-04-26 07:58:49.696] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384383 | request_payload: map[kfa_code:93000797 manufacturer_id:100026555 medication_id:3384383 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93000797","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"10989bab-0c22-4231-a676-8e41a0f60021","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384383"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:49.657683+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDMyOTY1NzY4MzAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:49.696] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:51.697] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384384 | kode_kfa: 93000777 | service: service-general
[2026-04-26 07:58:51.698] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93000777 | service: service-general | status: 404
[2026-04-26 07:58:51.876] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: db35de2c-1777-4a30-b859-ffa88a01723a | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384384 | service: service-general
[2026-04-26 07:58:51.876] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384384 | request_payload: map[kfa_code:93000777 manufacturer_id:100026555 medication_id:3384384 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93000777","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"db35de2c-1777-4a30-b859-ffa88a01723a","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384384"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:51.834981+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDMzMTgzNDk4MTAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:51.876] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:53.878] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384385 | kode_kfa: | service: service-general
[2026-04-26 07:58:53.879] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384385 | service: service-general
[2026-04-26 07:58:53.879] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384386 | kode_kfa: | service: service-general
[2026-04-26 07:58:53.879] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384386 | service: service-general
[2026-04-26 07:58:53.879] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384387 | kode_kfa: 93004458 | service: service-general
[2026-04-26 07:58:53.880] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93004458 | service: service-general | status: 404
[2026-04-26 07:58:54.055] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 7fc38f6a-6579-459b-bfa5-6eed9a24f274 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384387 | service: service-general
[2026-04-26 07:58:54.055] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384387 | request_payload: map[kfa_code:93004458 manufacturer_id:100026555 medication_id:3384387 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93004458","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"7fc38f6a-6579-459b-bfa5-6eed9a24f274","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384387"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:54.017170+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDMzNDAxNzE3MDAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:54.055] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:56.057] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384388 | kode_kfa: 93001406 | service: service-general
[2026-04-26 07:58:56.057] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93001406 | service: service-general | status: 404
[2026-04-26 07:58:56.256] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: b25684e7-e8d4-4470-b26a-ee1e54241af8 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384388 | service: service-general
[2026-04-26 07:58:56.256] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384388 | request_payload: map[kfa_code:93001406 manufacturer_id:100026555 medication_id:3384388 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93001406","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"b25684e7-e8d4-4470-b26a-ee1e54241af8","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384388"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:56.219267+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDMzNjIxOTI2NzAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:56.257] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:58:58.259] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384389 | kode_kfa: | service: service-general
[2026-04-26 07:58:58.260] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384389 | service: service-general
[2026-04-26 07:58:58.260] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384390 | kode_kfa: | service: service-general
[2026-04-26 07:58:58.260] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384390 | service: service-general
[2026-04-26 07:58:58.261] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384391 | kode_kfa: | service: service-general
[2026-04-26 07:58:58.261] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384391 | service: service-general
[2026-04-26 07:58:58.261] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384392 | kode_kfa: | service: service-general
[2026-04-26 07:58:58.261] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384392 | service: service-general
[2026-04-26 07:58:58.261] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384393 | kode_kfa: | service: service-general
[2026-04-26 07:58:58.261] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384393 | service: service-general
[2026-04-26 07:58:58.262] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384394 | kode_kfa: | service: service-general
[2026-04-26 07:58:58.262] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384394 | service: service-general
[2026-04-26 07:58:58.262] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384395 | kode_kfa: | service: service-general
[2026-04-26 07:58:58.262] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384395 | service: service-general
[2026-04-26 07:58:58.262] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384396 | kode_kfa: | service: service-general
[2026-04-26 07:58:58.262] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384396 | service: service-general
[2026-04-26 07:58:58.263] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384397 | kode_kfa: | service: service-general
[2026-04-26 07:58:58.263] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384397 | service: service-general
[2026-04-26 07:58:58.263] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384398 | kode_kfa: | service: service-general
[2026-04-26 07:58:58.263] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384398 | service: service-general
[2026-04-26 07:58:58.264] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384399 | kode_kfa: 93001406 | service: service-general
[2026-04-26 07:58:58.264] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93001406 | service: service-general | status: 404
[2026-04-26 07:58:58.464] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 419a8949-3489-439c-ae2a-1f6ec6fa7d0f | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384399 | service: service-general
[2026-04-26 07:58:58.464] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384399 | request_payload: map[kfa_code:93001406 manufacturer_id:100026555 medication_id:3384399 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93001406","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"419a8949-3489-439c-ae2a-1f6ec6fa7d0f","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384399"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:58:58.427313+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDMzODQyNzMxMzAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:58:58.464] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 07:59:00.465] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384400 | kode_kfa: 93001720 | service: service-general
[2026-04-26 07:59:00.466] [WARNI] [MEDICATION WORKER] KFA tidak ditemukan / Error | 📍 service.go:221 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).fetchKFADetails | kfa_code: 93001720 | service: service-general | status: 404
[2026-04-26 07:59:00.639] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: ebb3d1e4-6d30-4822-908d-9e768c62ac80 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384400 | service: service-general
[2026-04-26 07:59:00.639] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384400 | request_payload: map[kfa_code:93001720 manufacturer_id:100026555 medication_id:3384400 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93001720","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"id":"ebb3d1e4-6d30-4822-908d-9e768c62ac80","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384400"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T07:59:00.602034+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDM0MDYwMjAzNDAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 07:59:00.640] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:04:58.061] [INFO ] Application starting | 📍 main.go:64 | environment: debug | ⚙️ main.main | log_level: debug | service: service-general
[2026-04-26 08:04:58.062] [DEBUG] Config loaded | cache_enabled: true | 📍 main.go:79 | database_count: 5 | environment: debug | ⚙️ main.main | server_mode: debug | service: service-general
[2026-04-26 08:04:58.062] [INFO ] Minio Object Storage client initialized | 📍 main.go:91 | environment: debug | ⚙️ main.main | service: service-general
[2026-04-26 08:04:58.062] [INFO ] Initializing database service with GORM as primary abstraction... | 📍 database.go:192 | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-26 08:04:58.070] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:384 | db_name: satudata | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-26 08:04:58.070] [INFO ] Successfully connected to database | 📍 database.go:203 | db_name: satudata | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-26 08:04:58.073] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:384 | db_name: ris | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-26 08:04:58.073] [INFO ] Successfully connected to database | 📍 database.go:203 | db_name: ris | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-26 08:04:58.093] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:384 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-26 08:04:58.093] [INFO ] Successfully connected to database | 📍 database.go:203 | db_name: farmasi | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-26 08:04:58.100] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:384 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-26 08:04:58.100] [INFO ] Successfully connected to database | 📍 database.go:203 | db_name: simrs | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-26 08:04:58.107] [INFO ] Successfully connected and configured GORM for database | 📍 database.go:384 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.(*service).addDatabase | service: service-general
[2026-04-26 08:04:58.107] [INFO ] Successfully connected to database | 📍 database.go:203 | db_name: default | environment: debug | ⚙️ service/internal/infrastructure/database.New.func1 | service: service-general
[2026-04-26 08:04:58.110] [INFO ] Cache initialized | 📍 main.go:124 | environment: debug | ⚙️ main.main | host: redis | port: 6379 | service: service-general
[2026-04-26 08:04:58.110] [INFO ] Creating authentication providers | auth_type: hybrid | 📍 provider.go:69 | environment: debug | fallback_to: jwt | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | keycloak_enabled: true | keycloak_issuer: https://auth.rssa.top/realms/Dev | service: service-general | static_tokens_len: 4
[2026-04-26 08:04:58.110] [INFO ] Keycloak provider added for hybrid | 📍 provider.go:97 | environment: debug | ⚙️ service/internal/infrastructure/transport/http/middleware.(*ProviderFactory).CreateProviders | service: service-general
[2026-04-26 08:04:58.111] [INFO ] REST API running | 📍 main.go:184 | environment: debug | ⚙️ main.main.func1 | port: 8098 | service: service-general
[2026-04-26 08:04:58.111] [INFO ] Application started successfully | 📍 main.go:257 | environment: debug | ⚙️ main.main | service: service-general
[2026-04-26 08:04:58.111] [INFO ] gRPC Server running | 📍 main.go:211 | environment: debug | ⚙️ main.main.func2 | port: 8099 | service: service-general
[2026-04-26 08:04:58.111] [INFO ] Starting background workers... | 📍 worker.go:40 | environment: debug | ⚙️ service/internal/worker.(*Manager).Start | service: service-general
[2026-04-26 08:04:58.111] [INFO ] [WORKER AUTH] Melakukan login untuk mendapatkan token awal... | 📍 auth.go:37 | environment: debug | ⚙️ service/internal/worker.(*Manager).login | service: service-general | url: http://service-satusehat:8096/api/v1/auth/login
[2026-04-26 08:04:58.113] [INFO ] [WORKER AUTH] Berhasil mendapatkan token awal. | 📍 auth.go:69 | environment: debug | ⚙️ service/internal/worker.(*Manager).login | service: service-general
[2026-04-26 08:04:58.114] [INFO ] [Medication (Master) WORKER] Started | 📍 worker.go:269 | environment: debug | ⚙️ service/internal/worker.(*Manager).Start.func2.1 | service: service-general
[2026-04-26 08:04:58.114] [INFO ] [MEDICATION WORKER] Memulai proses sinkronisasi API... | 📍 service.go:55 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:04:58.114] [INFO ] [MEDICATION WORKER] Melanjutkan proses dari | 📍 service.go:63 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | last_id: 3384400 | service: service-general
[2026-04-26 08:04:58.117] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384401 | kode_kfa: | service: service-general
[2026-04-26 08:04:58.117] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384401 | service: service-general
[2026-04-26 08:04:58.117] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384402 | kode_kfa: | service: service-general
[2026-04-26 08:04:58.117] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384402 | service: service-general
[2026-04-26 08:04:58.118] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384403 | kode_kfa: | service: service-general
[2026-04-26 08:04:58.118] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384403 | service: service-general
[2026-04-26 08:04:58.118] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384404 | kode_kfa: | service: service-general
[2026-04-26 08:04:58.119] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384404 | service: service-general
[2026-04-26 08:04:58.119] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384405 | kode_kfa: 93000422 | service: service-general
[2026-04-26 08:04:58.501] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 80593d6a-749e-4602-b8a6-688d039e1f1f | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384405 | service: service-general
[2026-04-26 08:04:58.501] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384405 | request_payload: map[form_code:BS066 form_display:Tablet kfa_code:93000422 kfa_display:Methotrexate 2,5 mg Tablet (RHEU - TREX) manufacturer_id:100026555 medication_id:3384405 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93000422","display":"Methotrexate 2,5 mg Tablet (RHEU - TREX)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS066","display":"Tablet","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"80593d6a-749e-4602-b8a6-688d039e1f1f","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384405"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:04:58.464658+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDY5ODQ2NDY1ODAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:04:58.502] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:00.504] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384406 | kode_kfa: | service: service-general
[2026-04-26 08:05:00.504] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384406 | service: service-general
[2026-04-26 08:05:00.505] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384407 | kode_kfa: | service: service-general
[2026-04-26 08:05:00.505] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384407 | service: service-general
[2026-04-26 08:05:00.505] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384408 | kode_kfa: 93004458 | service: service-general
[2026-04-26 08:05:00.808] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: abb1b18a-6915-4999-b016-68366d96be2d | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384408 | service: service-general
[2026-04-26 08:05:00.808] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384408 | request_payload: map[form_code:BS084 form_display:Tetes Mata kfa_code:93004458 kfa_display:Potassium Chloride 0,8 mg/mL / Sodium Chloride 4,4 mg/mL Tetes Mata (0,6 mL, CENDO LYTEERS) manufacturer_id:100026555 medication_id:3384408 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93004458","display":"Potassium Chloride 0,8 mg/mL / Sodium Chloride 4,4 mg/mL Tetes Mata (0,6 mL, CENDO LYTEERS)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS084","display":"Tetes Mata","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"abb1b18a-6915-4999-b016-68366d96be2d","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384408"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:00.772294+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDcwMDc3MjI5NDAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:00.809] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:02.810] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384409 | kode_kfa: | service: service-general
[2026-04-26 08:05:02.810] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384409 | service: service-general
[2026-04-26 08:05:02.811] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384410 | kode_kfa: | service: service-general
[2026-04-26 08:05:02.811] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384410 | service: service-general
[2026-04-26 08:05:02.811] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384411 | kode_kfa: | service: service-general
[2026-04-26 08:05:02.811] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384411 | service: service-general
[2026-04-26 08:05:02.812] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384412 | kode_kfa: | service: service-general
[2026-04-26 08:05:02.812] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384412 | service: service-general
[2026-04-26 08:05:02.812] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384413 | kode_kfa: | service: service-general
[2026-04-26 08:05:02.812] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384413 | service: service-general
[2026-04-26 08:05:02.813] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384414 | kode_kfa: | service: service-general
[2026-04-26 08:05:02.813] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384414 | service: service-general
[2026-04-26 08:05:02.813] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384415 | kode_kfa: | service: service-general
[2026-04-26 08:05:02.813] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384415 | service: service-general
[2026-04-26 08:05:02.814] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384416 | kode_kfa: 93021401 | service: service-general
[2026-04-26 08:05:03.186] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: e3921a30-dc8f-4085-a5be-ce24c077c768 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384416 | service: service-general
[2026-04-26 08:05:03.186] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384416 | request_payload: map[form_code:BS077 form_display:Tablet Salut Selaput kfa_code:93021401 kfa_display:Cetirizine Hydrochloride 10 mg Tablet Salut Selaput (HEXPHARM JAYA LABORATORIES) manufacturer_id:100026555 medication_id:3384416 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93021401","display":"Cetirizine Hydrochloride 10 mg Tablet Salut Selaput (HEXPHARM JAYA LABORATORIES)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS077","display":"Tablet Salut Selaput","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"e3921a30-dc8f-4085-a5be-ce24c077c768","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384416"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:03.151363+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDcwMzE1MTM2MzAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:03.187] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:05.189] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384417 | kode_kfa: 93000149 | service: service-general
[2026-04-26 08:05:05.481] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 7aeaec56-fd32-4d19-b561-5820c86eb803 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384417 | service: service-general
[2026-04-26 08:05:05.482] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384417 | request_payload: map[form_code:BS066 form_display:Tablet kfa_code:93000149 kfa_display:Methylprednisolone 8 mg Tablet (DEXA MEDICA) manufacturer_id:100026555 medication_id:3384417 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93000149","display":"Methylprednisolone 8 mg Tablet (DEXA MEDICA)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS066","display":"Tablet","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"7aeaec56-fd32-4d19-b561-5820c86eb803","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384417"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:05.444404+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDcwNTQ0NDQwNDAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:05.482] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:07.484] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384418 | kode_kfa: | service: service-general
[2026-04-26 08:05:07.484] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384418 | service: service-general
[2026-04-26 08:05:07.484] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384419 | kode_kfa: 93003335 | service: service-general
[2026-04-26 08:05:07.760] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 93d437c5-8118-4e3b-ae68-5c289fb8c004 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384419 | service: service-general
[2026-04-26 08:05:07.760] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384419 | request_payload: map[form_code:BS066 form_display:Tablet kfa_code:93003335 kfa_display:Simvastatin 20 mg Tablet (HEXPHARM JAYA LABORATORIES) manufacturer_id:100026555 medication_id:3384419 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93003335","display":"Simvastatin 20 mg Tablet (HEXPHARM JAYA LABORATORIES)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS066","display":"Tablet","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"93d437c5-8118-4e3b-ae68-5c289fb8c004","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384419"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:07.725416+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDcwNzcyNTQxNjAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:07.760] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:09.762] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384420 | kode_kfa: 93002872 | service: service-general
[2026-04-26 08:05:10.077] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 921bcc71-d632-4156-8a6f-7d79d887520a | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384420 | service: service-general
[2026-04-26 08:05:10.077] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384420 | request_payload: map[form_code:BS066 form_display:Tablet kfa_code:93002872 kfa_display:Furosemide 40 mg Tablet (YARINDO FARMATAMA) manufacturer_id:100026555 medication_id:3384420 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93002872","display":"Furosemide 40 mg Tablet (YARINDO FARMATAMA)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS066","display":"Tablet","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"921bcc71-d632-4156-8a6f-7d79d887520a","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384420"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:10.040023+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDcxMDA0MDAyMzAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:10.078] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:12.079] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384421 | kode_kfa: | service: service-general
[2026-04-26 08:05:12.079] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384421 | service: service-general
[2026-04-26 08:05:12.080] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384422 | kode_kfa: 93000541 | service: service-general
[2026-04-26 08:05:12.411] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 056092a6-bec8-46b4-85db-2e5f9da4b628 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384422 | service: service-general
[2026-04-26 08:05:12.411] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384422 | request_payload: map[form_code:BS066 form_display:Tablet kfa_code:93000541 kfa_display:Ramipril 10 mg Tablet (NOVELL PHARMACEUTICAL LABORATORIES) manufacturer_id:100026555 medication_id:3384422 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93000541","display":"Ramipril 10 mg Tablet (NOVELL PHARMACEUTICAL LABORATORIES)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS066","display":"Tablet","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"056092a6-bec8-46b4-85db-2e5f9da4b628","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384422"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:12.375010+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDcxMjM3NTAxMDAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:12.412] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:14.414] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384423 | kode_kfa: 93008945 | service: service-general
[2026-04-26 08:05:14.767] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: d8026a01-5b2f-423c-9042-577cb3221d8c | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384423 | service: service-general
[2026-04-26 08:05:14.767] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384423 | request_payload: map[form_code:BS077 form_display:Tablet Salut Selaput kfa_code:93008945 kfa_display:Bisoprolol Fumarate 5 mg Tablet Salut Selaput (HEXPHARM JAYA LABORATORIES) manufacturer_id:100026555 medication_id:3384423 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93008945","display":"Bisoprolol Fumarate 5 mg Tablet Salut Selaput (HEXPHARM JAYA LABORATORIES)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS077","display":"Tablet Salut Selaput","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"d8026a01-5b2f-423c-9042-577cb3221d8c","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384423"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:14.730252+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDcxNDczMDI1MjAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:14.768] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:16.769] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384424 | kode_kfa: | service: service-general
[2026-04-26 08:05:16.770] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384424 | service: service-general
[2026-04-26 08:05:16.770] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384425 | kode_kfa: 93000355 | service: service-general
[2026-04-26 08:05:17.228] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 01adcc5c-349c-4381-9125-06816fa19034 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384425 | service: service-general
[2026-04-26 08:05:17.228] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384425 | request_payload: map[form_code:BS066 form_display:Tablet kfa_code:93000355 kfa_display:Spironolactone 25 mg Tablet (DEXA MEDICA) manufacturer_id:100026555 medication_id:3384425 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93000355","display":"Spironolactone 25 mg Tablet (DEXA MEDICA)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS066","display":"Tablet","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"01adcc5c-349c-4381-9125-06816fa19034","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384425"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:17.153640+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDcxNzE1MzY0MDAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:17.229] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:19.231] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384426 | kode_kfa: 93007279 | service: service-general
[2026-04-26 08:05:19.527] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 0eb873f5-054d-4861-9b57-ba4cd45c33a4 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384426 | service: service-general
[2026-04-26 08:05:19.527] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384426 | request_payload: map[form_code:BS021 form_display:Kapsul Pelepasan Lambat kfa_code:93007279 kfa_display:Lansoprazole 30 mg Kapsul Lepas Tunda (HEXPHARM JAYA LABORATORIES) manufacturer_id:100026555 medication_id:3384426 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93007279","display":"Lansoprazole 30 mg Kapsul Lepas Tunda (HEXPHARM JAYA LABORATORIES)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS021","display":"Kapsul Pelepasan Lambat","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"0eb873f5-054d-4861-9b57-ba4cd45c33a4","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384426"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:19.490960+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDcxOTQ5MDk2MDAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:19.527] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:21.529] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384427 | kode_kfa: 93000797 | service: service-general
[2026-04-26 08:05:21.847] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: effbe803-2e15-4624-a423-595bdf670556 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384427 | service: service-general
[2026-04-26 08:05:21.847] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384427 | request_payload: map[form_code:BS077 form_display:Tablet Salut Selaput kfa_code:93000797 kfa_display:Hydroxychloroquine Sulfate 200 mg Tablet Salut Selaput (IMEDCO DJAJA) manufacturer_id:100026555 medication_id:3384427 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93000797","display":"Hydroxychloroquine Sulfate 200 mg Tablet Salut Selaput (IMEDCO DJAJA)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS077","display":"Tablet Salut Selaput","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"effbe803-2e15-4624-a423-595bdf670556","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384427"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:21.813683+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDcyMTgxMzY4MzAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:21.848] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:23.850] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384428 | kode_kfa: 93000777 | service: service-general
[2026-04-26 08:05:24.216] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: ac8a89d3-3c82-468a-8b99-5b4975d30b46 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384428 | service: service-general
[2026-04-26 08:05:24.217] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384428 | request_payload: map[form_code:BS077 form_display:Tablet Salut Selaput kfa_code:93000777 kfa_display:Azathioprine 50 mg Tablet Salut Selaput (IMURAN) manufacturer_id:100026555 medication_id:3384428 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93000777","display":"Azathioprine 50 mg Tablet Salut Selaput (IMURAN)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS077","display":"Tablet Salut Selaput","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"ac8a89d3-3c82-468a-8b99-5b4975d30b46","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384428"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:24.182472+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDcyNDE4MjQ3MjAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:24.217] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:26.220] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384429 | kode_kfa: | service: service-general
[2026-04-26 08:05:26.220] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384429 | service: service-general
[2026-04-26 08:05:26.220] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384430 | kode_kfa: | service: service-general
[2026-04-26 08:05:26.220] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384430 | service: service-general
[2026-04-26 08:05:26.221] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384431 | kode_kfa: | service: service-general
[2026-04-26 08:05:26.221] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384431 | service: service-general
[2026-04-26 08:05:26.221] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384432 | kode_kfa: | service: service-general
[2026-04-26 08:05:26.221] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384432 | service: service-general
[2026-04-26 08:05:26.221] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384433 | kode_kfa: | service: service-general
[2026-04-26 08:05:26.221] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384433 | service: service-general
[2026-04-26 08:05:26.221] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384434 | kode_kfa: | service: service-general
[2026-04-26 08:05:26.222] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384434 | service: service-general
[2026-04-26 08:05:26.222] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384435 | kode_kfa: | service: service-general
[2026-04-26 08:05:26.222] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384435 | service: service-general
[2026-04-26 08:05:26.222] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384436 | kode_kfa: | service: service-general
[2026-04-26 08:05:26.222] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384436 | service: service-general
[2026-04-26 08:05:26.222] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384437 | kode_kfa: | service: service-general
[2026-04-26 08:05:26.222] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384437 | service: service-general
[2026-04-26 08:05:26.223] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384438 | kode_kfa: | service: service-general
[2026-04-26 08:05:26.223] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384438 | service: service-general
[2026-04-26 08:05:26.223] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384439 | kode_kfa: 93000567 | service: service-general
[2026-04-26 08:05:26.511] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 1a14cfa3-bfd6-49e3-9a87-3c496e07b18b | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384439 | service: service-general
[2026-04-26 08:05:26.511] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384439 | request_payload: map[form_code:BS066 form_display:Tablet kfa_code:93000567 kfa_display:Phenobarbital 30 mg Tablet (KIMIA FARMA) manufacturer_id:100026555 medication_id:3384439 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93000567","display":"Phenobarbital 30 mg Tablet (KIMIA FARMA)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS066","display":"Tablet","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"1a14cfa3-bfd6-49e3-9a87-3c496e07b18b","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384439"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:26.471745+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDcyNjQ3MTc0NTAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:26.511] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:28.514] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384440 | kode_kfa: | service: service-general
[2026-04-26 08:05:28.514] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384440 | service: service-general
[2026-04-26 08:05:28.515] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384441 | kode_kfa: | service: service-general
[2026-04-26 08:05:28.516] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384441 | service: service-general
[2026-04-26 08:05:28.517] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384442 | kode_kfa: 93000422 | service: service-general
[2026-04-26 08:05:28.802] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 6dd478f9-9d3e-4478-af15-a9aed00cee8a | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384442 | service: service-general
[2026-04-26 08:05:28.802] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384442 | request_payload: map[form_code:BS066 form_display:Tablet kfa_code:93000422 kfa_display:Methotrexate 2,5 mg Tablet (RHEU - TREX) manufacturer_id:100026555 medication_id:3384442 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93000422","display":"Methotrexate 2,5 mg Tablet (RHEU - TREX)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS066","display":"Tablet","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"6dd478f9-9d3e-4478-af15-a9aed00cee8a","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384442"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:28.760230+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDcyODc2MDIzMDAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:28.806] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:30.808] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384443 | kode_kfa: | service: service-general
[2026-04-26 08:05:30.808] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384443 | service: service-general
[2026-04-26 08:05:30.808] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384444 | kode_kfa: 93000777 | service: service-general
[2026-04-26 08:05:31.137] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: f75da4cd-1847-4f95-a1d2-e2b3a58f71e9 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384444 | service: service-general
[2026-04-26 08:05:31.137] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384444 | request_payload: map[form_code:BS077 form_display:Tablet Salut Selaput kfa_code:93000777 kfa_display:Azathioprine 50 mg Tablet Salut Selaput (IMURAN) manufacturer_id:100026555 medication_id:3384444 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93000777","display":"Azathioprine 50 mg Tablet Salut Selaput (IMURAN)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS077","display":"Tablet Salut Selaput","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"f75da4cd-1847-4f95-a1d2-e2b3a58f71e9","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384444"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:31.100803+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDczMTEwMDgwMzAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:31.138] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:33.139] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384445 | kode_kfa: 93009092 | service: service-general
[2026-04-26 08:05:33.434] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 50800e76-b7b1-4d62-afe7-dada10212ace | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384445 | service: service-general
[2026-04-26 08:05:33.434] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384445 | request_payload: map[form_code:BS077 form_display:Tablet Salut Selaput kfa_code:93009092 kfa_display:Levetiracetam 500 mg Tablet Salut Selaput (AMAROX PHARMA GLOBAL) manufacturer_id:100026555 medication_id:3384445 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93009092","display":"Levetiracetam 500 mg Tablet Salut Selaput (AMAROX PHARMA GLOBAL)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS077","display":"Tablet Salut Selaput","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"50800e76-b7b1-4d62-afe7-dada10212ace","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384445"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:33.398391+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDczMzM5ODM5MTAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:33.435] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:35.437] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384446 | kode_kfa: | service: service-general
[2026-04-26 08:05:35.437] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384446 | service: service-general
[2026-04-26 08:05:35.438] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384447 | kode_kfa: | service: service-general
[2026-04-26 08:05:35.438] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384447 | service: service-general
[2026-04-26 08:05:35.438] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384448 | kode_kfa: | service: service-general
[2026-04-26 08:05:35.438] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384448 | service: service-general
[2026-04-26 08:05:35.439] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384449 | kode_kfa: | service: service-general
[2026-04-26 08:05:35.439] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384449 | service: service-general
[2026-04-26 08:05:35.439] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384450 | kode_kfa: | service: service-general
[2026-04-26 08:05:35.439] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384450 | service: service-general
[2026-04-26 08:05:35.439] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384451 | kode_kfa: | service: service-general
[2026-04-26 08:05:35.439] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384451 | service: service-general
[2026-04-26 08:05:35.440] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384452 | kode_kfa: | service: service-general
[2026-04-26 08:05:35.440] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384452 | service: service-general
[2026-04-26 08:05:35.440] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384453 | kode_kfa: | service: service-general
[2026-04-26 08:05:35.440] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384453 | service: service-general
[2026-04-26 08:05:35.440] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384454 | kode_kfa: 93004342 | service: service-general
[2026-04-26 08:05:35.695] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 2c0291d0-d609-419f-bb6a-1adafe71d685 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384454 | service: service-general
[2026-04-26 08:05:35.695] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384454 | request_payload: map[form_code:BS019 form_display:Kapsul kfa_code:93004342 kfa_display:Acetylcysteine 200 mg Kapsul (DEXA MEDICA) manufacturer_id:100026555 medication_id:3384454 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93004342","display":"Acetylcysteine 200 mg Kapsul (DEXA MEDICA)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS019","display":"Kapsul","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"2c0291d0-d609-419f-bb6a-1adafe71d685","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384454"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:35.657741+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDczNTY1Nzc0MTAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:35.696] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:37.698] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384455 | kode_kfa: | service: service-general
[2026-04-26 08:05:37.698] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384455 | service: service-general
[2026-04-26 08:05:37.698] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384456 | kode_kfa: 93001003 | service: service-general
[2026-04-26 08:05:37.946] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 88e3ea14-2027-482a-b928-8ecbb773bfff | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384456 | service: service-general
[2026-04-26 08:05:37.946] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384456 | request_payload: map[form_code:BS033 form_display:Larutan Inhalasi kfa_code:93001003 kfa_display:Tiotropium 2,5 mcg Cairan Inhalasi (SPIRIVA RESPIMAT) manufacturer_id:100026555 medication_id:3384456 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93001003","display":"Tiotropium 2,5 mcg Cairan Inhalasi (SPIRIVA RESPIMAT)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS033","display":"Larutan Inhalasi","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"88e3ea14-2027-482a-b928-8ecbb773bfff","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384456"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:37.909682+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDczNzkwOTY4MjAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:37.947] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:39.949] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384457 | kode_kfa: | service: service-general
[2026-04-26 08:05:39.949] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384457 | service: service-general
[2026-04-26 08:05:39.949] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384458 | kode_kfa: | service: service-general
[2026-04-26 08:05:39.949] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384458 | service: service-general
[2026-04-26 08:05:39.950] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384459 | kode_kfa: 93009092 | service: service-general
[2026-04-26 08:05:40.261] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 41ab8bf3-bc2e-4d52-8933-b269669370fb | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384459 | service: service-general
[2026-04-26 08:05:40.261] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384459 | request_payload: map[form_code:BS077 form_display:Tablet Salut Selaput kfa_code:93009092 kfa_display:Levetiracetam 500 mg Tablet Salut Selaput (AMAROX PHARMA GLOBAL) manufacturer_id:100026555 medication_id:3384459 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93009092","display":"Levetiracetam 500 mg Tablet Salut Selaput (AMAROX PHARMA GLOBAL)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS077","display":"Tablet Salut Selaput","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"41ab8bf3-bc2e-4d52-8933-b269669370fb","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384459"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:40.224318+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDc0MDIyNDMxODAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:40.262] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:42.264] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384460 | kode_kfa: 93001450 | service: service-general
[2026-04-26 08:05:42.590] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: f82235cf-69ad-45a8-9318-5053cce14d00 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384460 | service: service-general
[2026-04-26 08:05:42.590] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384460 | request_payload: map[form_code:BS066 form_display:Tablet kfa_code:93001450 kfa_display:Topiramate 50 mg Tablet (TOPAMAX) manufacturer_id:100026555 medication_id:3384460 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93001450","display":"Topiramate 50 mg Tablet (TOPAMAX)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS066","display":"Tablet","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"f82235cf-69ad-45a8-9318-5053cce14d00","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384460"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:42.555378+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDc0MjU1NTM3ODAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:42.591] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:44.594] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384461 | kode_kfa: 93000567 | service: service-general
[2026-04-26 08:05:44.875] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 632da84c-c45c-46b1-854c-4a34cd60ddd2 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384461 | service: service-general
[2026-04-26 08:05:44.875] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384461 | request_payload: map[form_code:BS066 form_display:Tablet kfa_code:93000567 kfa_display:Phenobarbital 30 mg Tablet (KIMIA FARMA) manufacturer_id:100026555 medication_id:3384461 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93000567","display":"Phenobarbital 30 mg Tablet (KIMIA FARMA)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS066","display":"Tablet","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"632da84c-c45c-46b1-854c-4a34cd60ddd2","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384461"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:44.838960+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDc0NDgzODk2MDAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:44.876] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:46.877] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384462 | kode_kfa: | service: service-general
[2026-04-26 08:05:46.878] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384462 | service: service-general
[2026-04-26 08:05:46.878] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384463 | kode_kfa: | service: service-general
[2026-04-26 08:05:46.878] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384463 | service: service-general
[2026-04-26 08:05:46.878] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384464 | kode_kfa: | service: service-general
[2026-04-26 08:05:46.878] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384464 | service: service-general
[2026-04-26 08:05:46.879] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384465 | kode_kfa: | service: service-general
[2026-04-26 08:05:46.879] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384465 | service: service-general
[2026-04-26 08:05:46.879] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384466 | kode_kfa: | service: service-general
[2026-04-26 08:05:46.879] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384466 | service: service-general
[2026-04-26 08:05:46.880] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384467 | kode_kfa: 93008757 | service: service-general
[2026-04-26 08:05:47.194] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 96beb57a-67b2-45a5-abc2-f5550edb0426 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384467 | service: service-general
[2026-04-26 08:05:47.194] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384467 | request_payload: map[form_code:BS077 form_display:Tablet Salut Selaput kfa_code:93008757 kfa_display:Clopidogrel Bisulfate 75 mg Tablet Salut Selaput (HEXPHARM JAYA LABORATORIES) manufacturer_id:100026555 medication_id:3384467 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93008757","display":"Clopidogrel Bisulfate 75 mg Tablet Salut Selaput (HEXPHARM JAYA LABORATORIES)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS077","display":"Tablet Salut Selaput","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"96beb57a-67b2-45a5-abc2-f5550edb0426","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384467"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:47.160685+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDc0NzE2MDY4NTAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:47.195] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:49.196] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384468 | kode_kfa: 93008848 | service: service-general
[2026-04-26 08:05:49.480] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: d43c2f05-33e9-442e-9b48-7d0f5f17454a | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384468 | service: service-general
[2026-04-26 08:05:49.480] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384468 | request_payload: map[form_code:BS077 form_display:Tablet Salut Selaput kfa_code:93008848 kfa_display:Atorvastatin Calcium Trihydrate 20 mg Tablet Salut Selaput (HEXPHARM JAYA LABORATORIES) manufacturer_id:100026555 medication_id:3384468 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93008848","display":"Atorvastatin Calcium Trihydrate 20 mg Tablet Salut Selaput (HEXPHARM JAYA LABORATORIES)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS077","display":"Tablet Salut Selaput","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"d43c2f05-33e9-442e-9b48-7d0f5f17454a","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384468"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:49.440633+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDc0OTQ0MDYzMzAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:49.480] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:51.482] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384469 | kode_kfa: 93002937 | service: service-general
[2026-04-26 08:05:51.779] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 5487d5c6-4213-4674-90eb-d0410dfba7d2 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384469 | service: service-general
[2026-04-26 08:05:51.779] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384469 | request_payload: map[form_code:BS077 form_display:Tablet Salut Selaput kfa_code:93002937 kfa_display:Valsartan 80 mg Tablet Salut Selaput (DEXA MEDICA) manufacturer_id:100026555 medication_id:3384469 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93002937","display":"Valsartan 80 mg Tablet Salut Selaput (DEXA MEDICA)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS077","display":"Tablet Salut Selaput","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"5487d5c6-4213-4674-90eb-d0410dfba7d2","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384469"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:51.741958+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDc1MTc0MTk1ODAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:51.780] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:53.781] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384470 | kode_kfa: 93008945 | service: service-general
[2026-04-26 08:05:54.109] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 50e2f103-d491-4644-8316-715711a3aa99 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384470 | service: service-general
[2026-04-26 08:05:54.109] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384470 | request_payload: map[form_code:BS077 form_display:Tablet Salut Selaput kfa_code:93008945 kfa_display:Bisoprolol Fumarate 5 mg Tablet Salut Selaput (HEXPHARM JAYA LABORATORIES) manufacturer_id:100026555 medication_id:3384470 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93008945","display":"Bisoprolol Fumarate 5 mg Tablet Salut Selaput (HEXPHARM JAYA LABORATORIES)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS077","display":"Tablet Salut Selaput","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"50e2f103-d491-4644-8316-715711a3aa99","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384470"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:54.072806+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDc1NDA3MjgwNjAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:54.109] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:56.111] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384471 | kode_kfa: 93001199 | service: service-general
[2026-04-26 08:05:56.449] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: ca217f91-315a-454d-aa49-85454e30e66e | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384471 | service: service-general
[2026-04-26 08:05:56.449] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384471 | request_payload: map[form_code:BS066 form_display:Tablet kfa_code:93001199 kfa_display:Metformin Hydrochloride 500 mg Tablet (HEXPHARM JAYA LABORATORIES) manufacturer_id:100026555 medication_id:3384471 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93001199","display":"Metformin Hydrochloride 500 mg Tablet (HEXPHARM JAYA LABORATORIES)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS066","display":"Tablet","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"ca217f91-315a-454d-aa49-85454e30e66e","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384471"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:56.416099+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDc1NjQxNjA5OTAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:56.450] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:05:58.451] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384472 | kode_kfa: 93004671 | service: service-general
[2026-04-26 08:05:58.718] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: df86b609-92a2-4ecb-bb49-8780f5f3061c | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384472 | service: service-general
[2026-04-26 08:05:58.719] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384472 | request_payload: map[form_code:BS066 form_display:Tablet kfa_code:93004671 kfa_display:Glimepiride 2 mg Tablet (HEXPHARM JAYA LABORATORIES) manufacturer_id:100026555 medication_id:3384472 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93004671","display":"Glimepiride 2 mg Tablet (HEXPHARM JAYA LABORATORIES)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS066","display":"Tablet","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"df86b609-92a2-4ecb-bb49-8780f5f3061c","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384472"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:05:58.682276+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDc1ODY4MjI3NjAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:05:58.719] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:06:00.721] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384473 | kode_kfa: 93000564 | service: service-general
[2026-04-26 08:06:01.000] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 4141ed35-9cb1-41c7-ace3-abd137c2fcd6 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384473 | service: service-general
[2026-04-26 08:06:01.000] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384473 | request_payload: map[form_code:BS021 form_display:Kapsul Pelepasan Lambat kfa_code:93000564 kfa_display:Glyceryl Trinitrate 2,5 mg Kapsul Pelepasan Lambat (NITROKAF RETARD) manufacturer_id:100026555 medication_id:3384473 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93000564","display":"Glyceryl Trinitrate 2,5 mg Kapsul Pelepasan Lambat (NITROKAF RETARD)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS021","display":"Kapsul Pelepasan Lambat","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"4141ed35-9cb1-41c7-ace3-abd137c2fcd6","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384473"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:06:00.961912+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDc2MDk2MTkxMjAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:06:01.000] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:06:03.001] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384474 | kode_kfa: | service: service-general
[2026-04-26 08:06:03.002] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384474 | service: service-general
[2026-04-26 08:06:03.002] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384475 | kode_kfa: 93000797 | service: service-general
[2026-04-26 08:06:03.294] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 18ae8627-c025-4f4a-8522-2dcfa406e336 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384475 | service: service-general
[2026-04-26 08:06:03.295] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384475 | request_payload: map[form_code:BS077 form_display:Tablet Salut Selaput kfa_code:93000797 kfa_display:Hydroxychloroquine Sulfate 200 mg Tablet Salut Selaput (IMEDCO DJAJA) manufacturer_id:100026555 medication_id:3384475 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93000797","display":"Hydroxychloroquine Sulfate 200 mg Tablet Salut Selaput (IMEDCO DJAJA)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS077","display":"Tablet Salut Selaput","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"18ae8627-c025-4f4a-8522-2dcfa406e336","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384475"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:06:03.258887+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDc2MzI1ODg4NzAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:06:03.295] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:06:05.296] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384476 | kode_kfa: | service: service-general
[2026-04-26 08:06:05.297] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384476 | service: service-general
[2026-04-26 08:06:05.297] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384477 | kode_kfa: | service: service-general
[2026-04-26 08:06:05.297] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384477 | service: service-general
[2026-04-26 08:06:05.297] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384478 | kode_kfa: | service: service-general
[2026-04-26 08:06:05.297] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384478 | service: service-general
[2026-04-26 08:06:05.298] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384479 | kode_kfa: | service: service-general
[2026-04-26 08:06:05.298] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384479 | service: service-general
[2026-04-26 08:06:05.298] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384480 | kode_kfa: | service: service-general
[2026-04-26 08:06:05.298] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384480 | service: service-general
[2026-04-26 08:06:05.298] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384481 | kode_kfa: | service: service-general
[2026-04-26 08:06:05.298] [WARNI] [MEDICATION WORKER] ⏭️ Skip Dokumen: KFA Code kosong | 📍 service.go:90 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384481 | service: service-general
[2026-04-26 08:06:05.299] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384482 | kode_kfa: 93000550 | service: service-general
[2026-04-26 08:06:05.607] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 30a18fd7-4e57-41cf-ae5a-83bbda050b9d | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384482 | service: service-general
[2026-04-26 08:06:05.607] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384482 | request_payload: map[form_code:BS066 form_display:Tablet kfa_code:93000550 kfa_display:Clobazam 10 mg Tablet (DEXA MEDICA) manufacturer_id:100026555 medication_id:3384482 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93000550","display":"Clobazam 10 mg Tablet (DEXA MEDICA)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS066","display":"Tablet","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"30a18fd7-4e57-41cf-ae5a-83bbda050b9d","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384482"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:06:05.567710+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDc2NTU2NzcxMDAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:06:05.607] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:06:07.609] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384483 | kode_kfa: 93001450 | service: service-general
[2026-04-26 08:06:07.866] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 0cfbf15e-0916-420c-8a14-db322a9f8355 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384483 | service: service-general
[2026-04-26 08:06:07.866] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384483 | request_payload: map[form_code:BS066 form_display:Tablet kfa_code:93001450 kfa_display:Topiramate 50 mg Tablet (TOPAMAX) manufacturer_id:100026555 medication_id:3384483 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93001450","display":"Topiramate 50 mg Tablet (TOPAMAX)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS066","display":"Tablet","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"0cfbf15e-0916-420c-8a14-db322a9f8355","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384483"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:06:07.824786+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDc2NzgyNDc4NjAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:06:07.866] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general
[2026-04-26 08:06:09.868] [INFO ] [MEDICATION WORKER] 🔄 Memproses Dokumen | 📍 service.go:84 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384484 | kode_kfa: 93016849 | service: service-general
[2026-04-26 08:06:10.180] [INFO ] [MEDICATION WORKER] ✅ Sukses mengirim data Medication | 📍 service.go:192 | environment: debug | fhir_id: 1bf3dd22-9ba7-4786-b5f1-67d40f3b2fb2 | ⚙️ service/internal/worker/satusehat/medication.(*worker).sendToInternalAPI | idxpesanobat: 3384484 | service: service-general
[2026-04-26 08:06:10.180] [INFO ] [MEDICATION WORKER] Detail Transaksi | 📍 service.go:104 | environment: debug | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | idxpesanobat: 3384484 | request_payload: map[form_code:BS077 form_display:Tablet Salut Selaput kfa_code:93016849 kfa_display:Clonazepam 2 mg Tablet Salut Selaput (Umum) manufacturer_id:100026555 medication_id:3384484 status_code:active] | response_payload: {"status":"success","message":"Successfully created Medication","data":{"code":{"coding":[{"code":"93016849","display":"Clonazepam 2 mg Tablet Salut Selaput (Umum)","system":"http://sys-ids.kemkes.go.id/kfa"}]},"extension":[{"url":"https://fhir.kemkes.go.id/r4/StructureDefinition/MedicationType","valueCodeableConcept":{"coding":[{"code":"NC","display":"Non-compound","system":"http://terminology.kemkes.go.id/CodeSystem/medication-type"}]}}],"form":{"coding":[{"code":"BS077","display":"Tablet Salut Selaput","system":"http://terminology.kemkes.go.id/CodeSystem/medication-form"}]},"id":"1bf3dd22-9ba7-4786-b5f1-67d40f3b2fb2","identifier":[{"system":"http://sys-ids.kemkes.go.id/medication/100026555","use":"official","value":"3384484"}],"manufacturer":{"reference":"Organization/100026555"},"meta":{"lastUpdated":"2026-04-26T08:06:10.135297+00:00","profile":["https://fhir.kemkes.go.id/r4/StructureDefinition/Medication"],"versionId":"MTc3NzE5MDc3MDEzNTI5NzAwMA"},"resourceType":"Medication","status":"active"}} | service: service-general | status: SUCCESS
[2026-04-26 08:06:10.180] [ERROR] [MEDICATION WORKER] Gagal menyimpan histori log ke DB | 📍 service.go:113 | environment: debug | ❌ ERROR: ERROR: relation "public.log_satusehat_medication" does not exist (SQLSTATE 42P01) | ⚙️ service/internal/worker/satusehat/medication.(*worker).Run | service: service-general