yardım noktasıyardım noktası
  • Anasayfa
  • Bilgi Bankası
    • Private
      • Private – Article
      • Private – Attached File
      • Protected Article
  • Blog
  • Giriş / Kayıt
  • Bilgi Bankası Arşivi
  • Anasayfa
  • Bilgi Bankası
    • Private
      • Private – Article
      • Private – Attached File
      • Protected Article
  • Blog
  • Giriş / Kayıt
  • Bilgi Bankası Arşivi
Anasayfa/Bilgi Bankası/COMODO / Xcitium Enterprise Platform/Scripts Bank/TANI VE HATA AYIKLAMA ARACI v2 (TIMEOUT KORUMALI)

TANI VE HATA AYIKLAMA ARACI v2 (TIMEOUT KORUMALI)

0 Gösterim 0 5 Aralık 2025 Güncelleme tarihi 5 December 2025 atasoyhk

Bu script, ağ bağlantısı testlerini gerçekleştirirken “takılı kalma” (hang) durumunu önlemek için her adıma katı zaman sınırları (Timeout) uygular. Eğer bir işlem (özellikle PowerShell) 30 saniye içinde yanıt vermezse, script o işlemi otomatik olarak sonlandırır ve “Zaman Aşımı” hatası raporlar.

Aşağıdaki kodu

Comodo/Xcitium Panel > ITSM > Remote Monitoring and Management > Procedures kısmında yeni bir Presedür / Procedure Script oluştur deyip uygun yere yapıştırın.

Sorularınızı yorum kısmında sorabilirsiniz.

—————– KOD ————–

# -*- coding: utf-8 -*-
“””
====================================================================================================
SCRIPT KÜNYESİ: TANI VE HATA AYIKLAMA ARACI v2 (TIMEOUT KORUMALI)
====================================================================================================
SCRIPT ADI: Network Diagnostic Tool v2 (with Timeout)
YAZAR/TARİH: H. Kaan ATASOY (atasoyhk@gmail.com) / 05.12.2025
HEDEF SİSTEM: Windows 10 / 11
PYTHON SÜRÜMÜ: Python 2.7 / 3.x Uyumlu

AÇIKLAMA:
Bu script, ağ bağlantısı testlerini gerçekleştirirken “takılı kalma” (hang) durumunu
önlemek için her adıma katı zaman sınırları (Timeout) uygular.
Eğer bir işlem (özellikle PowerShell) 30 saniye içinde yanıt vermezse, script o işlemi
otomatik olarak sonlandırır ve “Zaman Aşımı” hatası raporlar.

TESTLER:
1. DNS ÇÖZÜMLEME
2. SOCKET BAĞLANTISI (5 Saniye Timeout)
3. POWERSHELL İNDİRME TESTİ (30 Saniye Timeout – Korumalı)
====================================================================================================
“””

import os
import sys
import socket
import subprocess
import time

# — AYARLAR —
Target_Host = “emscomo.tempobpo.net”
Target_Url = “https://siteadi.com/dosyaadiniz.msi”
Temp_File = “C:\\Windows\\Temp\\debug_test_file.msi”

# Çıktıların anında panele düşmesi için flush yapıyoruz
def log(msg):
print(msg)
sys.stdout.flush()

log(“-” * 60)
log(“DIAGNOSTIC TEST v2 BASLIYOR (TIMEOUT KORUMALI)”)
log(“-” * 60)

# — TEST 1: DNS COZUMLEME —
log(“\n[TEST 1] DNS Cozumleme Kontrolu ({0})…”.format(Target_Host))
try:
ip_address = socket.gethostbyname(Target_Host)
log(“[OK] DNS Basarili. Cozumlenen IP: ” + ip_address)
except Exception as e:
log(“[FAIL] DNS Hatasi! Bilgisayar sunucu ismini cozemiyor.”)
log(“Hata Detayi: ” + str(e))

# — TEST 2: PORT ERISIMI (SOCKET) —
log(“\n[TEST 2] Sunucuya Port Erisimi (443/HTTPS)…”)
try:
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.settimeout(5) # 5 saniye icinde cevap gelmezse kes
result = s.connect_ex((Target_Host, 443))
if result == 0:
log(“[OK] Sunucuya 443 portundan erisim VAR.”)
else:
log(“[FAIL] Port Erisim Hatasi! Kod: ” + str(result))
log(“NOT: Bu kod 10060 ise ‘Zaman Asimi’, 10061 ise ‘Reddedildi’ demektir.”)
s.close()
except Exception as e:
log(“[FAIL] Socket Baglanti Hatasi: ” + str(e))

# — TEST 3: POWERSHELL İNDİRME TESTİ (TIMEOUTLU) —
log(“\n[TEST 3] PowerShell Indirme Denemesi (Maksimum 30 Saniye)…”)

# PowerShell komutu
ps_script = “””
try {
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12;
$client = New-Object System.Net.WebClient;
$url = ‘””” + Target_Url + “””‘;
$dest = ‘””” + Temp_File + “””‘;
Write-Host “Indirme deneniyor…”;
$client.DownloadFile($url, $dest);
Write-Host “SUCCESS: Indirme basarili.”;
}
catch {
Write-Host “PS_ERROR: ” $_.Exception.Message;
}
“””

try:
cmd = ‘powershell -Command “{0}”‘.format(ps_script.replace(‘\n’, ‘ ‘))

# İşlemi başlatıyoruz ama sonucunu beklemiyoruz (henüz)
proc = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE)

# — ZAMANLAYICI DÖNGÜSÜ —
timeout_seconds = 30
start_time = time.time()
is_timeout = True

while (time.time() – start_time) < timeout_seconds:
if proc.poll() is not None:
# İşlem 30 saniyeden önce bitti, harika.
is_timeout = False
break
time.sleep(1) # 1 saniye bekle ve tekrar kontrol et

if is_timeout:
# Süre doldu ama işlem bitmedi -> ZORLA ÖLDÜR
log(“[!!!] ZAMAN ASIMI: PowerShell 30 saniyedir cevap vermiyor.”)
log(“[!!!] TESHIS: Guvenlik duvari (Firewall) paketleri ‘DROP’ ediyor.”)

# Process’i oldur
try:
# Windows taskkill komutuyla işlemi sonlandır
subprocess.call([‘taskkill’, ‘/F’, ‘/T’, ‘/PID’, str(proc.pid)])
except:
pass

else:
# Zamanında bitti, çıktıları oku
out, err = proc.communicate()
log(“— PowerShell Ciktisi —“)
log(out)
if err:
log(“— Hata Ciktisi —“)
log(err)

except Exception as e:
log(“[FAIL] Python Script Hatasi: ” + str(e))

# — TEMIZLIK —
if os.path.exists(Temp_File):
try: os.remove(Temp_File)
except: pass

log(“\n” + “-” * 60)
log(“TEST TAMAMLANDI.”)
log(“-” * 60)

Etiketler:Comodo Scripts BankComodo ScriptsComodo / XcitiumComodo / Xcitium Scripts Bank

Bu yardımcı oldu mu ?

Evet  Hayır
İlgili Makaleler
  • HATA AYIKLAMA VE TANI ARACI (DIAGNOSTIC TOOL)
  • Comodo/Xcitium .msi Kurulum Scripti – Web den indirme

Aradığınız cevabı bulamadınız mı? Bize Ulaşın

Yorum Bırakın Yanıtı iptal et

Scripts Bank
  • TANI VE HATA AYIKLAMA ARACI v2 (TIMEOUT KORUMALI)
  • Comodo/Xcitium .msi Kurulum Scripti – Web den indirme
  • HATA AYIKLAMA VE TANI ARACI (DIAGNOSTIC TOOL)
Kategoriler
  • Apache
  • COMODO / Xcitium Enterprise Platform
  • ITSM (Information Technology Service Management
  • Procedures Scripts / Prosedur Scriptleri
  • Scripts Bank
  • Anydesk
  • Teamviewer
  • Yardım Noktası
  • Prestashop
  • Prestashop Tema
  • Prestashop Modül
  • Prestashop Dokümanlar
  • E-Ticaret Sitesi
  • KVKK
  • Prestashop Çözümler
  • Sunucu

  HATA AYIKLAMA VE TANI ARACI (DIAGNOSTIC TOOL)

yardimnoktasi.com.com
  • Hakkımızda
  • Hizmetlerimiz
  • Danışmanlıklarımız
  • Forum
  • İletişim
Destek Kanallarımız
  • Bilgi Bankası Arşivi
  • Destek Talebi Oluştur
  • Whatsapp Destek
Danışmanlıklarımız
  • E-Ticaret Danışmanlığı
  • Dijital Dönüşüm Danışmanlığı
  • Siber Güvenlik Danışmanlığı
İletişim
Whatsapp : 0539 599 06 66
..:: Destek Talebi Oluştur ::..
Mail Adresi : bilgi@yardimnoktasi.com
Kurumsal Destek : 7 gün 24 saat
Bireysel Destek : 6 gün 12 saat
  • Copyright 2025 yardimnoktasi.com - Tüm hakları yardım noktasına aittir.

  • Giriş
  • Kayıt
Şifremi unuttum?
Şifrenizi mi kaybettiniz? Lütfen kullanıcı adınızı veya e-posta adresinizi girin. E-posta yoluyla yeni bir şifre oluşturmak için bir bağlantı alacaksınız.
Bunlar Çok Soruldu :