Sunucu 1c'de hata ayıklama modunu etkinleştirme. Sunucu prosedürlerinde hata ayıklama (1Cv82)

Şekil 8'de, hata ayıklama prosedürünün önemli ölçüde yeniden işlenmesine (aşağıda tartışıldığı gibi) ihtiyaç vardır. Bu, 8.3.7.1759 sürümüne yansımıştır. Öncelikle bu prosedür için evrensel bir arayüz oluşturuldu ve ikinci olarak bu değişiklik programın kendisinin daha da gelişmesini sağladı. Sonuçta, artık yalnızca Yapılandırıcı aracılığıyla değil, Geliştirme Araçlarını kullanarak da hata ayıklama ile çalışabilirsiniz. Yeni sürümden başlayarak 1C sunucusunda hata ayıklamanın nasıl etkinleştirileceğine bakalım.

Yeni protokolü kullanma

Önceki sürümlerde uygulanan önceki hata ayıklayıcı, istemci ve sunucu uygulamalarını TCP/IP protokolünü kullanarak yönetiyordu.

Şu anda böyle bir protokolün kullanılması, 1C:Enterprise programının internete erişimini sınırlamaya başlamış ve mobil uygulamaların çalışmasında sakıncaya neden olmuştur.

Bu nedenle, yerel ağ dışında bulunabilecek bilgi tabanlarına ücretsiz erişim için artık esnek HTTP protokolü benimsenmiştir.

Yeni mimari

Daha önce, yapılandırma hata ayıklaması yapılırken bir çalışanın bilgi tabanına bağlanması gerekiyordu. Bunu yapmak için ona yönetici hakları vermek gerekiyordu.

Yeni sürümde veritabanlarına doğrudan bağlanmaya gerek yoktur; istemciyle aynı veritabanına sahip olmanız yeterlidir. Ve bunu bir dosyadan yükleyebilirsiniz.

Mobil uygulamalar

HTTP protokolünü kullanarak artık sunucu verilerinde, istemci verilerinde ve uygulamalarda hata ayıklamak mümkün.

Diğer değişiklikler

Yeni sürümle birlikte hata ayıklama prosedüründe yerel değişkenlerin değerlerini değiştirmek mümkün olup, bu amaçla yeni bir hızlı görüntüleme penceresi uygulanmıştır.

Hesaplama modu eşzamansız olarak değiştirilerek sonuçları beklemeden çalışmaya devam etmenize olanak sağlandı.

Geliştirme Araçlarında Hata Ayıklayıcı

Yeni prosedürle etkileşim, özel olarak geliştirilmiş evrensel bir yazılım arayüzünde gerçekleştirilir. Bir yandan bu arayüz Yapılandırıcı tarafından kullanılıyor. Öte yandan yeni 1C:Enterprise Development Tools ortamında uygulanmaktadır.

Şimdi neye benziyor

Programı değiştirdikten sonra prosedür aşağıdaki senaryoya göre gerçekleşir:

Artık daha önce olduğu gibi yalnızca hata ayıklayıcıyı ve öğeleri içermiyor. Artık zincire ek bir öğe eklendi - Sunucu.

Yalnızca eklenmekle kalmaz, aynı zamanda hata ayıklayıcı ile nesneler arasındaki bilgi alışverişinin ana unsuru olarak hizmet eder. Ve alışverişin kendisi de sıraya dizilmiş mesajlar aracılığıyla gerçekleşir.

Ve bu değişim HTTP protokolü aracılığıyla gerçekleştirildiğinden, artık verilerin tam olarak nerede bulunabileceği önemli değil.

Sunucuya yapılan çağrılar, hata ayıklayıcıdan ve nesnelerden ek bağlantı istekleri biçiminde oluşturulur. Ortaya çıktıklarında onlara uygun yanıtlar gönderilir.

Farklı senaryolarda hata ayıklamayı etkinleştirin

Uygulama geliştiricisi için herhangi bir değişiklik yapılmadı. Önemli fark, yeni mekanizmanın etkinleştirilmesinin gerekli olmasıdır. Sonuçta, artık varsayılan olarak devre dışıdır.

İki senaryodan birini seçersek mod başladığında ne olacağına bakalım.

Dosya komut dosyası

Dosya sürümünün başlangıcında, yapılandırma ayarlarında yeni bir mekanizmanın - “HTTP protokolü aracılığıyla hata ayıklama” kullanımını belirtmelisiniz.

Daha sonra Yapılandırıcı otomatik olarak yerel bir sunucunun kullanılmasını önerecektir. Bu koşulun kabul edilmesi ve programın Yapılandırıcı modunda yeniden başlatılması gerekir.

Bundan sonra yeni başlatılan Yapılandırıcı, bir sonraki oturumda seçtiğimiz yeni yöntemi kaydedecektir. Ancak aynı bilgi tabanı için. Bu nedenle başka bir bilgi tabanına erişirken onun da etkinleştirilmesi gerekir.

Etkinleştirilen mekanizma artık özel bir dbgs.exe uygulaması olan Hata Ayıklayıcı Sunucusunu otomatik olarak başlatacaktır. Görev Yöneticisi penceresine yansıtılır.

OwnerPID parametresinin değeri, kendisine bağlı olan uygulamanın kimliğine karşılık gelecektir.

Yapılandırıcı aracılığıyla bir hata ayıklama oturumu başlattığınızda sunucu bağlantısı otomatik olarak gerçekleşir. Ve bağlı nesneler ona yansıtılacaktır.

1C programı yeni mekanizma olmadan etkinleştirildiyse, 1C sunucusunda hata ayıklamayı manuel olarak etkinleştirmeniz gerekecektir. Ancak şimdi sunucu adresini belirtmeniz gerekecek:

Servise Git - Seçenekler

Öğe ayarlarında bulunur:

Bağlantıya Git - Ayarlar

Aynı anda birkaç veritabanıyla bir dosya komut dosyası kullanırken, önemli bir nüansı hesaba katmanız gerekir - Yapılandırıcıların her biri (HTTP mekanizması etkinken) kendi Sunucusunu gönderir:

Bu nedenle, birden fazla Yapılandırıcı açıksa, İstemciye bağlanmak için doğru olanı belirtmeniz gerekir.

İstemci-sunucu senaryosu

Önceki durumda olduğu gibi, istemci-sunucu senaryosunu kullanarak 1C sunucusunda hata ayıklama, modun başlatılmasıyla başlar. Bu, yeni HTTP mekanizmasının kullanımını belirtir. Bu şu şekilde yapılır:

ragent.exe -hata ayıklama -http

Başladığında, hata ayıklayıcı otomatik olarak arkasında başlar.

OwnerPID parametresinin değeri, 1C küme yöneticisinin kimlik numarasına karşılık gelecektir.

Program, küme hata ayıklama sunucusunu şimdi kullanmak için bir teklif oluşturacaktır (önceki senaryoda olduğu gibi yerel olanı değil). Kabul ediyoruz ve yeniden başlatıyoruz.

Gelecekte her şey bir dosya betiği gibi ilerleyecek. Yalnızca Sunucu Veritabanı Yapılandırıcısını başlattığınızda yerel hata ayıklayıcı sunucusu artık başlamayacaktır.

Yayınımızın 1C sunucusunda hata ayıklamanın nasıl etkinleştirileceği sorununu çözmenize yardımcı olacağını umuyoruz.

Bir 1C geliştiricisinin görevi yalnızca kod yazmak değil, aynı zamanda hataları izlemek ve düzeltmek, optimal bir komut yürütme algoritması oluşturmak ve iş hızını, yani hata ayıklamayı optimize etmektir. Sunucu prosedürlerinin yerleşik hata ayıklayıcısının işlevselliğini kullanmadan bunu yapmak zordur.

Başlangıçta, 1C sunucularında hata ayıklama modu devre dışı bırakıldı, bu nedenle geliştiricinin kodu kapsamlı bir şekilde kontrol edebilmek için ayarlarda basit değişiklikler yapması gerekecek.

1C platformu sürüm 8.2 ve üzeri için sunucuda hata ayıklama modunu etkinleştirme

Hata ayıklamayı etkinleştirme algoritması oldukça basittir. İşletim sistemi mimarisi ve 1C yönetimi hakkında derinlemesine bilgi sahibi olmayı gerektirmez. Ancak yine de çok dikkatli olmalısınız çünkü hata ayıklama işi doğrudan sunucuda ve yönetici haklarıyla gerçekleştirilir. Bu nedenle, kapsamlı bilgiye sahip değilseniz, doğaçlama olmadan eylem algoritmasını kesinlikle takip edin:

  • 1C:Enterprise Server Agent hizmetini Sunucu Yöneticisi aracılığıyla durdurun. Kurulum bir üretim sunucusunda gerçekleşiyorsa, veritabanında 1C kullanıcılarının bulunmamasına önceden dikkat etmelisiniz;
  • “Başlat” - “Çalıştır” veya “Kazan” + “R” klavye kısayoluna tıklayarak sistem kayıt defteri düzenleyicisini başlatın. Açılan pencerede “regedit” satırını girin;
  • Kayıt defterinde öğeyi bulmanız gerekir;

  • Parametreler arasında “ImagePath”i bulun ve mevcut değerin sonuna boşluk bırakarak “-debug” ekleyerek değiştirin;
  • Sunucu Yöneticisi aracılığıyla durdurulan hizmeti başlatın - “1C:Enterprise Server Agent”.

1C sürüm 8.1 için sunucuda hata ayıklama modunu etkinleştirme

Platform 8.1'de hata ayıklama modunu etkinleştirmeniz gerekiyorsa, eylem algoritması neredeyse hiç değişmeden kalır. Tek değişiklik "ImagePath" yol parametresinin konumudur. 8.1 versiyonunda bölümünde yer almaktadır.

1C geliştiricileri, kodun hatalarının ayıklanması gereken test sunucuları için yalnızca hata ayıklama modunun etkinleştirilmesini önerir. Bu önerinin nedeni, sunucuda hata ayıklama etkinleştirildiğinde ortaya çıkan performans etkisidir. Çok sayıda kullanıcınız varsa veya sunucu gücü arzu edilenin çok altında kalıyorsa, hata ayıklamanın olumsuz sonuçlara yol açmaması için bu tavsiyeyi dikkatle uygulayın.

18.10.2016

1C sunucusunda hata ayıklama (8.2, 8.3...)

1C veritabanı istemci-sunucu sürümünde çalışıyorsa, sunucu tarafındaki kod hata ayıklama modu devre dışı bırakılır. Dolayısıyla bir fonksiyon veya prosedür yürütülürken ne olacağını adım adım görmek mümkün olmayacaktır. Sunucu tarafı hata ayıklamayı etkinleştirmek için birkaç basit adımı uygulamanız gerekir.

1C:Enterprise sunucusu 8.2, 8.3'te hata ayıklamayı etkinleştirin

Yapmanız gereken ilk şey 1C:Enterprise sunucu hizmetini durdurmaktır. "Başlat - Çalıştır"a (veya "Windows + R" klavye kısayoluna) gidin, "services.msc" yazın (elbette Windows hizmetleri yönetimini Yöneticiden açmanız gerekir)

Durdurduktan sonra, Windows kayıt defteri düzenleyicisini açın ("Başlat - Çalıştır" (veya "Windows + R" klavye kısayolu) ve "regedit" yazın) ve adı taşıyan dalı bulun "" veya "" platform sürümüne bağlı olarak


"ImagePath" adlı kayıt defteri anahtarıyla ilgileniyoruz. Anahtar değerinin sonuna "-debug" ekleyin. Bu, 1C sunucu tarafındaki hata ayıklama modunun etkinleştirildiği anlamına gelir.
Şuydu: "C:\Program Files\1cv8\8.3.6.2530\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files\1cv8\srvinfo"
Şuna dönüştü: "C:\Program Files\1cv8\8.3.6.2530\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -aralık 1560:1591 -d "C:\Program Files\1cv8\srvinfo" -debug


1C hizmetini kaydedin ve başlatın. Her şey hazır! Mutlu hata ayıklama!

Sunucu prosedürlerinde hata ayıklayabilmek için, yapılandırıcının “Servis->Parametreler” formundaki bayrakları ayarlamanız gerekir:

Uygulama sunucusunda hata ayıklama

Bu, belgelerde açıklanmaktadır:

Kitap “1C:İşletme 8.1. Yapılandırma ve yönetim"

Bölüm 18. Yapılandırma Araçları

Hata ayıklayıcı ve performans ölçümleri

"Sunucudaki kodda hata ayıklama

Hata ayıklama modunu yüklemek için 1C:Enterprise sunucusunu /Debug komut satırı anahtarıyla (ragent.exe /debug) başlatmalısınız."

Sunucu aracısı başlangıç ​​anahtarları kitapta açıklanmaktadır:

"1C:Kurumsal 8.1. Müşteri sunucusu. Kurulum ve kullanım özellikleri"

"Sunucu aracısını hizmet olarak çalıştırma

Bir sunucu kümesini kurarken merkezi sunucu aracısını hizmet olarak başlatma seçeneğini seçtiyseniz, bu hizmet kurulum işlemi sırasında otomatik olarak başlatılacak ve işletim sistemi başlatıldığında da başlatılacaktır.

Merkezi sunucu aracısı bir uygulama olarak kurulduysa, hizmeti manuel olarak kaydetmek ve ardından başlatmak mümkündür.

Servis kaydı aşağıdaki komutla gerçekleştirilir:

Ragent.exe -instsrvc -usr<пользователь>-pwd<пароль>-liman<порт>-menzil<диапазоны>-selev<уровень>-hata ayıklama | -rmsrvc | -başlat | -durmak

Instsrvc – küme aracısını bir Windows hizmeti olarak kaydetme. Ragent.exe bu anahtarla başlatılırsa Windows hizmetleri listesine kaydolur ve çıkar. -srvc, -rmsrvc anahtarlarıyla uyumlu değildir;

Usr<имя пользователя>

Özürlü<пароль пользователя>– ragent.exe'nin bir Windows hizmeti olarak başlatılması gereken Windows kullanıcısının adı ve parolası. Ragent.exe bir Windows hizmeti olarak kaydedilirken yalnızca -instsrvc anahtarıyla birlikte kullanılabilir;

Liman<порт>– küme aracısının ana bağlantı noktasının numarası. Bu bağlantı noktası, küme konsolu tarafından merkezi sunucuya erişmek için kullanılır. Küme aracısı bağlantı noktası aynı zamanda çalışan sunucu IP bağlantı noktası olarak da belirtilir;

Menzil<диапазоны>– Dinamik seçim için IP bağlantı noktası aralıkları. Bunlardan, ilgili çalışan sunucunun ayarlarından seçilmesi mümkün değilse, küme işlemlerinin hizmet bağlantı noktaları seçilir. Varsayılan: 1560-1591. Örnek değerler<диапазоны>: "45:49", "45:67,70:72,77:90";

Seçlev<уровень>– küme aracısı işleminin güvenlik düzeyi. Ragent.exe işlemiyle kurulan bağlantıların güvenlik düzeyini belirler.<уровень>şu değerleri alabilir: 0 (varsayılan) bağlantılar güvenli değildir, 1 – yalnızca kullanıcı kimlik doğrulaması süresince güvenli bağlantılar, 2 – kalıcı olarak güvenli bağlantılar.;

Rmsrvc – küme aracısının kaydını bir Windows hizmeti olarak siler. Ragent.exe bu anahtarla başlatılırsa, Windows hizmetleri listesindeki kaydını iptal eder ve çıkar. -srvc, -daemon, -instsrvc anahtarlarıyla uyumlu değildir.

Başlat - Windows hizmeti olarak kayıtlı ragent.exe'yi başlatın. Daha önce bir Windows hizmeti olarak kayıtlı olan ragent.exe'yi başlatır ve ardından çıkar;

Durdur - ragent.exe'nin bir Windows hizmeti olarak kaydedilmesini ve çalışmasını durdurun. Daha önce kayıtlı olan ve bir Windows hizmeti olarak çalışan ragent.exe'yi durdurur ve ardından çıkar;

Hata ayıklama - yapılandırma hata ayıklama modunda bir sunucu kümesinin başlatılması. "

Bu nedenle, 1C:Enterprise sunucusu bir hizmet olarak başlatıldıysa ve herhangi bir nedenden dolayı hata ayıklama modunda bir hizmet olarak da başlatılması gerekiyorsa, önce hizmetin kaydını (-rmsrvc anahtarı) silmeniz ve ardından hizmeti yeniden kaydetmeniz gerekir. -debug anahtarı.

Açıkçası, benzer bir etki başka yollarla da elde edilebilir, örneğin doğrudan Windows kayıt defterini düzenleyerek. Bunu yapmak için muhtemelen Windows belgelerinize başvurmalısınız.

Yalnızca kayıt defterinde "-debug" anahtarı ayarlandığında çalışır. Diğer tüm durumlarda, bazı nedenlerden dolayı çalışmıyor.

"GörüntüYolu"=

"F:\Program Files\1cv81\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "F:\Program Files\1cv81\server" idi

set "F:\Program Files\1cv81\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -debug -d "F:\Program Files\1cv81\server"

8.3.7.1759 sürümünde uygulandı.

Hata ayıklama mekanizmasını önemli ölçüde yeniden tasarladık. Bunun birkaç nedeni vardı. Öncelikle size bugün mevcut olan her uygulamada hata ayıklama yeteneği vermek istedik. İkinci olarak, önceki hata ayıklayıcı mimarisi, mevcut trendlere ayak uydurmak ve gelecekteki gelişmelere uyum sağlamak için değişiklikler gerektiriyordu. Üçüncüsü, yalnızca 1C:Enterprise yapılandırıcısının değil aynı zamanda .

Ana avantajlar

Yaptığımız değişikliklerin kapsamını hayal edebilmeniz için yeni mekanizmanın temel avantajlarını kısaca sıralayacağız.

HTTP Hata Ayıklama

Önceki hata ayıklama mekanizması, 1C:Enterprise yapılandırıcısında uygulanan hata ayıklayıcının, hata ayıklama öğeleriyle (istemci ve sunucu uygulamaları) doğrudan etkileşime girmesi gerçeğine dayanıyordu. Bu etkileşim TCP/IP protokolü kullanılarak gerçekleştirildi.

Ancak 1C:Enterprise uygulamalarının internette yayınlanması ve özellikle mobil uygulamaların ortaya çıkmasıyla birlikte bu yaklaşım bir sınırlama ve rahatsızlık kaynağı haline geldi. TCP/IP protokolü, hata ayıklayıcının hata ayıklanan öğelere "ulaşmasına" her zaman izin vermez. Sonuçta, hata ayıklayıcının çalıştığı yerel ağın dışında bulunabilirler.

Bu nedenle, yeni mekanizmada, aktarım protokolü olarak daha "her yerde bulunan" HTTP protokolünü seçtik; bu arada, istemci uygulamaları tarafından bilgi veritabanlarına bağlanmak için de kullanılıyor.

Modern hata ayıklama mimarisi

Önceki hata ayıklama mekanizmasının bir özelliği, yapılandırıcıyı kullanarak bilgi tabanına bağlanma ihtiyacıydı. Sonuç olarak, geliştirici hata ayıklamanın tüm yönetim işlevlerine tam erişimi vardı.

Yeni hata ayıklama mekanizması artık hata ayıklanan bilgi tabanına bağlantı gerektirmiyor. Hata ayıklayıcının artık ihtiyaç duyduğu en önemli şey, istemciler için çalışan yapılandırmanın aynısıdır. Bunu elde etmek için hata ayıklaması yapılan bilgi tabanına bağlanmanıza gerek yoktur. Örneğin bir dosyadan yükleyebilirsiniz.

Mobil uygulamalarda hata ayıklama

HTTP protokolünün kullanılması sayesinde mobil platform tarafından yürütülen uygulamalarda hata ayıklamak mümkün hale geldi. Üstelik herhangi bir bağlamda hata ayıklayabilirsiniz: istemci, sunucu ve arka plan işleri.

Artık hata ayıklama sırasında yazılabilir değişkenlerin değerlerini değiştirebilirsiniz. Yerel değişkenleri hızlı bir şekilde görüntülemek ve değiştirmek için ayrı bir pencere uyguladık. Ve hata ayıklayıcı tarafından görüntülenen ifadelerin hesaplanması artık eşzamansız modda gerçekleştiriliyor.

Geliştirme Araçlarında Hata Ayıklama

Yeni bir hata ayıklama mekanizması oluştururken, onunla etkileşime geçmek için yeni, evrensel bir yazılım arayüzü uyguladık. Bu arayüz 1C:Enterprise yapılandırıcısı tarafından kullanılmaktadır ve aynı arayüz artık yeni geliştirme ortamı tarafından da kullanılmaktadır. Böylece, tüm hata ayıklama yetenekleri artık .

Süreç mimarisinde hata ayıklama

Yeni hata ayıklama mimarisi şuna benzer:

Hata ayıklama bir hata ayıklayıcıyı, hata ayıklama öğelerini ve yeni bir öğeyi içerir - hata ayıklama sunucusu.

Hata ayıklayıcı ve hata ayıklama öğeleri arasında doğrudan bilgi aktarımı yoktur. Tüm etkileşim hata ayıklama sunucusu aracılığıyla düzenlenir. Bu mekanizmanın ana unsurudur. Hata ayıklama sunucusu, hata ayıklayıcı ve hata ayıklama öğelerinin birbirlerine bilgi aktardığı bir mesaj kuyruğuna sahiptir.

Hem hata ayıklayıcının kendisi hem de hata ayıklama öğeleri, hata ayıklama sunucusuyla HTTP aracılığıyla iletişim kurar. Artık bu hata ayıklama öğelerinin nerede olduğu önemli değil.

Hata ayıklama sunucusuyla etkileşim, hata ayıklayıcı ve hata ayıklama öğeleri tarafından başlatılır. Bu amaçla ek bağlantılar düzenlenmektedir. Ana amaçları, hata ayıklama sunucusunda kendileri için bilgilerin görünüp görünmediğini bulmaktır. Ve eğer görünürse, bu bilgiyi alın.

Dolayısıyla etkileşim tek taraflıdır. Bilgiler sürekli olarak hata ayıklama sunucusundan hata ayıklayıcıya ve hata ayıklama nesnelerine aktarılır.

Bilgi tabanlarının tanımlanması

Önceki mekanizmada bilgi tabanlarını tanımlamak için bir bağlantı dizesi kullanılıyordu. Bu çözüm bazı durumlarda hata ayıklama öğelerinin ve yapılandırıcının eşleştirilmesinde zorluklara neden oldu. Çünkü öncelikle büyük/küçük harfe duyarlıydı ve ikinci olarak bazı bağlamlarda hata ayıklama yapılırken platform bağlantı dizesini otomatik olarak oluşturdu. Ve bilgi tabanını yapılandırıcıya bağlarken belirttiğiniz ile her zaman örtüşmüyordu. Bu tür durumların bulunması ve düzeltilmesi, hata ayıklama sürecini karmaşıklaştırıyordu.

Yeni mekanizmada bağlantı dizesinden kurtulduk. Şimdi kullanıyoruz bilgi tabanı tanımlayıcısı. Dosya bilgi tabanında böyle bir tanımlayıcı, istemci bağlantısı ilk kez kurulduğunda oluşturulur. Sunucu bilgi tabanında, kümedeki bilgi tabanı kayıt tanımlayıcısı böyle bir tanımlayıcı olarak kullanılır.

Burada güzel bir ek nokta, eski hata ayıklama mekanizmasını şimdilik platformda tutmamızdır (gelecekte hariç tutulabilir). Ve dilerseniz veya gerekiyorsa kullanabilirsiniz. Böylece eski mekanizmayı değiştirdik ve artık bağlantı dizesini değil, bilgi tabanı tanımlayıcısını da kullanıyor.

Tipik Hata Ayıklama Senaryoları

Bir uygulama geliştiricisinin bakış açısından tipik hata ayıklama senaryoları değişmedi. Tek önemli fark, yeni hata ayıklama mekanizmasının etkinleştirilmesinin gerekli olmasıdır. Çünkü varsayılan olarak devre dışıdır.

Ne olursa olsun, hata ayıklamayı çalıştırdığınızda şimdi ne olacağına aşina olmanız mantıklı olacaktır. Çünkü standart dışı bazı çalışma senaryolarında işinize yarayabilir.

Dosya seçeneği

Dosya sürümünde hata ayıklamaya başlamadan önce, yapılandırıcı ayarlarında yeni hata ayıklama mekanizmasını kullanmak istediğinizi belirtmeniz gerekir - “ HTTP Hata Ayıklama».

Bu durumda yapılandırıcı sizden otomatik olarak yerel bir hata ayıklama sunucusu kullanmanızı isteyecektir. Bunu kabul etmeniz ve yapılandırıcıyı yeniden başlatmanız gerekir.

Ayarladığınız hata ayıklama yöntemi, yapılandırıcı oturumları arasında kaydedilir, ancak bilgi tabanları bağlamında saklanır. Bu nedenle, başka bir bilgi tabanı için onu tekrar etkinleştirmeniz gerekecektir.

Artık yapılandırıcıyı başlattığınızda veya yeniden başlattığınızda platform otomatik olarak hata ayıklama sunucusunu başlatacaktır. Bu ayrı bir dbgs.exe uygulamasıdır. Görev yöneticisinde görebilirsiniz.

OwnerPID parametresi, bu hata ayıklama sunucusunun sahibi olan uygulamanın tanımlayıcısını belirtir. Bu durumda bu, 1C:Enterprise yapılandırıcısıdır.

Şimdi, yapılandırıcıdan bir 1C:Enterprise hata ayıklama oturumu başlatırsanız, otomatik olarak hata ayıklama sunucusuna bağlanacak ve yapılandırıcıda bağlı hata ayıklama öğelerini göreceksiniz.

1C:Enterprise oturumu hata ayıklama olmadan başlatıldıysa, daha önce olduğu gibi hata ayıklayıcıya bağlayabilirsiniz. Ancak şimdi hata ayıklama sunucusu adresini belirtmeniz gerekiyor:

Bu adresi hata ayıklama öğeleri ayarlarından bulabilirsiniz:

Aynı anda birden fazla dosya veritabanıyla çalışmanın olağandışı bir noktası vardır. Dosya sürümünde, http hata ayıklaması etkin olan her yapılandırıcı, hata ayıklama sunucusunun kendi kopyasını farklı bağlantı noktalarında başlatır:

Bu nedenle, aynı anda birden fazla yapılandırıcınız açıksa, istemci uygulamasını hata ayıklayıcıya bağlamak için doğru olanı seçmeniz gerekir.

İstemci-sunucu seçeneği

İstemci-sunucu sürümünde hata ayıklamaya başlamadan önce, daha önce olduğu gibi 1C:Enterprise sunucusunu hata ayıklama modunda başlatmanız, ancak hata ayıklama için yeni HTTP mekanizmasının kullanılacağını belirtmeniz gerekir. Örneğin şöyle:

ragent.exe -hata ayıklama -http

Sunucu bu şekilde başlatıldığında hata ayıklama sunucusu da başlatılacaktır.

OwnerPID parametresi 1C:Enterprise küme yöneticisinin tanımlayıcısını gösterecektir.

Artık yapılandırıcı ayarlarında, dosya veritabanında olduğu gibi, yeni hata ayıklama mekanizmasını kullanmak istediğinizi belirtmeniz gerekiyor - " HTTP Hata Ayıklama».

Bu durumda yapılandırıcı sizden otomatik olarak yerel sunucuyu değil küme hata ayıklama sunucusunu kullanmanızı isteyecektir. Bunu kabul etmeniz ve yapılandırıcıyı yeniden başlatmanız gerekir.

Hata Ayıklama Öğelerini Bağlama

Yapılandırıcıdan hata ayıklama oturumlarını başlattığınızda, uygulamalar hata ayıklama öğelerini (hem istemci hem de sunucu) otomatik olarak hata ayıklama sunucusuna bağlar.

Aynı zamanda, daha önce olduğu gibi, nasıl başlatıldıklarına bakılmaksızın, yapılandırıcıyı hata ayıklama öğelerini otomatik olarak bağlayacak şekilde yapılandırma fırsatına sahipsiniz. Artık bu olanaklar çok daha zengin hale geldi.

İlk olarak, platform artık size aralarından seçim yapabileceğiniz tüm olası hata ayıklama öğelerini sunuyor.

İkincisi, daha incelikli bir düzenleme yöntemi daha ortaya çıktı. Bu, önceden oluşturulmuş seçimlerin kullanılmasıdır.

Bu tür seçimleri hem hata ayıklama öğelerini bağlarken hem de mevcut hata ayıklama öğelerini görüntülemek için kullanabilirsiniz.

Seçimde, hata ayıklama öğelerinin yanı sıra, oturumları ilginizi çeken belirli kullanıcıları belirtebilir ve ayrıca veri ayırma kullanılıyorsa, bilgi tabanının hata ayıklanacak alanını belirtebilirsiniz.

Değişkenleri, nesne özelliklerini değiştirme ve ifadeleri eşzamansız olarak değerlendirme

Yeni hata ayıklama mekanizması, hata ayıklama sırasında değişken değerlerini değiştirmenize olanak tanır. Önceki mekanizmada böyle bir ihtimal yoktu.

En yaygın görev gibi görünen yerel değişkenlerin rahat görüntülenmesi ve değiştirilmesi için “ Yerel değişkenler».

Dıştan bakıldığında alıştığınız “Scoreboard”a çok benziyor. Ancak öncelikle bu pencere zaten tüm yerel değişkenlerle otomatik olarak doldurulmuştur ve ikinci olarak artık değişkenlerin değerlerini değiştirebilirsiniz.

İlkel türlerin değerlerini doğrudan hücreden değiştirebilirsiniz " Anlam»:

Diğer değerleri değiştirmek için ifade giriş penceresini kullanabilirsiniz:

Güzel bir bonus, bağlamsal araç ipucunun bu pencerede tamamen işlevsel olmasıdır.

Tamamen aynı şekilde, herhangi bir (yalnızca yerel değil) değişkenin ve yazılabilir özelliğin değerlerini değiştirebilirsiniz. İfade hesaplama penceresinde (Shift+F9 komutuyla çağrılır), değişkenlerin değerlerini hem “Değer” hücresinde hem de ayrı bir iletişim kutusu kullanarak değiştirebilirsiniz.

Bu arada, ifade hesaplamasının kendisi artık eşzamansız olarak gerçekleştiriliyor. Bu, yapılandırıcının hata ayıklama öğesinin hesaplanmasını emrettiği anlamına gelir. Ve bir süredir bu hesaplamanın sunucuda yapılması bekleniyor. Hesaplama tamamlanırsa sonuçlar hemen yapılandırıcıya gönderilir. Hesaplama uzun süre yapılırsa, bu hesaplamaların sonuçları daha sonra eşzamansız olarak konfigüratöre ulaşır. Bu yaklaşım, yapılandırıcıda uzun hesaplamalar beklememenizi ve çalışmanıza devam etmenizi sağlar.