如何通过Powershell更新AppDynamics .net代理?

问题描述 投票:0回答:2

不是新编码,但我之前一直在使用python工作,并在我的Powershell中使用xml进行抖动。我们正在尝试自动部署AppDynamics的.net代理,我们还有部署和升级。现在我尝试包含在IIS上运行的特定应用程序和层。所以再次摆脱生锈但我正在尝试查找一个简单的脚本来更新config.xml以添加应用程序并从IIS更新层。它不是一个复杂的xml文件,但任何帮助或方向都会有所帮助

只是试图找到正确的语法来正确更新节点和参数

#Current work
$config = "mylocation\config.xml"
$configuration = $config
[xml]$xml = New-Object XML
$xml.load($configuration)
#what will make this work !!! I have tried a few things but it's been a 
while and I am having to read up on xml again :|
$xml.Save($configuration)

#what I need updated
<?xml version="1.0" encoding="utf-8"?>
<appdynamics-agent xmlns:xsd="http://stuff.com" xmlns:xsi="http://stuff.com">
  <controller host="test.saas.appdynamics.com" port="123" ssl="true" enable_tls12="true">
  <applications> #need to create this
    <application default="true" name="app1" /> #need to add the default='true' if there is more than one app
    <application name="App2"/> #this 
  </applications> #this
    <account name="testacct" password="123456" />
  </controller>
  <machine-agent />
  <app-agents>
    <IIS>
      <applications> #there by default with the default settings 
        <application controller-application="app1" path="/app1path" site="WebSite1"> # need to add this
          <tier name="app1-1" /> #and this
        </application> #this too
        <application controller-application="app2" path="/app2path" site="WebSite2"> #some more
          <tier name="app2-2" /> #you guessed it
        </application> #this as well
      </applications> #ends with this
    </IIS>
  </app-agents>
</appdynamics-agent>
.net xml powershell appdynamics
2个回答
0
投票

你走在正确的轨道上,但你并不是说你有错误或表现出来。然而,根据您迄今为止的经验,我确信您已经知道PowerShell提供了用于处理XML的cmdlet。

用---看他们

Get-Command -Name '*xml*' | ft -a  

或使用---从MS PowerShellGallery.com获取其他XML模块

Find-Module -Name '*xml*' | ft -a 

---并安装符合您所需目标的那个。

当然,有很多关于这个主题的例子和视频。搜索“PowerShell使用XML”,为您提供了大量的点击量。

PowerShell Data Basics: XML

在大多数情况下,您将找到的内容与您已发布的内容非常相似。然而,你说你想要添加节点/元素,但这不在你的帖子中,所以,类似下面的内容应该有所帮助。

$xml = [xml](Get-Content C:\file.xml)
$elem = $xml.Configuration.ConfigSections.AppendChild($xml.CreateNode([System.Xml.XmlNodeType]::Element,'section',$null))
$elem.SetAttribute('name','something')
$xml.Save('C:\file.xml')

甚至只是直接在IIS服务器上使用WebAdministration module


0
投票

您应该查看AppDynamics代理安装PowerShell扩展:https://www.appdynamics.com/community/exchange/extension/dotnet-agent-installation-with-remote-management-powershell-extension/

它应该能够处理您尝试执行的操作而无需手动生成xml,请检查pdf以获取高级选项并阅读有关Add-IIS Application Monitoring cmdlet的信息

它不能做的是更新的东西,如“多业务应用程序”和“自定义节点名称”配置。 (你也无法在安装向导中执行此操作)

© www.soinside.com 2019 - 2024. All rights reserved.