EventLog

Журнал информации о событии

Описание

EventLog содержит массив структур, который хранит информацию, связанную с событиями программного обеспечения OPC Toolbox™. Каждый элемент в массиве структур соответствует событию.

Каждый элемент в EventLog структура содержит поля Type и Data. Type значением может быть 'WriteAsync'readasync, 'CancelAsync', 'Shutdown'запускостановка, или 'Error'.

Data хранит привязанную к конкретному событию информацию как структуру. Для получения информации о полях, содержавшихся в Data, обратитесь к связанным страницам с описанием свойства коллбэка. Например, чтобы найти информацию о полях содержавшейся в Данных для Start событие, обратитесь к StartFcn свойство.

Вы задаете максимальное количество событий, чтобы сохранить EventLogMax свойство.

Обратите внимание на то, что некоторые события не хранятся в EventLog. Если вы хотите сохранить эти события, необходимо задать коллбэк для того события.

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

Если журнал событий полон (количество событий в журнале равняется значению EventLogMax свойство), и новое событие получено, самое старое событие удалено, чтобы сделать пробел для нового события. Вы очищаете журнал событий с помощью cleareventlog функция.

Характеристики

Доступ

Только для чтения

Применяется

opcda

Тип данных

Массив структур

Значения

Значением по умолчанию является пустая матрица ([]).

Примеры

Следующий пример создает клиент и конфигурирует группу с двумя элементами. 30 вторых задач логгирования запущены, и после 10 секунд, значения элемента читаются. Когда задача логгирования останавливается, журнал событий получен и исследован.

da = opcda('localhost', 'Matrikon.OPC.Simulation');
connect(da);
grp = addgroup(da, 'EvtLogExample');
itm1 = additem(grp, 'Random.Real8');
itm2 = additem(grp, 'Triangle Waves.UInt1');
set(grp, 'UpdateRate', 1, 'RecordsToAcquire', 30);
start(grp);
pause(10);
tid = readasync(grp);
wait(grp);
el = get(da, 'EventLog')
el = get(da, 'EventLog')

el = 
1x3 struct array with fields:
    Type
    Data

Теперь исследуйте первое событие, которое является событием запуска.

el(1)
ans = 
    Type: 'Start'
    Data: [1x1 struct]

Поле данных содержит следующую информацию.

el(1).Data
ans = 
     LocalEventTime: [2004 1 13 16 16 25.1790]
          GroupName: 'EvtLogExample'
    RecordsAcquired: 0

Вторым событием является ReadAsync событие. Исследуйте Data структура и первый элемент Items структура.

el(2)
ans = 
    Type: 'ReadAsync'
    Data: [1x1 struct]

el(2).Data
ans = 
    LocalEventTime: [2004 1 13 16 16 35.2100]
           TransID: 2
         GroupName: 'EvtLogExample'
             Items: [2x1 struct]

el(2).Data.Items(1)
ans = 
       ItemID: 'Random.Real8'
        Value: 2.4619e+003
      Quality: 'Good: Non-specific'
    TimeStamp: [2004 1 13 16 16 35.1870]

Смотрите также

Функции

cleareventlog, start