Вниз
Скачать: CL | DM;

Как использовать TIdLogFile с серверами в Indy9?   Найти похожие ветки 

← →
ABolnykh ©   (2009-09-15 11:59) [0]

Здравствуйте.
Кто в курсе - подскажите, пожалуйста, как использовать компоненты IdLogFile и IdLogDebug для протоколирования подключений клиентов к IdTcpServer и IdMappedPort в Indy9 в серверном приложении?
В событиях Intercept серверных компонентов названия протоколирующих компонентов не появляются, read-only свойство IsClient = True не знаю где и как правильно переопределить (если это нужно и возможно), в Интернете конкретных советов по этому поводу тоже не нашёл.
В каком направлении двигаться?
Буду благодарен за любую информацию.


← →
Сергей М. ©   (2009-09-15 12:12) [1]


> названия протоколирующих компонентов не появляются


Потому что ты пытаешься задействовать клиентские (а не серверные) протоколирующие компоненты.

В 10-ке серверные - это IdServerInterceptLogFile и IdServerInterceptLogEvent

Не помню как в 9-ке, но вероятно и там они имеются


← →
ABolnykh ©   (2009-09-15 12:28) [2]


> В 10-ке серверные - это IdServerInterceptLogFile и IdServerInterceptLogEvent
>
> Не помню как в 9-ке, но вероятно и там они имеются
> <Цитата>


Была бы 10-ка - не было бы вопроса.
В том-то и проблема, что в 9-ке их нет. А как применить то что есть - непонятно.


← →
Сергей М. ©   (2009-09-15 12:49) [3]

Ну поставь 10-ку, долго ли ?
Рано или поздно все равно придется на 10-ку перейти ..


← →
ABolnykh ©   (2009-09-15 13:13) [4]


> Ну поставь 10-ку, долго ли ?


Да в этом направлении я и сам уже второй день размышляю... :-) :-) :-)

Всё-таки интересно: как народ жил, когда десятки не было? Ведь проблема-то была - её же, судя по радостным восклицаниям на форумах, как-то же решали... Но вот примером поделиться никто не захотел.

Может, кто-нибудь всё же в курсе, как решить эту задачу "в лоб", никуда не мигрируя?

К тому же, переход на 10-ку может создать больше проблем, чем облегчений: из-за несовпадения свойств у многих компонентов может потребоваться переделывать весь проект, чего и врагу не пожелаешь.


← →
Сергей М. ©   (2009-09-15 13:29) [5]


> как народ жил, когда десятки не было?


Хреново жил .. Да и сейчас, при 10-ке, не многим лучше)

Старые 9-шные глюки-недоработки подчистили-подправили, новые 10-шные добавили..

Вот такая селяви, панимаишь)


← →
Anatoly Podgoretsky ©   (2009-09-15 13:55) [6]

> Сергей М.  (15.09.2009 13:29:05)  [5]

Я бы сказал хуже, подчистили подправили и полностью переделали, теперь оно стало очень сложным и что делать без примеров и нормальной документации, с гигантской справкой, за которой теряется концепция работы.


← →
Сергей М. ©   (2009-09-15 14:22) [7]


> Anatoly Podgoretsky ©   (15.09.09 13:55) [6]


> полностью переделали


Ну радикальная переделка там, разумеется, сама собой напрашивалась: тошнило от одного взгляда на исходники..

Короче, нетленка Черномырдина и у индейцев актуальна)


← →
ABolnykh ©   (2009-09-15 15:16) [8]

Короче, вы оба хотите сказать, что проще переквалифицироваться в управдомы, чем получить с помощью компонентов Indy9 протокол серверных подключений? :-)


← →
ABolnykh ©   (2009-09-15 15:27) [9]


> теперь оно стало очень сложным и что делать без примеров
> и нормальной документации, с гигантской справкой, за которой
> теряется концепция работы.


За справедливость этого утверждения голосую всеми двумя руками!
Зачем творить суперзаумные вещи, а потом никому не объяснять, как ими следует пользоваться?


← →
Anatoly Podgoretsky ©   (2009-09-15 15:28) [10]

> Сергей М.  (15.09.2009 14:22:07)  [7]

А сейчас не тошнит?
Я уже не смотрел в Инди10


← →
Сергей М. ©   (2009-09-15 16:04) [11]


> ABolnykh ©   (15.09.09 15:16) [8]


У тебя есть альтернатива - событие OnConnect.
Прикрутить к нему протоколирование - простейшая задача.


← →
Сергей М. ©   (2009-09-15 16:18) [12]


> А сейчас не тошнит?


Сейчас хоть какая-то общая концептуальная схема вырисовывается, пусть и шибко заумная).. Многое теперь можно затачивать под свои задачи, не перекраивая исходники..

9-ку же иначе как говнокодом назвать было нельзя.


← →
Anatoly Podgoretsky ©   (2009-09-15 16:25) [13]

> ABolnykh  (15.09.2009 15:16:08)  [8]

В принципе да проще, поскольку не все компоненты рабочии и почти все непрозрачные.
я несколько раз был вынужден использовать компоненты Инди, и всегда в итоге получалось на ICS
Потеряное время жалко, но второй раз я потерял только день, а первый неделю, чтобы понять какая это гадость ваша заливная рыба.
Конечно простые случаи на Инди решаются легко, но чем дальше от протореной дороги, тем хуже.
Я не в курсе, как с этим дело обстоит по части TIdLogFile.


← →
ABolnykh ©   (2009-09-15 16:47) [14]


> У тебя есть альтернатива - событие OnConnect.
> Прикрутить к нему протоколирование - простейшая задача.

Можно, конечно, и так.
А чем узнать, какой IP ко мне подключился?


← →
Сергей М. ©   (2009-09-15 16:53) [15]

см. TIdSocketHandle.PeerIP

На объект этого класса выйдешь через параметр, передаваемый в обработчик события


← →
Anatoly Podgoretsky ©   (2009-09-15 16:59) [16]

> ABolnykh  (15.09.2009 16:47:14)  [14]

Вроде в Инди это IdContext


← →
Сергей М. ©   (2009-09-15 17:02) [17]

Как-то так:

PeerIP := AThread.Connection.PeerIP;
PeerPort := AThread.Connection.PeerPort;



> Anatoly Podgoretsky ©   (15.09.09 16:59) [16]


Про 9-ку же речь пока у автора идет, насколько я понимаю ..
А IdContext родился в 10-ке, похоронив IdPeerThread


← →
ABolnykh ©   (2009-09-15 17:10) [18]


> Вроде в Инди это IdContext

Завтра с утра попробую реализнуть на свежую голову.

Хотя любопытство по поводу IdLogFile всё равно осталось. Завтра, возможно, попытаю самих разработчиков на их форумах по поводу использования их детища.

Спасибо всем!!!


← →
Сергей М. ©   (2009-09-15 17:14) [19]


> попытаю самих разработчиков


Скорее всего они отправят тебя лесом, порекомендовав перейти на 10-ку)


← →
Eraser ©   (2009-09-15 21:01) [20]

> [13] Anatoly Podgoretsky ©   (15.09.09 16:25)


> Конечно простые случаи на Инди решаются легко, но чем дальше
> от протореной дороги, тем хуже.

эт точно. инди отличная вещь, но только касаемо простых TCP/IP и UDP компонентов. Компоненты, реализующие прикладные протоколы вызывают вопросы.


← →
Anatoly Podgoretsky ©   (2009-09-16 11:50) [21]

> Сергей М.  (15.09.2009 17:02:17)  [17]

Да я уже давно запутался, где что появилось, а что бы не помнить ушел на другие компоненты и не жалею.


← →
Anatoly Podgoretsky ©   (2009-09-16 11:51) [22]

> Сергей М.  (15.09.2009 17:14:19)  [19]

Но более вероятно предложат решить проблему, но не бескорыстно.


← →
Anatoly Podgoretsky ©   (2009-09-16 11:54) [23]

> Eraser  (15.09.2009 21:01:20)  [20]

У меня уже не сохранились проекты, но по резултатам, уже UDP надо относить к сложным, по причине трудно или совсем не решаемых вопросов. Недавно мучался с отправкой UDP запросов. Но не долго мучался, только до вечера.


← →
Eraser ©   (2009-09-18 01:12) [24]

> [23] Anatoly Podgoretsky ©   (16.09.09 11:54)

да уж, возможно UPD вообще проще через API реализовать.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.51 MB
Время: 0.005 c
2-1321907625
Елена
2011-11-22 00:33
2012.03.04
TPaintBox &amp; TImage


15-1320602490
Vladimir12
2011-11-06 21:01
2012.03.04
Глюки в XE2 Update2


2-1322210092
Laguna
2011-11-25 12:34
2012.03.04
Цвет ячейки StringGrid по условию


3-1272050895
штуша-кутуша
2010-04-23 23:28
2012.03.04
Имеет ли смысл размещать таблицы базы данных в разных файлах?


15-1321449825
aka
2011-11-16 17:23
2012.03.04
Движение объектов по форме




   Наверх