Proceso de larga duración

Hola a todos,

tengo un procedimiento de pl/sql que tarda, cuando finaliza correctamente, unas dos horas. Los tengo programado con un job y a veces finaliza y otras se alarga y falla después de varias horas porque el servidor de oracle se apaga por las noches.

Cuando falla no sé porque falla y me gustaría saber cómo puedo hacer para tener algún indicio del problema que tengo. Trabajo con Oracle 10g.

Os pego el código por si alguien me puede echar una mano. En principio lo que hago es recorrer una tabla buscando un deteminado contenido. Lo estoy haciendo todo con sql develper. Cualquier cosa que necesitéis saber me lo decís y lo comento.

Muchas gracias de antemano.
Saludos.

create or replace
PROCEDURE ITA_SECURITY_LOG(logging IN BINARY_INTEGER := 0)
IS

CURSOR c1 IS
SELECT log0, day0, time0, source, eventid, type0, category, user0, computer, message
FROM ITA_SECURITYLOG
ORDER BY log0, day0;
crec C1%ROWTYPE;

CURSOR c2 IS
SELECT day0, time0, message
FROM ITA_SECURITYLOG
WHERE eventid = 4663;
crec2 C2%ROWTYPE;

charmessage VARCHAR2(4000);
charobject_type VARCHAR2(255);
charobject_name VARCHAR2(255);
charlogon_id VARCHAR2(255);
charhandle_id VARCHAR2(255);
characcesses VARCHAR2(255);
charsecurityid VARCHAR2(255);
charworkstation_name VARCHAR2(255);
characcount_name VARCHAR2(255);
intexiste INTEGER;
err_code NUMBER;
err_msg VARCHAR2(64);

BEGIN
OPEN c1;
LOOP
FETCH c1 INTO crec;
EXIT WHEN c1%NOTFOUND;

if crec.eventid = 4660 then –Borrado de archivos
charhandle_id := ita_campos(crec.message, ‘Handle ID’, 1, 1);

open c2;
loop
fetch c2 into crec2;
exit when c2%notfound;

–Con Handle ID relacionamos los registros
if ita_campos(crec2.message, ‘Handle ID’, 1, 1) = charhandle_id and
ita_campos(crec2.message, ‘Accesses’, 1, 1) like ‘%1537%’ then
charobject_type := ita_campos(crec2.message, ‘Object Type’, 1, 1);
charobject_name := ita_campos(crec2.message, ‘Object Name’, 1, 1);
end if;
end loop;

close c2;

INSERT INTO ITA_SECURITYLOG_1(log0, time0, source, eventid, type0, category, user0, computer, account_name,
account_domain, logOn_id, object_server, handle_id, object_type, object_name, message)
VALUES(crec.log0, crec.day0 || ‘ ‘ || crec.time0, crec.source, crec.eventid, crec.type0, crec.category, crec.user0, crec.computer,
ita_campos(crec.message, ‘Account Name’, 1, 1),
ita_campos(crec.message, ‘Account Domain’, 1, 1),
rtrim(ltrim(charlogon_id)),
ita_campos(crec.message, ‘Object Server’, 1, 1),
ita_campos(crec.message, ‘Handle ID’, 1, 1),
rtrim(ltrim(charobject_type)),
rtrim(ltrim(charobject_name)),
substr(crec.message, 1, instr(crec.message, ‘^’) – 1));

elsif crec.eventid = 5140 then –Acceso a recursos de red
INSERT INTO ITA_SECURITYLOG_1(log0, time0, source, eventid, type0, category, user0, computer, account_name, account_domain,
logOn_id, message, source_address, source_port, share_name)
VALUES(crec.log0, crec.day0 || ‘ ‘ || crec.time0, crec.source, crec.eventid, crec.type0, crec.category, crec.user0, crec.computer,
ita_campos(crec.message, ‘Account Name’, 1, 1),
ita_campos(crec.message, ‘Account Domain’, 1, 1),
ita_campos(crec.message, ‘Logon ID’, 1, 1),
rtrim(ltrim(substr(crec.message, 1, instr(crec.message, ‘^’) – 1))),
ita_campos(crec.message, ‘Source Address’, 1, 1),
ita_campos(crec.message, ‘Source Port’, 1, 1),
ita_campos(crec.message, ‘Share Name’, 1, 1)
);

elsif crec.eventid = 4624 then –Logon
charsecurityid := ita_campos(crec.message, ‘Security ID’, 1, 2);
charworkstation_name := ita_campos(crec.message, ‘Workstation Name’, 1, 1);
characcount_name := ita_campos(crec.message, ‘Account Name’, 1, 2);

if not charworkstation_name is null and charworkstation_name<>chr(9) and
charsecurityid not like ‘%NULL SID%’ and characcount_name not like ‘%ANONYMOUS LOGON%’ then
INSERT INTO ITA_SECURITYLOG_1(log0, time0, source, eventid, type0, category, user0, computer, account_name,
account_domain, logOn_id, workstation_name, source_network_address, share_name, accesses, message)
VALUES(crec.log0, crec.day0 || ‘ ‘ || crec.time0, crec.source, crec.eventid, crec.type0, crec.category, crec.user0, crec.computer,
characcount_name,
ita_campos(crec.message, ‘Account Domain’, 1, 2),
ita_campos(crec.message, ‘Logon ID’, 1, 2),
ita_campos(crec.message, ‘Workstation Name’, 1, 1),
ita_campos(crec.message, ‘Source Network Address’, 1, 1),
charsecurityid,
charworkstation_name,
substr(crec.message, 1, instr(crec.message, ‘^’) – 1));
end if;

elsif crec.eventid = 4634 then –Logon
–Buscamos si el Logon Id nos lo habiamos guardado.

charlogon_id := ita_campos(crec.message, ‘Logon ID’, 1, 1);

SELECT count(*) INTO intexiste
FROM ita_securitylog_1
WHERE logon_id like concat(concat(‘%’, charlogon_id), ‘%’) and
eventid = 4624;

if intexiste = 1 then
INSERT INTO ITA_SECURITYLOG_1(log0, time0, source, eventid, type0, category, user0, computer, account_name,
account_domain, logon_id, message)
VALUES(crec.log0, crec.day0 || ‘ ‘ || crec.time0, crec.source, crec.eventid, crec.type0, crec.category, crec.user0, crec.computer,
ita_campos(crec.message, ‘Account Name’, 1, 1),
ita_campos(crec.message, ‘Account Domain’, 1, 1),
charlogon_id,
substr(crec.message, 1, instr(crec.message, ‘^’) – 1));
end if;
end if;

END LOOP;

COMMIT;

CLOSE c1;

delete ita_securitylog;

delete ita_securitylog_1
where share_name like ‘%\\*\IPC$%’
or account_name like ‘%ITACA-SPROTEO$%’
or account_name like ‘%ITACA-SLOTUS$%’
or account_name like ‘%ANONYMOUS LOGON%’
or account_name like ‘%Administrador%’
or account_name like ‘%administrador%’;

commit;

EXCEPTION
WHEN OTHERS THEN
err_code := SQLCODE;
err_msg := substr(SQLERRM, 1, 64);

DBMS_OUTPUT.put_line(‘Error:’||TO_CHAR(err_code));
DBMS_OUTPUT.put_line(err_msg);

INSERT INTO ita_audit_table (error_number, error_message, hora)
VALUES (err_code, err_msg, SYSTIMESTAMP);

END ITA_SECURITY_LOG;

xosotin chelseathông tin chuyển nhượngcâu lạc bộ bóng đá arsenalbóng đá atalantabundesligacầu thủ haalandUEFAevertonxosofutebol ao vivofutemaxmulticanaisonbethttps://bsport.fithttps://onbet88.ooohttps://i9bet.bizhttps://hi88.ooohttps://okvip.athttps://f8bet.athttps://fb88.cashhttps://vn88.cashhttps://shbet.atbóng đá world cupbóng đá inter milantin juventusbenzemala ligaclb leicester cityMUman citymessi lionelsalahnapolineymarpsgronaldoserie atottenhamvalenciaAS ROMALeverkusenac milanmbappenapolinewcastleaston villaliverpoolfa cupreal madridpremier leagueAjaxbao bong da247EPLbarcelonabournemouthaff cupasean footballbên lề sân cỏbáo bóng đá mớibóng đá cúp thế giớitin bóng đá ViệtUEFAbáo bóng đá việt namHuyền thoại bóng đágiải ngoại hạng anhSeagametap chi bong da the gioitin bong da lutrận đấu hôm nayviệt nam bóng đátin nong bong daBóng đá nữthể thao 7m24h bóng đábóng đá hôm naythe thao ngoai hang anhtin nhanh bóng đáphòng thay đồ bóng đábóng đá phủikèo nhà cái onbetbóng đá lu 2thông tin phòng thay đồthe thao vuaapp đánh lô đềdudoanxosoxổ số giải đặc biệthôm nay xổ sốkèo đẹp hôm nayketquaxosokq xskqxsmnsoi cầu ba miềnsoi cau thong kesxkt hôm naythế giới xổ sốxổ số 24hxo.soxoso3mienxo so ba mienxoso dac bietxosodientoanxổ số dự đoánvé số chiều xổxoso ket quaxosokienthietxoso kq hôm nayxoso ktxổ số megaxổ số mới nhất hôm nayxoso truc tiepxoso ViệtSX3MIENxs dự đoánxs mien bac hom nayxs miên namxsmientrungxsmn thu 7con số may mắn hôm nayKQXS 3 miền Bắc Trung Nam Nhanhdự đoán xổ số 3 miềndò vé sốdu doan xo so hom nayket qua xo xoket qua xo so.vntrúng thưởng xo sokq xoso trực tiếpket qua xskqxs 247số miền nams0x0 mienbacxosobamien hôm naysố đẹp hôm naysố đẹp trực tuyếnnuôi số đẹpxo so hom quaxoso ketquaxstruc tiep hom nayxổ số kiến thiết trực tiếpxổ số kq hôm nayso xo kq trực tuyenkết quả xổ số miền bắc trực tiếpxo so miền namxổ số miền nam trực tiếptrực tiếp xổ số hôm nayket wa xsKQ XOSOxoso onlinexo so truc tiep hom nayxsttso mien bac trong ngàyKQXS3Msố so mien bacdu doan xo so onlinedu doan cau loxổ số kenokqxs vnKQXOSOKQXS hôm naytrực tiếp kết quả xổ số ba miềncap lo dep nhat hom naysoi cầu chuẩn hôm nayso ket qua xo soXem kết quả xổ số nhanh nhấtSX3MIENXSMB chủ nhậtKQXSMNkết quả mở giải trực tuyếnGiờ vàng chốt số OnlineĐánh Đề Con Gìdò số miền namdò vé số hôm nayso mo so debach thủ lô đẹp nhất hôm naycầu đề hôm naykết quả xổ số kiến thiết toàn quốccau dep 88xsmb rong bach kimket qua xs 2023dự đoán xổ số hàng ngàyBạch thủ đề miền BắcSoi Cầu MB thần tàisoi cau vip 247soi cầu tốtsoi cầu miễn phísoi cau mb vipxsmb hom nayxs vietlottxsmn hôm naycầu lô đẹpthống kê lô kép xổ số miền Bắcquay thử xsmnxổ số thần tàiQuay thử XSMTxổ số chiều nayxo so mien nam hom nayweb đánh lô đề trực tuyến uy tínKQXS hôm nayxsmb ngày hôm nayXSMT chủ nhậtxổ số Power 6/55KQXS A trúng roycao thủ chốt sốbảng xổ số đặc biệtsoi cầu 247 vipsoi cầu wap 666Soi cầu miễn phí 888 VIPSoi Cau Chuan MBđộc thủ desố miền bắcthần tài cho sốKết quả xổ số thần tàiXem trực tiếp xổ sốXIN SỐ THẦN TÀI THỔ ĐỊACầu lô số đẹplô đẹp vip 24hsoi cầu miễn phí 888xổ số kiến thiết chiều nayXSMN thứ 7 hàng tuầnKết quả Xổ số Hồ Chí Minhnhà cái xổ số Việt NamXổ Số Đại PhátXổ số mới nhất Hôm Nayso xo mb hom nayxxmb88quay thu mbXo so Minh ChinhXS Minh Ngọc trực tiếp hôm nayXSMN 88XSTDxs than taixổ số UY TIN NHẤTxs vietlott 88SOI CẦU SIÊU CHUẨNSoiCauVietlô đẹp hôm nay vipket qua so xo hom naykqxsmb 30 ngàydự đoán xổ số 3 miềnSoi cầu 3 càng chuẩn xácbạch thủ lônuoi lo chuanbắt lô chuẩn theo ngàykq xo-solô 3 càngnuôi lô đề siêu vipcầu Lô Xiên XSMBđề về bao nhiêuSoi cầu x3xổ số kiến thiết ngày hôm nayquay thử xsmttruc tiep kết quả sxmntrực tiếp miền bắckết quả xổ số chấm vnbảng xs đặc biệt năm 2023soi cau xsmbxổ số hà nội hôm naysxmtxsmt hôm nayxs truc tiep mbketqua xo so onlinekqxs onlinexo số hôm nayXS3MTin xs hôm nayxsmn thu2XSMN hom nayxổ số miền bắc trực tiếp hôm naySO XOxsmbsxmn hôm nay188betlink188 xo sosoi cầu vip 88lô tô việtsoi lô việtXS247xs ba miềnchốt lô đẹp nhất hôm naychốt số xsmbCHƠI LÔ TÔsoi cau mn hom naychốt lô chuẩndu doan sxmtdự đoán xổ số onlinerồng bạch kim chốt 3 càng miễn phí hôm naythống kê lô gan miền bắcdàn đề lôCầu Kèo Đặc Biệtchốt cầu may mắnkết quả xổ số miền bắc hômSoi cầu vàng 777thẻ bài onlinedu doan mn 888soi cầu miền nam vipsoi cầu mt vipdàn de hôm nay7 cao thủ chốt sốsoi cau mien phi 7777 cao thủ chốt số nức tiếng3 càng miền bắcrồng bạch kim 777dàn de bất bạion newsddxsmn188betw88w88789bettf88sin88suvipsunwintf88five8812betsv88vn88Top 10 nhà cái uy tínsky88iwinlucky88nhacaisin88oxbetm88vn88w88789betiwinf8betrio66rio66lucky88oxbetvn88188bet789betMay-88five88one88sin88bk88xbetoxbetMU88188BETSV88RIO66ONBET88188betM88M88SV88Jun-68Jun-88one88iwinv9betw388OXBETw388w388onbetonbetonbetonbet88onbet88onbet88onbet88onbetonbetonbetonbetqh88mu88Nhà cái uy tínpog79vp777vp777vipbetvipbetuk88uk88typhu88typhu88tk88tk88sm66sm66me88me888live8live8livesm66me88win798livesm66me88win79pog79pog79vp777vp777uk88uk88tk88tk88luck8luck8kingbet86kingbet86k188k188hr99hr99123b8xbetvnvipbetsv66zbettaisunwin-vntyphu88vn138vwinvwinvi68ee881xbetrio66zbetvn138i9betvipfi88clubcf68onbet88ee88typhu88onbetonbetkhuyenmai12bet-moblie12betmoblietaimienphi247vi68clupcf68clupvipbeti9betqh88onb123onbefsoi cầunổ hũbắn cáđá gàđá gàgame bàicasinosoi cầuxóc đĩagame bàigiải mã giấc mơbầu cuaslot gamecasinonổ hủdàn đềBắn cácasinodàn đềnổ hũtài xỉuslot gamecasinobắn cáđá gàgame bàithể thaogame bàisoi cầukqsssoi cầucờ tướngbắn cágame bàixóc đĩaAG百家乐AG百家乐AG真人AG真人爱游戏华体会华体会im体育kok体育开云体育开云体育开云体育乐鱼体育乐鱼体育欧宝体育ob体育亚博体育亚博体育亚博体育亚博体育亚博体育亚博体育开云体育开云体育棋牌棋牌沙巴体育买球平台新葡京娱乐开云体育mu88qh88

About: admin