Примечания редактора: Иногда за ПО лучше не платить. Мы в AddictiveTips делаем все возможное, чтобы найти способы решить проблему бесплатно, без необходимости платить за коммерческое программное обеспечение. Один инструмент сам по себе не может выполнить задачу, поэтому мы собираемся использовать несколько инструментов для создания нашего собственного программного обеспечения для мониторинга компьютерной активности. Этому методу может следовать почти каждый, поскольку он не требует написания ни единой строчки кода.
По определению, программное обеспечение для мониторинга компьютерной активности означает инструмент, который может отслеживать активность, не зная, что за ним наблюдают. Auto Clicker Typer — это не инструмент для мониторинга, но мы превратим его в инструмент, сделав несколько хитроумных модификаций.
Установка и настройка Auto Clicker Typer
Для начала установите Auto Clicker Typer. После этого откройте его и установите флажок «Записывать движение курсора».
Создание таблицы в Excel, для обработки данных мониторинга усвоения детьми образовательной программы
Программы для Windows, мобильные приложения, игры — ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале — Подписывайтесь:)
Теперь нажмите кнопку «Горячие клавиши» и установите горячие клавиши для параметров записи и остановки.
Наконец, сверните приложение, и оно появится в системном трее.
Скрытие значка на панели задач
Чтобы скрыть значок из области уведомлений, откройте TrayIt (установка не требуется). Перейдите к Редактировать > Значки ракушек.
Снимите флажок Auto Clicker Typer, как показано на снимке экрана ниже, и закройте приложение TrayIt.
Теперь вы увидите, что значок Auto Clicker Typer на панели задач исчез.
Убедитесь, что инструмент мониторинга работает в фоновом режиме
Обратите внимание, что исчез только значок системы, приложение фактически работает в фоновом режиме. Чтобы убедиться, что приложение работает в фоновом режиме, откройте диспетчер задач Windows, нажав Ctrl + Shift + Esc, и перейдите на вкладку «Процессы».
Как включить мониторинг в играх?
Если в списке вы найдете Auto Clicker Typer.exe, значит, все идет по плану.
Начать мониторинг
Теперь, прежде чем ваш супруг, дети, друг или коллега начнут использовать ваш компьютер, нажмите Ctrl + Shift + 1, это горячая клавиша, которую мы установили для записи. Как только он / она встанет с вашего компьютера, вы можете нажать Ctrl + Shift + 2, это горячая клавиша, которую мы установили для остановки записи.
Даже если они находятся рядом с вами, они не узнают, когда вы нажмете горячие клавиши, поскольку перед ними ничего не произойдет. Только вы узнаете секрет.
Но подождите, что, если они выключат, перезагрузят или выйдут из системы? Да, это одна из проблем, но вы можете отключить эти параметры в редакторе локальной групповой политики.
Отключить выключение, выход из системы, перезапуск, спящий режим и гибернацию
Откройте редактор локальной групповой политики,
В Windows XP: введите gpedit.msc в команде «Выполнить» и нажмите Enter.
В Windows Vista и 7: введите gpedit.msc в «Начать поиск» и нажмите Enter.
Перейдите к Конфигурация пользователя > Административные шаблоны > Меню Пуск и панель задач из левой боковой панели.
Теперь найдите и включите два ключа с именами, Удаление и предотвращение доступа к командам выключения, перезапуска, сна и гибернации а также Удалить выход из системы в меню «Пуск». Чтобы получить более четкое изображение, перейдите сюда.
После этого закройте окно, и вы обнаружите, что все эти параметры удалены как из меню «Пуск», так и из экрана безопасности Windows.
Что дальше
После того, как вы остановили запись, снова включите значок на панели задач с помощью TrayIt. Теперь откройте Auto Clicker Typer и нажмите «Воспроизвести», чтобы увидеть все действия, которые произошли во время вашего отсутствия. Вы также можете сохранить это действие, чтобы просмотреть его позже, нажав «Сохранить список».
Примечание: Вы также можете установить горячую клавишу для воспроизведения, списка очистки и других параметров.
Загрузить пакет программного обеспечения
Я добавил оба инструмента в простой zip-файл, на случай, если соответствующие сайты упадут, вы всегда можете скачать отсюда.
Загрузить пакет программного обеспечения для мониторинга активности AddictiveTips (666Kb)
Программы для Windows, мобильные приложения, игры — ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале — Подписывайтесь:)
Источник: myroad.club
Создание собственного сервиса мониторинга цен: от бесплатного к дорогому
Существует множество метрик интернет-магазина — посещаемость сайта, среднее время пребывания на сайте, показатель конверсии, коэффициент прерывания, лояльность клиента и пр.
Но есть одна составляющая, которая часто не очевидно, но прямо влияет на все перечисленное выше: если не придавать ей должного значения, то никакие оптимизации UX, увеличение целевого трафика или редизайн корзины не помогут удержать пользователя на сайте. И эта деталь — цена товара, которая влияет на формирование «ценового имиджа» магазина в глазах покупателей.
Очевидно, что без информации о рынке (ценах конкурентов) сложно организовать эффективный, контролируемый и регулярный процесс оценки и переоценки собственных товаров. Поэтому практически каждая компания рано или поздно задумывается о построении системы мониторинга цен (СМЦ). Ниже мы рассмотрели основные варианты создания собственной СМЦ для интернет-магазинов разного масштаба (сегментация введена на основе ежемесячных расходов на создание и поддержание работоспособности такой СМЦ).
Для малого бизнеса (до $200)
Для очень небольших интернет-магазинов, которые больше напоминают хобби, чем реальный бизнес, больше подходит ручной сбор информации, так как это — самый простой и бесплатный (или сравнительно недорогой) источник данных о ценах конкурентов.
Сбор данных
Для сбора информации достаточно воспользоваться услугами штатного работника или фрилансера, чтобы пару раз в месяц мониторить стоимость топ-товаров конкурентов и корректировать собственные цены. При этом нужно учитывать, что ручной сбор информации — довольно неприятная затея и мало кто любит им заниматься. Поэтому, в большинстве случаев, такой «сборщик» ищет более легкие пути получения данных и использует данные прайс-площадок (прайс-агрегаторов), потому что прямые заходы на сайты конкурентов занимают гораздо больше времени, а затем сводит полученные данные в таблицу. И, ввиду того что прайс-площадки являются всего лишь посредниками данных, они могут не содержать всю необходимую для качественного анализа информацию.
Обработка и хранение данных
Для хранения и обработки данных в такой «системе» мониторинга достаточно простой таблицы Excel и нескольких десятков часов работы человека, который собирает данные.
Необходимые инструменты
Таблица, в которую будут заноситься необходимые данные, может выглядеть, например так (скриншот сервиса Competera)
Плюсы и минусы
Единственный плюс такого подхода — его стоимость, так как ни по актуальности, ни по скорости их сбора преимуществ не будет. Также в данном «сценарии» есть большой вопрос к качеству собираемых данных, ведь человеческий фактор рождает и банальные механические ошибки.
Для среднего бизнеса (от $200 до $2500)
Для интернет-магазинов, которые вышли из категории «хобби», входят в фазу активного развития и начинают систематизировать бизнес-процессы, больше подойдет программа-парсер, которая будет собирать необходимые данные, а также — отдельный специалист для обработки получаемой информации.
Сбор данных
Такое решение эффективно в тех случаях, когда интернет-магазин торгует в довольно «спокойном» товарном сегменте, где практически отсутствуют внезапные скачки или сезонное изменение цен — в случае, когда достаточно сверять цены с рынком несколько раз в неделю. При этом важное условие для внедрения такой «автоматизации» — необходимость собирать данные не только с прайс-агрегаторов, но и напрямую с сайтов интернет-магазинов.
Обработка и хранение данных
На этапе обработки собранной информации, создаваемая СМЦ должна достаточно качественно классифицировать собранные данные и регулярно сопоставлять новые товары. И первый — самый важный — вопрос, который требуется постоянно решать: сопоставление товарной матрицы интернет-магазина с товарными матрицами конкурентов.
При работе с прайс-площадками этот вопрос часто решается путем относительного сопоставления (мы знаем ссылку на свою карточку на прайс-агрегаторе и сопоставляем нашу цену со всеми ценами других магазинов на этой карточке). Но в случае работы напрямую с сайтами магазинов, необходимо сопоставлять товары и цены самостоятельно — вручную или автоматически. Этот процесс довольно непростой, и добиться достаточного качества и скорости обработки удается далеко не всегда.
Необходимые инструменты
Для того, чтобы реализовать СМЦ такой сложности, понадобятся 1-2 разработчика, 1 аналитик и 1-2 человека, которые будут регулярно заниматься сопоставлением товарных матриц.
Плюсы и минусы
К плюсам такого подхода — автоматизированного сбора и ручного анализа — можно однозначно отнести актуальность (по сравнению с предыдущим подходом) получаемой информации. При этом такая модель построения СМЦ имеет особенности, на которые стоит обратить внимание — необходимость постоянного сопоставления товарной матрицы и постоянная адаптация СМЦ под изменения. Чаще всего это приводит к тому, что команда разработчиков магазина большую часть времени занимается сторонним (не профильным) процессом сбора и обработки информации, разрастается и, в конечном итоге, становится неэффективной.
Еще один большой минус — сам по себе сбор информации с прайс-площадок: для сбора и анализа доступны только те данные и товары, которые другие интернет-магазины предоставили площадке. Соответственно, используя такую информацию, тяжело объективно оценивать реальное наличие товаров у конкурентов и их акционные предложения.
Для крупных ритейлеров (от $2500)
Полностью автоматизированное решение необходимо интернет-гипермаркетам, магазинам с большим ассортиментом и множеством товарных категорий, а также средним и даже мелким магазинам, которые комплексно относятся к своему позиционированию в глазах покупателей и работают в высококонкурентной среде, где постоянно нужны актуальные данные. В таких случаях своевременная оптимизация цен и стратегий ценообразования становятся серьезным конкурентным преимуществом.
Сбор данных
В этом случае данные должны собираться исключительно с сайтов-конкурентов. Этот подход практически лишен всех минусов работы с прайс-агрегаторами, но содержит ряд технических трудностей, которые не каждому под силу решить: магазины имеют разную структуру каталогов, верстки, способов предоставления информации об акциях и наличии товара. Поэтому механизмы сбора информации нужно адаптировать под каждый из источников, чтобы постоянно поддерживать ее актуальность.
Обработка и хранение данных
Важно учитывать, при создании собственной СМЦ такого масштаба, что она должна быть построена таким образом, чтобы аналитики могли полностью полагаться на собранные данные, их актуальность и полноту, иначе есть риск навредить бизнесу. Соответственно, на этапе обработки собранной информации, СМЦ должна достаточно качественно классифицировать собранные данные и сопоставлять новые товары на регулярной основе. Организация полностью автономного процесса обработки и хранения данных требует хорошо отлаженного механизма и постоянного контроля со стороны разработчиков, а также инфраструктуры соответствующего масштаба для регулярного сбора и хранения данных (речь идет о необходимости сохранять десятки, а иногда и сотни гигабайт в день).
Необходимые инструменты
Эффективная СМЦ такого масштаба, в зависимости от ниши и потребностей в части представления данных, может быть реализована командой из 5-7 человек (можно обойтись, конечно, и одним-двумя разработчиками, но тогда для реализации понадобится гораздо больше времени). Также иногда придется привлекать других сотрудников магазина или подрядчиков для сопоставления товаров.
Плюсы и минусы
- отсутствие зависимости от политики прайс-агрегаторов и их API;
- высокое качество данных и скорость мониторинга;
- возможность отслеживать ассортимент, наличие акций и другие данные, в зависимости от конфигурации системы.
- сложность реализации самого решения;
- высокая стоимость поддержки;
- сложность сопоставления товарных матриц.
- 6 стратегий ценообразования в eCommerce для отважных маркетологов
Вывод
Время и качество переоценки играют серьезную роль, особенно на высококонкурентных рынках (особенно ввиду того, что технологичность конкурентов не стоит на месте). С другой стороны, покупатели становятся все более требовательными, поэтому к двум основным целям каждого ритейлера (маржинальности и обороту) добавляется новая, но от этого не менее важная цель — восприятие (тот самый «ценовой имидж»). Совокупность этих факторов приводит к тому, что современному интернет-ритейлеру необходимы легкие и эффективные инструменты, которые обеспечивают сотрудникам возможность концентрироваться на принятии решений об изменениях цен, а не на сборе информации. Именно это следует учитывать при выборе СМЦ.
Но, к сожалению, развитие интернет-магазинов у нас происходит, чаще всего, по одному из описанных выше сценариев: вместо того, чтобы брать на вооружение лучшие мировые практики онлайн-ритейла, наши интернет-магазины выбирают вариант «бизнес на коленке». И, как следствие, большинство из них получают медленный рост, залежи товаров на складах и прочие проблемы, вызванные отсутствием системного подхода к бизнесу.
Высоких вам конверсий!
Автор этого поста:
Александр Галкин, Co-founder, VP of Bussines Development в Competera
Источник: lpgenerator.ru
Ни единого разрыва. Пишем на C# утилиту для мониторинга сети
Если тебе надоели постоянные обрывы связи и косяки провайдера, но субъективные оценки типа «подвисает» не внушают доверия, лучший выбор — записать состояние сети в автоматическом режиме. Причем для этого необязательно гонять Nagios, который к тому же не так прост в настройке. Сегодня мы напишем утилиту для мониторинга сети, которая легко настраивается и сохраняет в журнал RTT до заданных хостов, packet loss и скорость соединения (опционально), а логи летят прямо в Telegram.
Виновником появления этой статьи стал уже несколько месяцев сбоящий интернет, который мне предоставляет единственный в округе провайдер. Увы, в мою деревню ничего, кроме ADSL, не завезли, и, судя по качеству связи, и тот не дошел без многочисленных скруток. Packet loss порой доходит до 60–70%, что уже ни в какие ворота не лезет. Поэтому я решил сам измерить качество связи, дабы ткнуть провайдеру под нос логи вместе с заявлением о расторжении договора.
Задачи
Наша цель — написать простой сетевой монитор, чтобы в фоновом режиме отслеживать главные показатели в сети и сохранять их для анализа. Думаю, сбора следующих параметров хватит с головой, а если тебе понадобится что-то еще, всегда можно добавить (не забудь рассказать об этом мне).
- Пинг для заданных хостов. Просто маст-хэв для любой диагностической утилиты. Измеряя пинг, можно узнать также и процент потерь пакетов (packet loss), и коды ошибок, позволяющие выяснить, что именно не так с сетью. Например, Destination Prohibited означает, что сеть вроде и есть, но администратор какого-то из промежуточных устройств не пропускает пакет. В общем, анализировать статус-коды ответов обязательно.
- Реальная возможность подключений по TCP. Возможна ситуация, когда хосты вроде живы и откликаются на пинг, DNS работает, а доступ в интернет закрыт за неоплату. Этот тест потенциально позволит нам выявить недобросовестного провайдера, который подделывает ответы на пинги, но не обеспечивает реальный коннект.
- Уведомления о времени даунтайма в Telegram. Они должны отправляться, как только соединение восстановится. Сообщение по-хорошему должно включать расширенную инфу о пинге и потерях пакетов после сбоя, а также состояние HTTP-клиента.
- Доступ к роутеру. Для домашней сети с нестабильным Wi-Fi это особенно актуально. Роутер может просто упасть от перегрузки (например, очередной школохакер ломится на дырявый WPS, но вместо взлома получается DoS) или попросту не выдержать всех клиентов, которых в ином «умном доме» может быть и 15, и 20. Короче, роутер в любой момент может уйти в перезагрузку, а мы будем грешить на провайдера. Это нехорошо, поэтому при потере связи с роутером мы не будем тестировать дальше, а просто подождем, пока починят.
Цели обрисованы. Теперь детали реализации.
- Программа предназначена для длительной работы в фоновом режиме. Оформим программу как системный сервис Windows.
- Если мы работаем в фоновом режиме, ни консольный интерфейс, ни тем более GUI нам не нужен. Тем лучше — меньше кода.
- Проверки не должны сильно нагружать канал, ведь будет некомфортно работать. Так что постоянно флудить пингами мы не станем. Отправим очередь из десятка пакетов раз в минуту-две, и хватит. Реже отправлять не имеет смысла — большинство неполадок устраняются в течение нескольких минут, а мы хотим знать о каждом сбое.
- Возможность хранить отчет в JSON и выгружать CSV для изучения в Excel — с фильтрацией по дате создания.
- Неплохо бы прикрутить возможность забирать логи по сети и скидывать статистику на центральный сервер, но в рамках демо я этого делать не буду.
Из этого следует, что нам понадобится работа с JSON. Писать я буду на C# и воспользуюсь модулем Json.NET.
WWW
Json.NET — популярная и простая библиотека для работы с JSON. Скачать ее можно с NuGet, а примеры использования лежат на сайте проекта.
Кодим
Для начала скачай Visual Studio с сайта Microsoft, если у тебя ее еще нет. Нужна поддержка языка C# и NuGet (с вкладки «Дополнительные компоненты»).
Первым делом создаем новый проект типа «Консольное приложение». Можно было, конечно, реализовать его в качестве «Службы Windows», тогда не нужно было бы городить костыли для регистрации нашего монитора как системной службы. Бонусом получили бы автозапуск. Жаль, что в случае «шаблонного» сервиса мы теряем ту гибкость и управляемость, что имеем при ручном управлении.
Готово. Теперь — алгоритм. Алгоритм работы программы будет прост. Во-первых, нужно прочитать настройки. Они у нас будут в файле JSON рядом с исполняемым файлом.
Во-вторых, надо создать и запустить таймер, чтобы неожиданные задержки канала не мешали нам производить замеры через равные промежутки времени. И в-третьих, надо написать код сохранения результатов замеров. Поехали!
Сперва определим, что именно мы сможем настраивать. Я выбрал следующие параметры:
- хост и порт, до которых будет проходить проверка работоспособности HTTP;
- количество пакетов пинга и их тайм-аут;
- задержка перед отправлением следующего пакета пинга;
- задержка между соседними измерениями (та, которая определяет, раз в сколько минут проверка);
- включить или выключить вывод сообщений в консоль (для отладки);
- хосты, которые будем пинговать;
- IP роутера (чтобы узнавать, не завис ли он). Ты спросишь, зачем отдельно IP роутера, если его можно указать в общем списке адресов для проверки, и будешь прав. Разница в том, что, если программа не обнаружит связи с роутером, остальные хосты проверяться не будут, чтобы не тратить ресурсы;
- тайм-аут для подключения по HTTP;
- максимальный уровень packet loss, при котором подключение считается нормальным. Мне пришлось поставить себе 10%, так как 5–7% совсем не редкость для моей деревни;
- выходной формат строки для CSV, если ты вдруг решишь отключить вывод ненужных столбцов. Признаюсь, я уже забыл, зачем мне это понадобилось;
- выходной файл CSV, в который будут дописываться результаты;
- возможность отключить запись.
static String HTTP_TEST_HOST; static int HTTP_TEST_PORT; static int HTTP_TIMEOUT; static int PING_COUNT; static int PING_DELAY; static int PING_TIMEOUT; static List PING_HOSTS; static int MEASURE_DELAY; static String ROUTER_IP; static bool CUI_ENABLED; static double MAX_PKT_LOSS; static String OUT_FILE; static bool WRITE_CSV; static String CSV_PATTERN; static String TG_TOKEN; static String TG_CHAT_ID; static bool TG_NOTIFY;
Думаю, нет смысла расписывать, какая переменная за что отвечает, я постарался дать им понятные названия. Если что, можешь прочитать комментарии к коду (ссылка на GitHub — в конце статьи).
С настройками разобрались, теперь добавим их загрузку. Тут все просто: читаем файл, скармливаем его Json.NET, раскладываем настройки по переменным.
Теперь позаботимся о выводе CSV. Поскольку строка в конфиге задает только шаблон вывода, заголовки столбцов нам придется назначить самостоятельно. А так как мы хотим знать и результаты измерений по каждому хосту из списка, нужен цикл. Ниже — часть кода, которая отвечает за формирование заголовка таблицы.
String CSV_HEADER = CSV_PATTERN .Replace(«FTIME», «Snapshot time») .Replace(«IUP», «Internet up») .Replace(«AVGRTT», «Average ping (ms)») .Replace(«ROUTERRTT», «Ping to router (ms)») .Replace(«LOSS», «Packet loss, %») .Replace(«MID», «Measure ID») .Replace(«SEQ», «SeqID») .Replace(«HTTP», «HTTP OK») .Replace(«STIME», «STime»); foreach (var host in PING_HOSTS) < CSV_HEADER = CSV_HEADER.Replace(«RN», $»RTT to ;RN»); > CSV_HEADER = CSV_HEADER.Replace(«RN», «;;rn»);
Теперь небольшое пояснение, что тут происходит. Сначала мы заменяем почти все идентификаторы в строке формата на их человекочитаемые значения. Почти — потому что RN , обозначающий конец строки, остается. Далее в цикле мы вот таким нехитрым образом дописываем новые столбцы, а под конец закрываем строку с помощью ;;rn и убираем RN .
С этим кодом и так все понятно: парсим аргументы, если их нет — выводим справку. Программа знает четыре режима работы.
- При запуске без аргументов. Просто выводит справку и ждет, когда пользователь ее прочитает.
- Запуск с -d или —daemon . Программа запускается и работает в фоновом режиме, никуда не устанавливаясь.
- Запуск с -m или —measure-once . Программа также не будет регистрировать сервис, но и прятать окно не будет, в отличие от второго режима. Просто для запуска портативной измерялки с флешки.
- Режим установки. Войти в него можно с помощью параметров -i или —install . В этом случае будет зарегистрирован сервис, а программа перезапустится как сервис в режиме 2.
Обработка этой несложной логики представлена на скриншоте выше. На этом подготовительная часть завершена, делаем логику измерений.
Присоединяйся к сообществу «Xakep.ru»!
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее
Источник: xakep.ru