Гость
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Логи в selfhost WCF / 11 сообщений из 11, страница 1 из 1
02.09.2010, 14:43
    #36826010
Krakozabr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Логи в selfhost WCF
А дайте пожалуйста пример, как вести логи на самохостующемся сервере WCF
...
Рейтинг: 0 / 0
02.09.2010, 16:01
    #36826290
AlexeiK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Логи в selfhost WCF
Krakozabr,

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Public Sub WriteLog(ByVal EventText As String, Optional ByVal EventType As EventLogEntryType = EventLogEntryType.Information)
        Dim sSource As String
        Dim sLog As String
        Dim sEvent As String
        sSource = "name"
        sLog = "Application"
        sEvent = EventText
        If Not EventLog.SourceExists(sSource) Then
            EventLog.CreateEventSource(sSource, sLog)
        End If
        EventLog.WriteEntry(sSource, sEvent, EventType,  234 ,  3 )
    End Sub
...
Рейтинг: 0 / 0
03.09.2010, 09:27
    #36827243
Krakozabr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Логи в selfhost WCF
Сыпасибо, но я не совсем то имел в виду )
Хочется примера лога входящих сообщений
...
Рейтинг: 0 / 0
09.09.2010, 15:36
    #36838241
Krakozabr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Логи в selfhost WCF
Итак, проблема решилась таким образом:

Создаём пару классов:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
 ////////////////////////////////////////////////////////////////////////////////////////////////////
    /// <summary>   Инспектор сообщений. </summary>
    ///
    /// <remarks>   Rvs,  09 . 09 . 2010 . </remarks>
    ////////////////////////////////////////////////////////////////////////////////////////////////////
    class Logger:IDispatchMessageInspector
    {
        #region Члены IDispatchMessageInspector

        public object AfterReceiveRequest(ref System.ServiceModel.Channels.Message request, System.ServiceModel.IClientChannel channel, System.ServiceModel.InstanceContext instanceContext)
        {
            System.Windows.Forms.MessageBox.Show(request.ToString());
            return null;
        }

        public void BeforeSendReply(ref System.ServiceModel.Channels.Message reply, object correlationState)
        {
            System.Windows.Forms.MessageBox.Show(reply.ToString());
        }

        #endregion
    }

    ////////////////////////////////////////////////////////////////////////////////////////////////////
    /// <summary>   Поведение хоста для инспектирования сообщений. </summary>
    ///
    /// <remarks>   Rvs,  09 . 09 . 2010 . </remarks>
    ////////////////////////////////////////////////////////////////////////////////////////////////////
    class LoggerBehavior : IEndpointBehavior
    {
        #region Члены IEndpointBehavior

        public void AddBindingParameters(ServiceEndpoint endpoint, System.ServiceModel.Channels.BindingParameterCollection bindingParameters)
        {
            
        }

        public void ApplyClientBehavior(ServiceEndpoint endpoint, ClientRuntime clientRuntime)
        {
           
        }

        public void ApplyDispatchBehavior(ServiceEndpoint endpoint, EndpointDispatcher endpointDispatcher)
        {
            endpointDispatcher.DispatchRuntime.MessageInspectors.Add(new Logger());
        }

        public void Validate(ServiceEndpoint endpoint)
        {

        }

        #endregion
    }
После чего, добавляем конечной точке поведение:

Код: plaintext
1.
ServiceEndpoint ep = host.AddServiceEndpoint(service.typeOfInterface, new BasicHttpBinding(), addr);
        ep.Behaviors.Add(new LoggerBehavior());

Перед обработкой входящего сообщения, будет вызвана функция AfterReceiveRequest
Перед посылкой ответа: BeforeSendReply

А вот интерсно - стоит ли тратить время на публикацию вопросов тут, если я сам же в конце концов на них отвечаю?
...
Рейтинг: 0 / 0
09.09.2010, 15:41
    #36838252
bured
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Логи в selfhost WCF
1. какое отношение MessageBox.Show(); имеет к логам?
2. если вы думаете, что открыли тут всем Америку инспектором сообщений, то вы заблуждаетесь.
3. отряд не заметит потери бойца, который не умеет формулировать свои мысли.
...
Рейтинг: 0 / 0
09.09.2010, 16:12
    #36838312
Krakozabr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Логи в selfhost WCF
bured1. какое отношение MessageBox.Show(); имеет к логам?
2. если вы думаете, что открыли тут всем Америку инспектором сообщений, то вы заблуждаетесь.
3. отряд не заметит потери бойца, который не умеет формулировать свои мысли.
1. Вы хотите, чтобы я тут вывалил весь код записи логов?
2. Если я не открыл Америку, то почему мне неделю никто не отвечал (в том числе и Вы)?
3. Куда уж чётче формулировать:
KrakozabrХочется примера лога входящих сообщений
Да и отряд что-то очень поредевший — внятных ответов мало, так то не стоит особо умничать
...
Рейтинг: 0 / 0
09.09.2010, 16:31
    #36838383
bured
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Логи в selfhost WCF
KrakozabrКуда уж чётче формулировать: Хочется примера лога входящих сообщений

KrakozabrВы хотите, чтобы я тут вывалил весь код записи логов?


феерический программист. Почитал твои посты - вопросов больше не имею.
...
Рейтинг: 0 / 0
09.09.2010, 19:19
    #36838798
Krakozabr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Логи в selfhost WCF
buredKrakozabrКуда уж чётче формулировать: Хочется примера лога входящих сообщений

KrakozabrВы хотите, чтобы я тут вывалил весь код записи логов?


феерический программист. Почитал твои посты - вопросов больше не имею.
Оч феерический - сижу программирую - а не по форумам тролю
...
Рейтинг: 0 / 0
09.09.2010, 19:25
    #36838807
Krakozabr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Логи в selfhost WCF
[quot bured Почитал твои посты.[/quot]
Я твои тоже прочитал - сплошной троллинг и раздутое самомнение - ничего по-существу
...
Рейтинг: 0 / 0
09.09.2010, 23:28
    #36839047
bured
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Логи в selfhost WCF
KrakozabrЯ твои тоже прочитал - сплошной троллинг и раздутое самомнение - ничего по-существу
читай внимательнее в следующий раз, найдёшь ответы на свои [:|||:] вопросы.
...
Рейтинг: 0 / 0
13.09.2010, 17:51
    #36844125
Логи в selfhost WCF
...
Рейтинг: 0 / 0
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Логи в selfhost WCF / 11 сообщений из 11, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]