Я думаю, что код работает:
$sysLog = Get-EventLog -LogName System -EntryType Error | Where-Object{ Я думаю, что код работает:
[110] РЕДАКТИРОВАТЬ пример с экспортом в файл журнала:
Function WriteEventLogFile ([string] $pathToWriteLog, [string] $InstanceId){
$sysLogItems = Get-EventLog -LogName System -EntryType Error | Where-Object { Я думаю, что код работает:
[110] РЕДАКТИРОВАТЬ пример с экспортом в файл журнала:
[111].InstanceId -eq $InstanceId}
# write-host $sysLogItems
$sysLogItems | Export-Csv -Path $pathToWriteLog -NoTypeInformation
}
WriteEventLogFile -pathToWriteLog:"C:\Temp\envent_export.log" -InstanceId:"10016"
.InstanceId -eq 10016}
$sysLog
РЕДАКТИРОВАТЬ пример с экспортом в файл журнала:
Function WriteEventLogFile ([string] $pathToWriteLog, [string] $InstanceId){
$sysLogItems = Get-EventLog -LogName System -EntryType Error | Where-Object { Я думаю, что код работает:
[110] РЕДАКТИРОВАТЬ пример с экспортом в файл журнала:
[111].InstanceId -eq $InstanceId}
# write-host $sysLogItems
$sysLogItems | Export-Csv -Path $pathToWriteLog -NoTypeInformation
}
WriteEventLogFile -pathToWriteLog:"C:\Temp\envent_export.log" -InstanceId:"10016"
Для PHP я использую feedcreator http://feedcreator.org/
<?php define ('CONFIG_SYSTEM_URL','http://www.domain.tld/');
require_once('feedcreator/feedcreator.class.php');
$feedformat='RSS2.0';
header('Content-type: application/xml');
$rss = new UniversalFeedCreator();
$rss->useCached();
$rss->title = "Item List";
$rss->cssStyleSheet='';
$rss->description = 'this feed';
$rss->link = CONFIG_SYSTEM_URL;
$rss->syndicationURL = CONFIG_SYSTEM_URL.'feed.php';
$articles=new itemList(); // list of stuff
foreach ($articles as $i) {
$item = new FeedItem();
$item->title = sprintf('%s',$i->title);
$item->link = CONFIG_SYSTEM_URL.'item.php?id='.$i->dbId;
$item->description = $i->Subject;
$item->date = $i->ModifyDate;
$item->source = CONFIG_SYSTEM_URL;
$item->author = $i->User;
$rss->addItem($item);
}
print $rss->createFeed($feedformat);
Каналом RSS является просто XML-документ, который соответствует определенной схеме.
Взгляните здесь
В каком языке Вы работаете? Можно легко написать сценарий вывода xml на основе некоторого содержания в приложении. Вы не должны явно сохранить файл к файловой системе. Это может просто быть создано на лету
У меня есть хорошие результаты Сороки RSS. Настройте включенный cacheing и все, что необходимо сделать, записать запрос, чтобы получить данные и отправить результат Сороке RSS, который затем обрабатывает частоту обновления.
Я не записал бы RSS-файл, если Ваш сервер не находится под особенно большой нагрузкой - один запрос (или серия запросов, которая добавляет к массиву) для обновленного материала, все, в чем Вы нуждаетесь. Запишите query/ies, который будет отсортирован по дате и затем ограничен X, и Вы не должны будете волноваться о 'удалении старого материала' также.
Канал RSS является просто XML-документом, отформатированным определенным способом и связанным с от веб-страницы.
Смотрите на эту страницу (http://cyber.law.harvard.edu/rss/rss.html), который детализирует спецификацию RSS, дает RSS-файлы в качестве примера для Вас для взгляда на и показывает Вам, как связаться с ними от Вашего сайта.
То, как Вы создаете документ, ваше дело. Вы могли записать это вручную в текстовом редакторе, использовать язык определенный объект XML, или поразить страницу ASPX/PHP/other и отправить корректные заголовки типа контента наряду с документом RSS.
Это не все это трудно при переходе к нему.удачи!
Вот является простой ASP.NET 2 базирующимися каналами RSS, я использую как живая закладка для моего localhost dev сайты. Мог бы помочь Вам начать:
<%@ Page Language="C#" EnableViewState="false" %>
<%@ OutputCache Duration="300" VaryByParam="none" %>
<%@ Import Namespace="System" %>
<%@ Import Namespace="System.Configuration" %>
<%@ Import Namespace="System.Web" %>
<%@ Import Namespace="System.Web.Security" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Xml" %>
<%@ Import Namespace="System.Text" %>
<%@ Import Namespace="System.DirectoryServices" %>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
System.Collections.Specialized.StringCollection HideSites = new StringCollection();
System.Collections.Generic.List<string> Sites = new System.Collections.Generic.List<string>();
HideSites.Add(@"IISHelp");
HideSites.Add(@"MSMQ");
HideSites.Add(@"Printers");
DirectoryEntry entry = new DirectoryEntry("IIS://LocalHost/W3SVC/1/ROOT");
foreach (DirectoryEntry site in entry.Children)
{
if (site.SchemaClassName == "IIsWebVirtualDir" && !HideSites.Contains(site.Name))
{
Sites.Add(site.Name);
}
}
Sites.Sort();
Response.Clear();
Response.ContentType = "text/xml";
XmlTextWriter RSS = new XmlTextWriter(Response.OutputStream, Encoding.UTF8);
RSS.WriteStartDocument();
RSS.WriteStartElement("rss");
RSS.WriteAttributeString("version","2.0");
RSS.WriteStartElement("channel");
RSS.WriteElementString("title", "Localhost Websites");
RSS.WriteElementString("link","http://localhost/sitelist.aspx");
RSS.WriteElementString("description","localhost websites");
foreach (string s in Sites)
{
RSS.WriteStartElement("item");
RSS.WriteElementString("title", s);
RSS.WriteElementString("link", "http://localhost/" + s);
RSS.WriteEndElement();
}
RSS.WriteEndElement();
RSS.WriteEndElement();
RSS.WriteEndDocument();
RSS.Flush();
RSS.Close();
Response.End();
}
</script>
Я сказал бы, что ответ имеет канал RSS быть не чем иным как другим представлением Ваших данных. Это означает, что Ваша RSS лента является просто xml представлением данных в Вашей базе данных. Читатели затем смогут поразить тот определенный URL и возвратить текущую информацию в Вашем приложении.
Существует два способа приблизиться к этому. Первое должно создать документ RSS динамично о запросе. Второе должно записать в статический файл, когда соответствующее изменение происходит. Последний быстрее, но требует, чтобы вызов обновил канал в (вероятно), многих местах по сравнению со всего один.
С обоими методами, в то время как Вы могли отредактировать документ только с изменениями, намного более просто просто переписать целый документ каждый раз с новым (10-50) объекты.
Если Вы хотите генерировать канал элементов, которые уже существуют в HTML, одна опция состоит в том, чтобы изменить Вашу разметку HTML, чтобы использовать hAtom (http://microformats.org/wiki/hAtom) и затем указать на программы чтения новостных лент через hAtom-> Atom или hAtom-> прокси RSS.