Monday 22 May 2017

Как создать дополнительное поле в выводе Powershell?

Всем привет.

Я рассказывал что форматирование результатов в Out-GridView весьма полезная штука. Но иногда для отчета надо создать дополнительное поле по свойству объекта которого не существует.

Как создать такое дополнительное поле в выводе Powershell?

Для того чтобы добавить пользовательские (custom) свойства к объекту, используется команда Select-Object. Например, чтобы добавить атрибут ComputerName к элементу Computer, у которого уже есть атрибут Name, можно запустить команду:

Get-ADComputer –filter * |
Select *,@{Label='ComputerName';Expression={$_.Name}

Команда Select-Object обеспечивает доступ ко всем свойствам компьютеров, которые были определены с помощью Get-ADComputer и группового символа *. Помимо этого, Select-Object добавляет новые свойства этим компьютерам. В данном случае новое свойство имеет ярлык ComputerName, что в командной конструкции обозначено с помощью команды Label. Такая часть конструкции как Expression показывает значение, которое содержит данное свойство. Expression сопровождается скриптовым блоком, заключенным в фигурные скобки. Внутри этого скриптового блока структурный нуль $_ указывает, на что направлена команда Select-Object – в данном случае, это компьютеры. Точка после $_ указывает на то, что вы хотите обратиться к существующему свойству, в данном случае, Name.

Командлет Format-Table принимает тот же самый синтаксис для создания новых колонок в таблице. Это означает, что если вы хотите просто добавить свои собственные колонки в таблицу, вместо того, чтобы придавать новые свойства объекту, вы можете запустить команду:

Get-ADComputer –filter * |
Ft DnsHostName,Enabled,@{Label='ComputerName';Expression={$_.Name}}

Обратите внимание, что для создания новых колонок в таблице используется та же самая конструкция, а такие свойства компьютеров как DnsHostName и Enabled помещаются в собственные новые колонки.

В чем же разница?

Правило следующее - если вам необходимо изменить элемент в конвейере, а затем передать его в другой командлет, вы можете использовать опцию Select-Object для добавления новых свойств элементу. Если же вы просто хотите создать новую колонку в таблице, используйте опцию Format- Table.

Tuesday 16 May 2017

Sublime Text и proxy.

Всем привет.

Есть такой полезный инструмент как Sublime Text для web-разработчика. Редактор который имеет много полезных фишек, особенно он полезен плагинами которые под него созданы.

Но на рабочем месте где используется доступ в сеть через прокси-сервер ему надо помочь решить эту проблему. Иначе pop-up сообщения о невозможности обновить конкретный плагин вас просто достанут. Да и сама установка новых плагинов тоже должна проходить ведь без вопросов.

Что для этого надо?

Сущий пустяк. Идем по меню Preferences-Package Settings-Package Control-Settings-User



и добавляем в конец открывшегося файла четыре строчки:
 "http_proxy": "myproxy.viper.com.ua:3128",
 "https_proxy": "myproxy.viper.com.ua:3128",
 "proxy_password": "paSsW0rd",
 "proxy_username": "MyNickname".

Не волнуйтесь, Sublime Text после перезагрузки сам расставит их так как ему надо. У меня получилось так.

{
 "bootstrapped": true,
 "http_proxy": "myproxy.viper.com.ua:3128",
 "https_proxy": "myproxy.viper.com.ua:3128",
 "in_process_packages":
 [
 ],
 "installed_packages":
 [
  "Git",
  "Package Control"
 ],
 "proxy_password": "paSsW0rd",
 "proxy_username": "MyNickname"
}

Успехов.

Sunday 14 May 2017

Бесплатный Debug Diagnostic Tool.

Всем привет.

Случается так что у вас на сервере накапливается некоторая семья приложений, которые сами еще работают. Но других в свою семью уже не пускают. Так случилось и у меня. Попытался я переустановить новую версию антивируса и что-то ему не подошло. В конце процеса инсталятор выкинул исключение и откатился. Разработчик предложил ряд инструментов для изучения ситуации. Но я вспомнил что и сам Microsoft имеет нечто в своем арсенале.

При отладке или инсталяции приложений когда возникают сбои и снижается скорость выполнения, происходят отказы, зависание и утечка памяти - обычно требуется исследовать процессы, выполнявшиеся в момент возникновения сбоя. Задача осложняется тем, что многие серверные приложения, такие как Microsoft IIS, Exchange Server, SQL Server,  часто не имеют пользовательского интерфейса и автоматически перезагружаются без указания причин сбоя. Наличие под рукой удобного инструмента для отладки, который бы находил причину сбоя, при этом очень желательно.

Для таких целей Debug Diagnostic Tool (DebugDiag) в большинстве случаев подходит идеально. Почему же DebugDiag?

Чтобы ответить на этот вопрос, давайте сначала спросим себя, почему процесс может дать сбой. Сбой - это неожиданное прекращение работы программы в случае, когда процесс завершается аномально. Обычно сбой бывает вызван необрабатываемым исключением; но происходит это и в том случае, когда процесс обнаруживает проблемную ситуацию и завершается без обработки исключения (например, процесс зацикливается, вызывая чрезмерное использование памяти).

Часто в такой ситуации процесс или служба запускаются повторно (это можно настроить) в надежде, что сбой больше не повторится. Однако, чтобы действительно понять причину, которая вызвала сбой, и устранить ее, необходимо выполнить анализ состояния процессов в момент сбоя. Локализовать это состояние можно, создавая пользовательский файл дампа. Эти файлы генерируются любыми отладчиками Windows, они имеют расширения .dmp, .hdmp или .mdmp. Основные отладчики Windows для процессов — это WinDbg, Cdb и ntsd, их пользовательские дампы для анализа могут содержать ключи к разгадке причин сбоя. Точный анализ файла дампа для процесса может потребовать просмотра экспертом. И вот тут понадобится DebugDiag, который заметно упрощает анализ процесса поиска ошибок.

Инструмент DebugDiag комбинирует многие основные функции каждого отладчика из набора Windows Debugging Tools (ADPlus, Userdump и WinDbg), кроме того, он снабжен прекрасным пользовательским интерфейсом, что облегчает его применение. Самую последнюю версию DebugDiag (на сегодня v2 Update2) можно загрузить по этому адресу. DebugDiag устанавливается как служба, поэтому установленные в нем настройки будут сохраняться после перезагрузки системы. Инструмент выполняет свою работу быстро, его легко применять, он доступен бесплатно. Он позволяет быстро отправить информацию производителям для доработки и выявления ошибок. DebugDiag требует менее 19 Mбайт памяти на диске и работает на Windows XP, Windows Server 2003 и выше.

DebugDiag в действии.

После установки и запуска DebugDiag сразу возникает диалоговое окно мастера Select Rule Type, в котором можно выбрать нужное правило. Это правило зависит от того, что надо проверить. В моем случае целью были сбои в процессе инсталяции антивирусного пакета, поэтому следовало выбрать тип правила Crash (сбой) в диалоговом окне Select Rule Type, потом нажать кнопку Next. Далее выбираем тип процесса для отслеживания в диалоговом окне Select Target Type, например отдельная служба NT, какой-то конкретный процесс (прикладной процесс или все процессы IIS/COM+). Для данного случая я выбрал мониторинг процесса EFAInst так как именно в нем возникала exception.

Tuesday 9 May 2017

USB эндоскоп.

Всем привет.

Голь на выдумки хитра. Китайцы штампуют большое количество всевозможных гаджетов, на все случаи жизни. Мне недавно попал в руки технический USB-эндоскоп.

Такой эндоскоп используется для осмотра труднодоступных полостей машин и оборудования при техническом обслуживании и оценке работоспособности: лопатки турбин, цилиндры двигателей внутреннего сгорания, оценка состояния трубопроводов и т.д.

Где-то так для выявления одной проблемы в автомобиле он мне и понадобился. К тому же я посчитал что вещица будет полезна и в будущем.

Что обещает производитель:
  • количество пикселей: 0,3 Мрх;
  • максимальное разрешение: 640x480 рх;
  • автоматический баланс белого;
  • автоматическая фокусировка;
  • угол обзора: 69 градуса;
  • фокусное расстояние: 3 - 8 см;
  • формат: RGB 24;
  • контроль насыщенности, контрастности и яркости;
  • 6 светодиода для подсветки;
  • класс защиты: IP67;
  • максимальная температура работы: 60°C;
  • совместимость с Windows и Android.
Присутствует ручная возможность регулировки яркости светодиодов. Технически получилась удаленная на гибком шнуре usb web-камера с подсветкой.


Эндоскоп мне попался в минимальной комплектации (только зеркало), скорее  всего по мелочи сэкономил уже наш продавец. Не столь суть важно. Важно другое - эндоскоп заработал без вопросов со старушкой Windows XP. И... все! Android его ни в какую видел не захотел. Для поиска решения были использованы два планшета и два смартфона. Ничего! С десяток приложений с GooglePlay не заметили мою usb web-камеру. Также не подошло ни одно из трех приложений с компакт-диска который шел вместе с эндоскопом. 

Хотя продавец заверил что приложения Scopecam вполне достаточно. Оказалось не так все просто. Во первых, Scopecam требует версию Android не ниже 4.4, во вторых даже когда я нашел смартфон с версией 5.0, то Scopecam увидел мой эндоскоп, но картинку с него так и не показал.

Оказалось хоть в сети и пишут что поддержки OTG на порту usb в планшете достаточно, сам эндоскоп требователен еще и к версии Android, и к модели процессора, и еще к чему-то еще... Лотерея еще та. Удивляюсь зачем было делать такую простую вещь такой ограниченной? Тем же кто хочет ее купить настоятельно советую брать свой планшет с собой и проверять работу при покупке. Если конечно ваш заказ не с AliExpress.

Еще одно - попадались мне комментарии про некоторое отношение этого эндоскопа к СПС. Ребята, не страдайте ТЗИ. В этом гаджете СПС столько же как и в обычной web-камере. Эндоскоп далее 7 сантиметров плохо видит.)

Успехов.




Wednesday 3 May 2017

Безвиз - как много в этом слове.


Всем привет.

Лето, а с ним, и долгожданный безвиз приближаются. Зима была лютой, поэтому для лета остается чуть больше трех месяцев. Очень надеюсь что наш безвиз продлится дольше).

Итак безвиз обещают по датам с 11-го июня. Вы уже готовы? От вас требуется только био-паспорт. И никаких справок, кроме медстраховки.

Все подразделения ДМС по оформлению био-паспортов работают по 8 часов, но... не спеша. Однако привычка наших людей к бумажным спискам укоренилась глубоко. Можно выбрать свое время по терминалу (получить талончик), но наши люди также поддерживают еще и живую очередь. Чем несомненно вносят разнообразие в нашу тихую жизнь в часы ожидания. Пишут что есть возможность записать себя онлайн, но к чему нам такой web-сервис если листочек с фамилиями уже лежит на столе... И разумеется в нем фамилий в разы больше чем присутствующих живых людей. Эх, совок на подкорке!

Можете заметить что если я хочу с комфортом и без ожиданий оформить такой паспорт то могу доплатить 400 гривен и обратиться в государственное предприятие "Паспортный сервис". Есть такое, но, по счастливой "случайности" ГП "Паспортный сервис" в один момент остался без связи с центральной базой данных аккурат месяц тому. Связь восстанавливают, постепенно, но факт имеет место быть. Видимо поломка не совсем техническая.)

И последнее, как я говорил два года назад, скорее всего на первый раз вам все таки придется сходить в консульство и сдать пальцы для Евросоюза. База данных отпечатков пальчиков у нас, Украины и ЕС, разные. Но могу и ошибаться.

Вероятно проверка на границе теперь будет занимать больше времени. Прежде всего это коснется нас при проезде через границу на автомобиле или автобусом. Поэтому надо всерьез обратить внимание на перелет в ЕС авиарейсами кампаний лоукостеров. Или даже поездом. Правда поездов не так много и цены в них еще те.

Удачи всем в Европе.

Версия на печать

Популярное