По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Протокол Syslog - это способ для сетевых устройств отправлять сообщения о событиях на сервер регистрации - обычно известный как Syslog сервер. Этот протокол поддерживается широким спектром устройств и может использоваться для регистрации различных типов событий. Например, маршрутизатор может отправлять сообщения о том, что пользователи подключаются через консоль, а веб-сервер может регистрировать события, в которых отказано в доступе. Большинство сетевых устройств, таких как маршрутизаторы и коммутаторы, могут отправлять сообщения системного журнала. Кроме того, серверы *nix также могут генерировать данные системного журнала, как и большинство брандмауэров, некоторые принтеры и даже веб-серверы, такие как Apache. Серверы на базе Windows изначально не поддерживают Syslog, но большое количество сторонних инструментов позволяет легко собирать данные журнала событий Windows или IIS и пересылать их на сервер Syslog. В отличие от SNMP, Syslog не может использоваться для «опроса» устройств для сбора информации. Например, SNMP имеет сложную иерархическую структуру, которая позволяет станции управления запрашивать у устройства информацию о таких вещах, как данные о температуре или доступное дисковое пространство. Это невозможно с Syslog - он просто отправляет сообщения в центральное место, когда инициируются определенные события. Syslog серверы Syslog - отличный способ объединить логи из нескольких источников в одном месте. Как правило, большинство серверов Syslog имеют несколько компонентов, которые делают это возможным. Syslog слушатель: Syslog сервер должен получать сообщения, отправленные по сети. Процесс прослушивания собирает данные системного журнала, отправленные через 514 UDP порт. Как мы знаем UDP-сообщения не подтверждаются или не гарантируются, поэтому имейте в виду, что некоторые сетевые устройства будут отправлять данные Syslog через 1468 TCP порт для обеспечения доставки сообщений. База данных: большие сети могут генерировать огромное количество данных syslog’а . Хорошие серверы будут использовать базу данных для хранения логов для быстрого поиска. Программное обеспечение для управления и фильтрации: из-за больших объемов данных иногда бывает сложно найти конкретные записи в журнале. Решение состоит в том, чтобы использовать syslog сервер, который автоматизирует часть работы и позволяет легко фильтровать и просматривать важные сообщения журнала. Серверы должны иметь возможность генерировать оповещения, уведомления и алерты в ответ на выбранные сообщения, чтобы администраторы сразу узнавали, когда возникла проблема, и могли предпринять быстрые действия Syslog сообщения Сообщения системного журнала обычно содержат информацию, помогающую определить основную информацию о том, где, когда и почему был отправлен лог: IP-адрес, отметка времени и фактическое сообщение. Системный журнал использует концепцию, называемое “facility”, чтобы идентифицировать источник сообщения на любом компьютере. Например, facility “0” будет сообщением ядра, а facility «11» будет сообщением FTP. Это восходит своими корнями к syslog'а UNIX. В большинстве сетевых устройств Cisco используются коды объектов «Local6» или «Local7». Syslog сообщения также имеют поле уровня серьезности. Уровень серьезности указывает, насколько важным считается сообщение. Серьезность «0» является чрезвычайной ситуацией, «1» - это предупреждение, которое требует немедленных действий, а шкала продолжается вплоть до «6» и «7» - информационных и отладочных сообщений. 0 Emergency Система не работоспособна 1 Alert Система требует немедленного вмешательства 2 Critical Состояние системы критическое 3 Error Сообщения об ошибках 4 Warning Предупреждения о возможных проблемах 5 Notice Сообщения о нормальных, но важных событиях 6 Informational Информационные сообщения 7 Debug Отладочные сообщения Недостатки syslog У протокола syslog есть несколько недостатков. Во-первых, проблема согласованности. Протокол Syslog не определяет стандартный способ форматирования содержимого сообщения - и существует столько же способов форматирования сообщения, сколько существует разработчиков. Некоторые сообщения могут быть удобочитаемыми, а некоторые нет. Syslog это не волнует - он просто предоставляет способ передачи сообщения. Есть также некоторые проблемы, которые возникают из-за того, что syslog использует UDP в качестве транспорта - поэтому возможно потерять сообщения из-за перегрузки сети или потери пакетов. Наконец, есть некоторые проблемы безопасности. В сообщениях syslog’а нет аутентификации, поэтому один компьютер может выдать себя за другой компьютер и отправить ложные события журнала. Он также подвержен повторным атакам. Несмотря на это, многие администраторы считают, что syslog является ценным инструментом, и что его недостатки относительно незначительны.
img
Появившись на рынке, API произвел настоящих прорыв и навсегда изменил процесс синхронизации информации между различным программным обеспечение. В данной статье мы с вами рассмотрим, что собой представляет интерфейс программирования API, область его применения в сфере написания приложений, примеры его использования и возможные варианты применения API в различных разработках. API (Application Programming Interface) представляет собой совокупность различных инструментов, функций, реализованных в виде интерфейса для создания новых приложений, благодаря которому одна программа будет взаимодействовать с другой. Основной задачей создания API была дать возможность программистам существенно облегчить задачу при разработке различных приложений за счет использования уже готового кода (какой-либо стандартной функции, процедуры, структуры или постоянного значения, которые будут в последующем выполнятся в конечном продукте). API определяет возможную функциональность, которую определенная программа в форме библиотеки или модуля сможет осуществлять, при этом API позволяет абстрагироваться от способа реализации функционала. Различные компоненты программы благодаря API получают возможность взаимодействия друг с другом, формируя при этом, как правило, среди компонентов определенную систему ранжирования, где абсолютно все компоненты, которые выше по рангу используют информацию из более низких по рангу компонентов, которые также используют информацию из нижестоящих рангов. Чем хорош API и где он используется? Следует отметить, что именно по схожему алгоритму сформированы протоколы передачи данных по сети Интернет, где любой уровень использует функционал нижестоящего уровня передачи данных тем самым предоставляя необходимую информацию и функциональные возможности вышестоящему. Интернет протоколы схожи по смыслу с понятием API, являясь абстракцией функциональности, только в одном из случаев суть заключается в передаче данных, а во втором о взаимодействии приложений между собой. Хорошим примером API может быть Twitter, интерфейс посредствам которого способен предоставить Вам информацию, относящуюся к твитам пользователя, кого он читает, кто является его подписчиками, что является небольшой частью реальных возможностей, которые любой желающий сможет осуществить, используя как собственный, так и любой сторонний API. Использование API в наше время Хорошим примером использования API может служить процесс быстрой регистрации в различных приложениях используя аккаунт любой из предложенной социальной сети, когда посредствам специального API социальной сети (например, Вконтакте, Facebook) сторонние компании получают возможность использовать специальный код и API для предоставления Вам оперативного и упрощенного доступа к их продукту. Компания Google за счёт использования API дает потенциальную возможность разработчикам различных приложений использовать интеграцию информации из своих сервисов на своих платформах. Благодаря этому вы сможете просмотреть видео, взятое из видео хостинга YouTube.com прямо внутри приложения. Большое количество коммерческих компании предлагают API в качестве уже готового к использованию продукта. Так, американская компания Weather Underground зарабатывает за счёт продажи доступа к своему API для оперативного получения метеорологических данных в любой точке нашей планеты. В заключении статьи следует отметить то, что в наше время невозможно создать качественные и полезные сервисы без использования библиотек API поскольку они необходимы как программистам для написания программного обеспечения и приложений, так и различным сервисам для предоставления услуг по обслуживанию клиентов и с каждым годом роль и область применения API только расширяется.
img
Сегодня подробно расскажем как найти практическое применение знаниям, полученным в статье про структуру asteriskcdrdb, а именно, как сделать ежедневные отчеты о входящих звонках на почту. Создание скрипта Чтобы наш .php скрипт смог подключиться к базе данных, необходимо создать пользователя, с правами, которые буду позволять ему извлекать необходимую информацию. Для этого, подключимся к нашему серверу по SSH [root@asterisk]# mysql mysql>CREATE USER ' user'@'localhost' IDENTIFIED BY 'P@ssw0rd'; На данном этапе мы создали пользователя user с паролем P@ssw0rd. Далее дадим ему необходимые права: mysql> GRANT SELECT ON asteriskcdrdb.cdr TO 'user' Создадим файл с расширением .php, в котором мы отразим подключение к нашей базе данных. Запишем эту конструкцию так: $hostname = "localhost"; //адрес хоста. Скрипт мы будем запускать на той же машине, на которой находится БД asteriskcdrdb; $username = "user"; //отражаем пользователя $password = "P@ssw0rd"; //пароль для созданного нами пользователя $dbName = "asteriskcdrdb"; //база данных, в которой хранятся необходимые нам данные $today = date('y-m-d'); // сегодняшняя дата в формате 2016-03-25 $counter = 1; // счетчик mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение "); // соединиться к БД mysql_select_db($dbName) or die(mysql_error()); //выбрать базу данных. Если произойдет ошибка - вывести ее $headers = "; charset=windows-1251 "; //заголовок для письма $headers .= "From: Мерион Нетворкс <info@merionet.ru> "; $headers .= "Reply-To: info@merionet.ru "; Предположим, что все входящие звонки приходят на номер секретаря – 100. Так же мы знаем, что при звонке из города, мы видим номер звонящего, который содержит в себе больше 3 символов (пусть у нас используется трехзначная внутренняя нумерация). Наша задача сводится к формулировке запроса к таблице cdr. Добавляем к нашему .php файлу: $query = "SELECT `dst` , `src` , `duration` , `dstchannel` , `calldate` , `disposition` FROM `cdr` WHERE `calldate` >='$today 00:00:00' AND `calldate` <='$today 23:59:59' AND LENGTH( `src` ) >3 AND `dst` = '100';" ; $res=mysql_query($query) or die(mysql_error()); // Выполнить запрос. Если произойдет ошибка - вывести ее. $number = mysql_num_rows($res); // Как много нашлось строк У нас почти все готово. Осталось только обработать данные на выходе. Для этого, нам понадобится следующая конструкция: //формируем шапку нашей таблицы со значениями $mes .= ' table style="max-width: 575px;border-bottom:none; margin: 0 auto;border-spacing: inherit;"> thead> tr style="border-bottom: 2px solid #05477c;"> th style="padding:10px; color: #fff; max-width: 150px;background:#05477c;">Порядковый номер</th> th style="padding:10px; color: #fff; max-width: 150px;background:#05477c;">Дата</th> th style="padding:10px; color: #fff; max-width: 100px;background:#05477c;">От кого</th> th style="padding:10px; color: #fff; max-width: 45px;background:#05477c;">Кому</th> th style="padding:10px; color: #fff; max-width: 45px;background:#05477c;">Статус звонка</th> /tr> /thead>'; //перебираем значения ассоциативного массива. Число элементов данного массива равно числу строк на выходе sql запроса while ($row=mysql_fetch_array($res)) { $mes .= ' tbody> tr style="width: 100px;"> td style="padding:10px; border-bottom: 1px solid #eee; text-align:center;">'.$counter.'</td> td style="padding:10px; border-bottom: 1px solid #eee; text-align:center;min-width: 100px;">'. $row['calldate'].'</td> td style="padding:10px; border-bottom: 1px solid #eee; text-align:center;min-width: 100px;">'. $row['src'].'</td> td style="padding:10px; border-bottom: 1px solid #eee; text-align:center;">'.$row['dst'].'</td> td style="padding:10px; text-align:center; border-bottom: 1px solid #eee; min-width: 120px; ">'.$row['disposition'].'</td> /tr>'; $counter = $counter + 1; } Теперь, мы храним в переменной $mes html таблицу, которая готова к отправке на почту. Добавим в конец скрипта: mail("info@merionet.ru", 'Все входящие за '.$today.'', $mes, $headers); ВАЖНО! Если вы используете кириллические символы, установите кодировку .php файла на Кириллицу (windows-1251) Итак, готово. Давайте посмотрим что приходит нам на почту: Работает. Давайте сделаем ежедневное задание на отработку этого скрипта через cron. Сделаем, например, ежедневно, в 17:30, когда рабочий день подходит к концу: 30 17 * * * php /home/admin/mail_report.php Не забудьте в начала скрипта поставить открывающий тэг php, а в конце скрипта закрывающий.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59