Yusuke-Watanabe-8992533 / task_otameshi

タスク管理用
0 stars 0 forks source link

バッチ審査の流れの整理 #11

Closed Yusuke-Watanabe-8992533 closed 7 months ago

Yusuke-Watanabe-8992533 commented 7 months ago

概要

バッチ審査の性能の観点からどこに時間がかかっていそうで改善できる箇所はあるかを整理、検討を行っていく

目的

バッチ審査の性能改善。13万件実施した時に1日では完了しない事がわかっているので、1日で完了できるようにするにはどうすれば良いのかを考えていく。

やる事

Yusuke-Watanabe-8992533 commented 7 months ago

役立ちそうな資料

Box\#03.組織内_04_金融セグメント\ev0301\20_system\12.ユビキ系\VICA\100_設計書\130_JOB関連
 /
【VICA・CARNA】バッチJOBフロー.xls
Box\#03.組織内_04_金融セグメント\ev0301\20_system\12.ユビキ系\審査エンジン\20_設計書\2.外部設計書\CARNA\Ⅰ_システム機能仕様\Ⅰ_3_処理機能記述\Ⅰ_3_(1)_概要図
 /
Ⅰ_3_(1)_概要図.xls
Box\#03.組織内_04_金融セグメント\ev0301\20_system\12.ユビキ系\審査エンジン\20_設計書\11.JOB関連\2.ジョブ定義\CARNA
 /
ジョブネット定義シート_途上_picap001_CARNA.xls
Box\#03.組織内_04_金融セグメント\ev0301\20_system\12.ユビキ系\審査エンジン\20_設計書\12.HULFT関連\CARNA
 /
HULFT設定資料_VICA_CARNA(picap001).xls
Box\#03.組織内_04_金融セグメント\ev0301\20_system\12.ユビキ系\審査エンジン\20_設計書\3.内部設計書\CARNA
/CARNAイメージ図(バッチサーバ).xls
Box\#03.組織内_04_金融セグメント\ev0301\20_system\12.ユビキ系\審査エンジン\95_引継ぎ\01_概要説明資料
Yusuke-Watanabe-8992533 commented 7 months ago

sleep待ちしているところ

Image

Image

Image

SLEEPTIME の値

IE_Common.ksh:export SLEEPTIME=60

Yusuke-Watanabe-8992533 commented 7 months ago

審査判定

image

Yusuke-Watanabe-8992533 commented 7 months ago

シェル実行をデバッグ

+ echo '[2024/04/09 15:43:41]-INFORMATION-diedb101 PID=IEB_BATJUD MSGID=61003186 [バッチ]DRモデルスコア変数算出依頼受付を起動します。'
+ DebugLog '[バッチ]DRモデルスコア変数算出依頼受付起動'
+ [[ 1 != 1 ]]
+ export 'MSG=[バッチ]DRモデルスコア変数算出依頼受付起動'
+ MSG='[バッチ]DRモデルスコア変数算出依頼受付起動'
++ date '+%Y/%m/%d %H:%M:%S'
++ hostname
+ echo '[2024/04/09 15:43:41] diedb101 PID=IEB_BATJUD [バッチ]DRモデルスコア変数算出依頼受付起動'
+ /libtool/IE3/java/ksh/DR_BAT_START.ksh NJISYA
/libtool/IE3/java/ksh/COMMON_JAVA.ksh: 行 85: /home/iebat001/sqllib/db2profile: 許可がありません
++ date +%s.%N
+ START_TIME=1712645023.959909584
+ DebugLog '[バッチ]DRモデルスコア変数算出依頼受付起動監視(TIMEOUT=200s SLEEP=0.01s)'
+ [[ 1 != 1 ]]
+ export 'MSG=[バッチ]DRモデルスコア変数算出依頼受付起動監視(TIMEOUT=200s SLEEP=0.01s)'
+ MSG='[バッチ]DRモデルスコア変数算出依頼受付起動監視(TIMEOUT=200s SLEEP=0.01s)'
++ date '+%Y/%m/%d %H:%M:%S'
++ hostname
+ echo '[2024/04/09 15:43:43] diedb101 PID=IEB_BATJUD [バッチ]DRモデルスコア変数算出依頼受付起動監視(TIMEOUT=200s SLEEP=0.01s)'
+ true
+ sleep 0.01
+ /libtool/IE3/java/ksh/DR_BAT_CHECK.ksh NJISYA
/libtool/IE3/java/ksh/COMMON_JAVA.ksh: 行 85: /home/iebat001/sqllib/db2profile: 許可がありません
+ '[' 1 -eq 1 ']'
+ ComLog INF 61003187 '[バッチ]DRモデルスコア変数算出依頼受付起動が完了しました。'
+ [[ 3 != 3 ]]
+ export RESULT=INF
+ RESULT=INF
+ [[ INF = \E\R\R ]]
+ export RESULT=INFORMATION
+ RESULT=INFORMATION
+ export RESULTLEVEL=1
+ RESULTLEVEL=1
+ export MSG_ID=61003187
+ MSG_ID=61003187
+ export 'MSG=[バッチ]DRモデルスコア変数算出依頼受付起動が完了しました。'
+ MSG='[バッチ]DRモデルスコア変数算出依頼受付起動が完了しました。'
+ [[ '' = '' ]]
+ ((  1 == 1  ))
+ echo 'Info Log Not Write'
++ date '+%Y/%m/%d %H:%M:%S'
++ hostname
+ echo '[2024/04/09 15:43:44]-INFORMATION-diedb101 PID=IEB_BATJUD MSGID=61003187 [バッチ]DRモデルスコア変数算出依頼受付起動が完了しました。'
+ DebugLog '[バッチ]DRモデルスコア変数算出依頼受付起動完了'
+ [[ 1 != 1 ]]
+ export 'MSG=[バッチ]DRモデルスコア変数算出依頼受付起動完了'
+ MSG='[バッチ]DRモデルスコア変数算出依頼受付起動完了'
++ date '+%Y/%m/%d %H:%M:%S'
++ hostname
+ echo '[2024/04/09 15:43:44] diedb101 PID=IEB_BATJUD [バッチ]DRモデルスコア変数算出依頼受付起動完了'
+ break
+ touch /libtool/IE3/proc/IEB_BATJUD.flg
+ cd /libtool/IE3/bin
+ ./batjud NJISYA
+ export RET=0
+ RET=0
+ rm -f /libtool/IE3/proc/IEB_BATJUD.flg
+ ComLog INF 61003189 '[バッチ]DRモデルスコア変数算出依頼受付を停止します。'
+ [[ 3 != 3 ]]
+ export RESULT=INF
+ RESULT=INF
+ [[ INF = \E\R\R ]]
+ export RESULT=INFORMATION
+ RESULT=INFORMATION
+ export RESULTLEVEL=1
+ RESULTLEVEL=1
+ export MSG_ID=61003189
+ MSG_ID=61003189
+ export 'MSG=[バッチ]DRモデルスコア変数算出依頼受付を停止します。'
+ MSG='[バッチ]DRモデルスコア変数算出依頼受付を停止します。'
+ [[ '' = '' ]]
+ ((  1 == 1  ))
+ echo 'Info Log Not Write'
++ date '+%Y/%m/%d %H:%M:%S'
++ hostname
+ echo '[2024/04/09 15:43:44]-INFORMATION-diedb101 PID=IEB_BATJUD MSGID=61003189 [バッチ]DRモデルスコア変数算出依頼受付を停止します。'
+ DebugLog '[バッチ]DRモデルスコア変数算出依頼受付停止'
+ [[ 1 != 1 ]]
+ export 'MSG=[バッチ]DRモデルスコア変数算出依頼受付停止'
+ MSG='[バッチ]DRモデルスコア変数算出依頼受付停止'
++ date '+%Y/%m/%d %H:%M:%S'
++ hostname
+ echo '[2024/04/09 15:43:44] diedb101 PID=IEB_BATJUD [バッチ]DRモデルスコア変数算出依頼受付停止'
+ /libtool/IE3/java/ksh/DR_BAT_END.ksh NJISYA
/libtool/IE3/java/ksh/COMMON_JAVA.ksh: 行 85: /home/iebat001/sqllib/db2profile: 許可がありません
+ [[ 0 = 0 ]]
+ ComLog INF 61003184 '[バッチ]審査判定シェルが正常終了しました。'
+ [[ 3 != 3 ]]
+ export RESULT=INF
+ RESULT=INF
+ [[ INF = \E\R\R ]]
+ export RESULT=INFORMATION
+ RESULT=INFORMATION
+ export RESULTLEVEL=1
+ RESULTLEVEL=1
+ export MSG_ID=61003184
+ MSG_ID=61003184
+ export 'MSG=[バッチ]審査判定シェルが正常終了しました。'
+ MSG='[バッチ]審査判定シェルが正常終了しました。'
+ [[ '' = '' ]]
+ ((  1 == 1  ))
+ echo 'Info Log Not Write'
++ date '+%Y/%m/%d %H:%M:%S'
++ hostname
+ echo '[2024/04/09 15:43:44]-INFORMATION-diedb101 PID=IEB_BATJUD MSGID=61003184 [バッチ]審査判定シェルが正常終了しました。'
+ DebugLog '[バッチ]審査判定シェルが正常終了しました。'
+ [[ 1 != 1 ]]
+ export 'MSG=[バッチ]審査判定シェルが正常終了しました。'
+ MSG='[バッチ]審査判定シェルが正常終了しました。'
++ date '+%Y/%m/%d %H:%M:%S'
++ hostname
+ echo '[2024/04/09 15:43:44] diedb101 PID=IEB_BATJUD [バッチ]審査判定シェルが正常終了しました。'
+ MY_RET=IEB_BATJUD.ksh=OK
+ echo IEB_BATJUD.ksh=OK
IEB_BATJUD.ksh=OK
+ exit 0
[iebat003@diedb101 ksh]$ 
Yusuke-Watanabe-8992533 commented 7 months ago

ステップ実行

[iebat003@diedb101 ksh]$ bash IEB_BATJUD.ksh "NJISYA"
IEB_BATJUD.ksh(58) ComLog INF 61003181 "[バッチ]審査判定シェルを起動します。"
IEB_BATJUD.ksh(59) DebugLog "[バッチ]審査判定シェルを起動します。"
IEB_BATJUD.ksh(62) (( $# != 1 ))
IEB_BATJUD.ksh(72) MY_NETKEY=$1
IEB_BATJUD.ksh(73) MY_RET=
IEB_BATJUD.ksh(76) TIMEOUT=`READ_CFG DRSTART_TIMEOUT`
IEB_BATJUD.ksh(77) SLEEP_MS=`READ_CFG DRSTART_SLEEP`
IEB_BATJUD.ksh(78) SLEEP_S=`echo "${SLEEP_MS}" | awk '{print $1 / 1000}'`
IEB_BATJUD.ksh(81) ComLog INF 61003186 "[バッチ]DRモデルスコア変数算出依頼受付を起動します。"
IEB_BATJUD.ksh(82) DebugLog "[バッチ]DRモデルスコア変数算出依頼受付起動"
IEB_BATJUD.ksh(83) ${JAVA_SHELL}/DR_BAT_START.ksh ${MY_NETKEY}
/libtool/IE3/java/ksh/COMMON_JAVA.ksh: 行 85: /home/iebat001/sqllib/db2profile: 許可がありません
IEB_BATJUD.ksh(86) START_TIME=`date +%s.%N`
IEB_BATJUD.ksh(89) DebugLog "[バッチ]DRモデルスコア変数算出依頼受付起動監視(TIMEOUT=${TIMEOUT}s SLEEP=${SLEEP_S}s)"
IEB_BATJUD.ksh(90) true
IEB_BATJUD.ksh(91) sleep "${SLEEP_S}"
IEB_BATJUD.ksh(92) ${JAVA_SHELL}/DR_BAT_CHECK.ksh ${MY_NETKEY}
/libtool/IE3/java/ksh/COMMON_JAVA.ksh: 行 85: /home/iebat001/sqllib/db2profile: 許可がありません
IEB_BATJUD.ksh(93) [ $? -eq 1 ]
IEB_BATJUD.ksh(94) ComLog INF 61003187 "[バッチ]DRモデルスコア変数算出依頼受付起動が完了しました。"
IEB_BATJUD.ksh(95) DebugLog "[バッチ]DRモデルスコア変数算出依頼受付起動完了"
IEB_BATJUD.ksh(96) break
IEB_BATJUD.ksh(110) touch $PRO_FILE/IEB_BATJUD.flg
IEB_BATJUD.ksh(113) cd $FC_BIN_DIR
IEB_BATJUD.ksh(116) ./batjud $MY_NETKEY
IEB_BATJUD.ksh(118) export RET=$?
IEB_BATJUD.ksh(121) rm -f $PRO_FILE/IEB_BATJUD.flg
IEB_BATJUD.ksh(124) ComLog INF 61003189 "[バッチ]DRモデルスコア変数算出依頼受付を停止します。"
IEB_BATJUD.ksh(125) DebugLog "[バッチ]DRモデルスコア変数算出依頼受付停止"
IEB_BATJUD.ksh(126) ${JAVA_SHELL}/DR_BAT_END.ksh ${MY_NETKEY}
/libtool/IE3/java/ksh/COMMON_JAVA.ksh: 行 85: /home/iebat001/sqllib/db2profile: 許可がありません
IEB_BATJUD.ksh(128) [[ ${RET} = 0 ]]
IEB_BATJUD.ksh(129) ComLog INF 61003184 "[バッチ]審査判定シェルが正常終了しました。"
IEB_BATJUD.ksh(130) DebugLog "[バッチ]審査判定シェルが正常終了しました。"
IEB_BATJUD.ksh(131) MY_RET="$0=OK"
IEB_BATJUD.ksh(139) echo ${MY_RET}
IEB_BATJUD.ksh=OK
IEB_BATJUD.ksh(141) exit ${RET}
[iebat003@diedb101 ksh]$
Yusuke-Watanabe-8992533 commented 7 months ago

審査に必要な情報

image

Yusuke-Watanabe-8992533 commented 7 months ago

バッチ審査とは

image image image image

Yusuke-Watanabe-8992533 commented 7 months ago

image

Yusuke-Watanabe-8992533 commented 7 months ago

batjudが結局は10分かかっている。他のは1分も行かない。

image

Yusuke-Watanabe-8992533 commented 7 months ago

db2profile

[iebat003@diedb101 IE3]$ cat /opt/IBM/db2/V11.1/cfg/db2profile
#############################################################################
#
# Licensed Materials - Property of IBM
#
# "Restricted Materials of IBM" 
#
# (C) COPYRIGHT IBM Corp. 1993, 2018 All Rights Reserved.
#
# US Government Users Restricted Rights - Use, duplication or
# disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
#
#############################################################################

#
# NAME:     db2profile
#
# FUNCTION: This script sets up a default database environment for
#           Bourne shell or Korn shell users.
#
# USAGE:    . db2profile
#           This script can either be invoked directly as above or
#           it can be added to the user's .profile file so that the
#           database environment is established during login.
#
#           #### DO NOT EDIT THIS FILE ####
#
#############################################################################

DB2DIR=db2dir

# Remember the current DB2INSTANCE environment variable
CUR_INSTNAME=${DB2INSTANCE:=""}

#-----------------------------------------------------------------------
# DB2INSTANCE [Default null, values: Any valid instance name]
# Specifies the instance that is active by default.
#-----------------------------------------------------------------------
DB2INSTANCE=instancename
export DB2INSTANCE
INSTHOME=instancehomedir

#----------------------------------------------------------------------
#For non-root NFS Mount feature 
#DB2LOCAL [local machines sqllib]
#----------------------------------------------------------------------

if [ -f ${INSTHOME?}/sqllib/.mount ]; then
   DB2LOCAL=${INSTHOME?}/sqllib
   export DB2LOCAL

   DB2MOUNT=`cat ${INSTHOME?}/sqllib/.mount`
   export DB2MOUNT 
fi

#------------------------------------------------------------------
# For scripting language drivers
#------------------------------------------------------------------
DB2_NET_CLIENT_PATH=${DB2_NET_CLIENT_PATH:=""}
if [ "X${DB2_NET_CLIENT_PATH}" != "X" ] ; then
   INST_DIR=`echo ${DB2_NET_CLIENT_PATH} | sed 's/\/$//'`

   # Find the location of current 'sqllib' directory
   PREV_DB2_PATH=`which db2 2>/dev/null`
   if [ "X${PREV_DB2_PATH}" != "X" ]; then
      PREV_BIN_PATH=`dirname ${PREV_DB2_PATH} 2>/dev/null`
      if [ "X${PREV_BIN_PATH}" != "X" ]; then 
        CUR_INSTHOME=`dirname ${PREV_BIN_PATH}`
      fi
   fi
else
   INST_DIR=${INSTHOME?}/sqllib
fi

CUR_INSTHOME=${CUR_INSTHOME:=""}
IBM_DB_DIR=${INST_DIR?}
IBM_DB_LIB=${INST_DIR?}/lib
IBM_DB_INCLUDE=${INST_DIR?}/include
DB2_HOME=${INST_DIR?}
DB2LIB=${INST_DIR?}/lib
IBM_DB_HOME=${INST_DIR?}

export IBM_DB_DIR
export IBM_DB_LIB
export IBM_DB_HOME
export IBM_DB_INCLUDE
export DB2_HOME
export DB2LIB

# Function to add or remove certain path to or from the specified
# environment variable.

AddRemoveString()
{
    if [ $# -ne 3 ]; then
       return 0
    fi
    var=$1        #The enviornment variable to be processed
    addrm_str=$2  #The new path to be used
    action=$3     #Action: a -> add, r -> remove
    if [ "X${action?}" != "Xa" -a "X${action?}" != "Xr" ]; then
        return 0  # return without doing anything
    fi
    awkval='$1 != "'${addrm_str?}'"{print $0}'
    newval=`eval echo \\${$var:-""} | awk '{for (i=1; i<= NF; ++i) \
          if( $i != VAR && length($i) > 0 ) print $i":"}' FS=":" VAR=${addrm_str?} | \
          tr -d '\n'`
    if [ "X${action?}" = "Xa" ]; then
        newval=${newval?}"${addrm_str?}"
    else
        newval=`echo ${newval?} | sed 's/:$//'`
    fi
    eval $var=\"${newval?}\"
    unset var addrm_str awkval newval
}

#----------------------------------------------------------------------------
# If DB2 instance environment is being switched from one instances to another,
# the entries for old DB2 instance in the original instance enviornment
# are cleaned up.
#----------------------------------------------------------------------------
if [ -n "${CUR_INSTNAME?}" ]; then 
       CUR_INSTHOME=`${INST_DIR}/bin/db2usrinf -d ${CUR_INSTNAME?}`
       CUR_INSTHOME="${CUR_INSTHOME}/sqllib"

     path_list="bin adm misc db2tss/bin" 
     class_list="java/db2java.zip java/db2jcc.jar java/sqlj.zip function \
       java/db2jcc_license_cisuz.jar java/db2jcc_license_cu.jar \
       java/runtime.zip tools/clpplus.jar tools/antlr-3.2.jar tools/jline-0.9.93.jar"

     for tmp_entry in ${path_list?}; do
        AddRemoveString PATH ${CUR_INSTHOME?}/${tmp_entry?} r
     done
     for tmp_entry in ${class_list?}; do
        AddRemoveString CLASSPATH ${CUR_INSTHOME?}/${tmp_entry?} r
     done

     for path_name in LD_LIBRARY_PATH LIBPATH SHLIB_PATH LD_LIBRARY_PATH_32 \
        LD_LIBRARY_PATH_64; do
        for tmp_path in lib lib32 lib64; do
           AddRemoveString ${path_name?} ${CUR_INSTHOME?}/${tmp_path?} r
        done
     done

     for path_name in PATH CLASSPATH LD_LIBRARY_PATH LIBPATH SHLIB_PATH \
        LD_LIBRARY_PATH_32 LD_LIBRARY_PATH_64; do
        eval path_value=\$$path_name
        if [ "X${path_value}" = "X" ]; then
           unset ${path_name?}
        else
           export ${path_name?}
        fi
     done
     unset CUR_INSTNAME path_list class_list tmp_entry path_name path_value
fi

#-----------------------------------------------------------------------------
# In DB2 instance environment, the DAS environment needs to be cleaned up.
#-----------------------------------------------------------------------------
DASWORKDIR=${DASWORKDIR:=""}
if [ "X${DASWORKDIR}" != "X" ]; then
  AddRemoveString PATH ${DASWORKDIR?}/bin r
  AddRemoveString PATH ${DASWORKDIR?}/adm r
  for path_name in LIBPATH SHLIB_PATH LD_LIBRARY_PATH; do
      for tmp_path in lib function; do
          AddRemoveString ${path_name?} ${DASWORKDIR?}/${tmp_path?} r
      done
  done 
  for path_name in PATH LIBPATH SHLIB_PATH LD_LIBRARY_PATH; do
        if [ "X${path_name}" = "X" ]; then
           unset ${path_name?}
        else
           export ${path_name?}
        fi
  done
fi
#-----------------------------------------------------------------------------

for tmp_path in bin adm misc; do
   AddRemoveString PATH ${INST_DIR}/${tmp_path?} a
done
if [ -d ${INST_DIR}/db2tss/bin ]; then
   AddRemoveString PATH ${INST_DIR}/db2tss/bin a
fi
export PATH
unset tmp_path

#-----------------------------------------------------------------------
# UDB Extender initialization
#-----------------------------------------------------------------------
if [ -f ${INSTHOME}/dmb/dmbprofile ]; then
    . ${INSTHOME}/dmb/dmbprofile
fi

#-----------------------------------------------------------------------
# The following variables are used for JDBC support
#-----------------------------------------------------------------------
CLASSPATH=${CLASSPATH:-""}

if [ -f ${INST_DIR}/java/db2java.zip ]; then
    AddRemoveString CLASSPATH ${INST_DIR}/java/db2java.zip a
fi
if [ -f ${INST_DIR}/java/db2jcc.jar ]; then
    AddRemoveString CLASSPATH ${INST_DIR}/java/db2jcc.jar a
fi
if [ -f ${INST_DIR}/java/sqlj.zip ]; then
    AddRemoveString CLASSPATH ${INST_DIR}/java/sqlj.zip a
fi
if [ -d ${INST_DIR}/function ]; then
    AddRemoveString CLASSPATH ${INST_DIR}/function a
fi

if [ -f ${INST_DIR}/java/db2jcc_license_cisuz.jar ]; then
    AddRemoveString CLASSPATH ${INST_DIR}/java/db2jcc_license_cisuz.jar a
fi

if [ -f ${INST_DIR}/java/db2jcc_license_cu.jar ]; then
    AddRemoveString CLASSPATH ${INST_DIR}/java/db2jcc_license_cu.jar a
fi

#-----------------------------------------------------------------------
# The following variables are used for CLPPlus
#-----------------------------------------------------------------------

if [ -f ${INST_DIR?}/tools/clpplus.jar ]; then
    AddRemoveString CLASSPATH ${INST_DIR?}/tools/clpplus.jar a
fi

if [ -f ${INST_DIR?}/tools/antlr-3.2.jar ]; then
    AddRemoveString CLASSPATH ${INST_DIR?}/tools/antlr-3.2.jar a
fi

if [ -f ${INST_DIR?}/tools/jline-0.9.93.jar ]; then
    AddRemoveString CLASSPATH ${INST_DIR?}/tools/jline-0.9.93.jar a
fi

if [ -f ${INST_DIR?}/java/db2jcc.jar ]; then
    AddRemoveString CLASSPATH ${INST_DIR?}/java/db2jcc.jar a
fi

if [ -f ${INST_DIR?}/java/db2jcc_license_cisuz.jar ]; then
    AddRemoveString CLASSPATH ${INST_DIR?}/java/db2jcc_license_cisuz.jar a
fi

AddRemoveString CLASSPATH . a
export CLASSPATH

LD_LIBRARY_PATH=${LD_LIBRARY_PATH:-""}
AddRemoveString LD_LIBRARY_PATH ${INST_DIR}/lib64 a
AddRemoveString LD_LIBRARY_PATH ${INST_DIR}/lib64/gskit a
AddRemoveString LD_LIBRARY_PATH ${INST_DIR}/lib32 a
export LD_LIBRARY_PATH

#--------------------------------------------------------------------------
# Any user changes to the environment goes into userprofile.  Modifications
# to db2profile may be overwritten in fixpaks.
# userprofile may exist under $INSTHOME/sqllib or $INST_DIR; the former
# takes precedence if it exists.
#--------------------------------------------------------------------------
if [ -f ${INSTHOME?}/sqllib/userprofile ]; then
   . ${INSTHOME?}/sqllib/userprofile
elif [ -f ${INST_DIR}/userprofile ]; then
    . ${INST_DIR}/userprofile
fi

[iebat003@diedb101 IE3]$ 
Yusuke-Watanabe-8992533 commented 7 months ago

onljudにはあってbatjudにはないもの

image

Yusuke-Watanabe-8992533 commented 7 months ago

db2profile 変数抜出

DB2DIR=db2dir

CUR_INSTNAME=${DB2INSTANCE:=""}

DB2INSTANCE=instancename
export DB2INSTANCE
INSTHOME=instancehomedir

if [ -f ${INSTHOME?}/sqllib/.mount ]; then
   DB2LOCAL=${INSTHOME?}/sqllib
   export DB2LOCAL

   DB2MOUNT=`cat ${INSTHOME?}/sqllib/.mount`
   export DB2MOUNT 
fi

DB2_NET_CLIENT_PATH=${DB2_NET_CLIENT_PATH:=""}
INST_DIR=${INSTHOME?}/sqllib
CUR_INSTHOME=${CUR_INSTHOME:=""}
IBM_DB_DIR=${INST_DIR?}
IBM_DB_LIB=${INST_DIR?}/lib
IBM_DB_INCLUDE=${INST_DIR?}/include
DB2_HOME=${INST_DIR?}
DB2LIB=${INST_DIR?}/lib
IBM_DB_HOME=${INST_DIR?}

export IBM_DB_DIR
export IBM_DB_LIB
export IBM_DB_HOME
export IBM_DB_INCLUDE
export DB2_HOME
export DB2LIB

DASWORKDIR=${DASWORKDIR:=""}

CLASSPATH=${CLASSPATH:-""}
export CLASSPATH

LD_LIBRARY_PATH=${LD_LIBRARY_PATH:-""}
export LD_LIBRARY_PATH
Yusuke-Watanabe-8992533 commented 7 months ago

ログ出力があやしそう。ログからはこれぐらいしか。。

image

Yusuke-Watanabe-8992533 commented 7 months ago

出力されているログ

MsgTable.ENG0001001 = [非同期実行スレッド管理][{0}]処理開始
MsgTable.ENG0001002 = [非同期実行スレッド管理][{0}]正常終了
MsgTable.ENG0003001 = [DRモデルスコア変数算出][{0}]処理開始
MsgTable.ENG0003010 = [DRモデルスコア変数算出][{0}]DRモデルスコア変数算出を開始します。
MsgTable.ENG0003011 = [DRモデルスコア変数算出][{0}]DRモデルスコア変数算出が完了しました。全体ステータス={1}
MsgTable.ENG0003019 = [DRモデルスコア変数算出][{0}]DRモデルスコア変数をDB登録しました。
MsgTable.ENG0003002 = [DRモデルスコア変数算出][{0}]正常終了
Yusuke-Watanabe-8992533 commented 7 months ago

審査処理管理-審査依頼情報取得時刻=審査全体時間

Yusuke-Watanabe-8992533 commented 7 months ago

先程のJava側のログ出力の件です。 変更するpropertiesファイルはCARNA3面だと以下になります。 /libtool/IE3/java/cfg/bat/log4j.properties (バッチ審査用) /libtool/IE3/java/cfg/onl/log4j.properties (オンライン審査用) /libtool/IE3/java/cfg/sim/log4j.properties (シミュレーション用) 変更内容としては、 ◆CARNA開発3面(現状)

# ルートロガーの設定
log4j.rootLogger=DEBUG, debug_appender, info_appender, error_appender
#log4j.rootLogger=INFO, info_appender, error_appender

◆CARNA本番・検証と同等量 ※コメントアウトをずらすだけ

# ルートロガーの設定
#log4j.rootLogger=DEBUG, debug_appender, info_appender, error_appender
log4j.rootLogger=INFO, info_appender, error_appender

です。(それより下は出力先パスや、ローテーションするかどうかの設定なのでログ量には関係ありません。) 見方としては、log4j.rootLogger={ログレベル}, {適用する設定1}, {適用する設定2}, ... というようになっているので、 例えばログレベルをERRORのみにして、個別ログへの出力をやめる(appalert.logの出力だけにする)としたら

log4j.rootLogger=ERROR, error_appender

とすればよいです。 その他ご不明点等ありましたらご連絡ください。よろしくお願いいたします。

Yusuke-Watanabe-8992533 commented 7 months ago

batjud自体はonljudと同じサーバで動いている

batjud

image

onljud

image

Yusuke-Watanabe-8992533 commented 7 months ago

件数によっては時間がかかりそうなSQL

image image

実施箇所?

image image

Yusuke-Watanabe-8992533 commented 7 months ago

調査結果

実施時間差分

ログの出力を変更した事による差分は発生しなかった

image

他の違いについて検討。

DBの違いがある。INDEXが有効ではなさそうなので専用のINDEXを用意するのも有効そう。

image image

Yusuke-Watanabe-8992533 commented 7 months ago

調査対象資料

Box#03.組織内_04_金融セグメント\ev0301\20_system\12.ユビキ系\審査エンジン\98_USERS\watanabe\引き渡し\調査系\20240327\審査処理時間まとめ1.xlsx